1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package amplify
4
5import (
6	"fmt"
7	"time"
8
9	"github.com/aws/aws-sdk-go/aws"
10	"github.com/aws/aws-sdk-go/aws/awsutil"
11	"github.com/aws/aws-sdk-go/aws/request"
12	"github.com/aws/aws-sdk-go/private/protocol"
13	"github.com/aws/aws-sdk-go/private/protocol/restjson"
14)
15
16const opCreateApp = "CreateApp"
17
18// CreateAppRequest generates a "aws/request.Request" representing the
19// client's request for the CreateApp operation. The "output" return
20// value will be populated with the request's response once the request completes
21// successfully.
22//
23// Use "Send" method on the returned Request to send the API call to the service.
24// the "output" return value is not valid until after Send returns without error.
25//
26// See CreateApp for more information on using the CreateApp
27// API call, and error handling.
28//
29// This method is useful when you want to inject custom logic or configuration
30// into the SDK's request lifecycle. Such as custom headers, or retry logic.
31//
32//
33//    // Example sending a request using the CreateAppRequest method.
34//    req, resp := client.CreateAppRequest(params)
35//
36//    err := req.Send()
37//    if err == nil { // resp is now filled
38//        fmt.Println(resp)
39//    }
40//
41// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/CreateApp
42func (c *Amplify) CreateAppRequest(input *CreateAppInput) (req *request.Request, output *CreateAppOutput) {
43	op := &request.Operation{
44		Name:       opCreateApp,
45		HTTPMethod: "POST",
46		HTTPPath:   "/apps",
47	}
48
49	if input == nil {
50		input = &CreateAppInput{}
51	}
52
53	output = &CreateAppOutput{}
54	req = c.newRequest(op, input, output)
55	return
56}
57
58// CreateApp API operation for AWS Amplify.
59//
60// Creates a new Amplify App.
61//
62// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
63// with awserr.Error's Code and Message methods to get detailed information about
64// the error.
65//
66// See the AWS API reference guide for AWS Amplify's
67// API operation CreateApp for usage and error information.
68//
69// Returned Error Codes:
70//   * ErrCodeBadRequestException "BadRequestException"
71//   Exception thrown when a request contains unexpected data.
72//
73//   * ErrCodeUnauthorizedException "UnauthorizedException"
74//   Exception thrown when an operation fails due to a lack of access.
75//
76//   * ErrCodeInternalFailureException "InternalFailureException"
77//   Exception thrown when the service fails to perform an operation due to an
78//   internal issue.
79//
80//   * ErrCodeLimitExceededException "LimitExceededException"
81//   Exception thrown when a resource could not be created because of service
82//   limits.
83//
84//   * ErrCodeDependentServiceFailureException "DependentServiceFailureException"
85//   Exception thrown when an operation fails due to a dependent service throwing
86//   an exception.
87//
88// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/CreateApp
89func (c *Amplify) CreateApp(input *CreateAppInput) (*CreateAppOutput, error) {
90	req, out := c.CreateAppRequest(input)
91	return out, req.Send()
92}
93
94// CreateAppWithContext is the same as CreateApp with the addition of
95// the ability to pass a context and additional request options.
96//
97// See CreateApp for details on how to use this API operation.
98//
99// The context must be non-nil and will be used for request cancellation. If
100// the context is nil a panic will occur. In the future the SDK may create
101// sub-contexts for http.Requests. See https://golang.org/pkg/context/
102// for more information on using Contexts.
103func (c *Amplify) CreateAppWithContext(ctx aws.Context, input *CreateAppInput, opts ...request.Option) (*CreateAppOutput, error) {
104	req, out := c.CreateAppRequest(input)
105	req.SetContext(ctx)
106	req.ApplyOptions(opts...)
107	return out, req.Send()
108}
109
110const opCreateBackendEnvironment = "CreateBackendEnvironment"
111
112// CreateBackendEnvironmentRequest generates a "aws/request.Request" representing the
113// client's request for the CreateBackendEnvironment operation. The "output" return
114// value will be populated with the request's response once the request completes
115// successfully.
116//
117// Use "Send" method on the returned Request to send the API call to the service.
118// the "output" return value is not valid until after Send returns without error.
119//
120// See CreateBackendEnvironment for more information on using the CreateBackendEnvironment
121// API call, and error handling.
122//
123// This method is useful when you want to inject custom logic or configuration
124// into the SDK's request lifecycle. Such as custom headers, or retry logic.
125//
126//
127//    // Example sending a request using the CreateBackendEnvironmentRequest method.
128//    req, resp := client.CreateBackendEnvironmentRequest(params)
129//
130//    err := req.Send()
131//    if err == nil { // resp is now filled
132//        fmt.Println(resp)
133//    }
134//
135// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/CreateBackendEnvironment
136func (c *Amplify) CreateBackendEnvironmentRequest(input *CreateBackendEnvironmentInput) (req *request.Request, output *CreateBackendEnvironmentOutput) {
137	op := &request.Operation{
138		Name:       opCreateBackendEnvironment,
139		HTTPMethod: "POST",
140		HTTPPath:   "/apps/{appId}/backendenvironments",
141	}
142
143	if input == nil {
144		input = &CreateBackendEnvironmentInput{}
145	}
146
147	output = &CreateBackendEnvironmentOutput{}
148	req = c.newRequest(op, input, output)
149	return
150}
151
152// CreateBackendEnvironment API operation for AWS Amplify.
153//
154// Creates a new backend environment for an Amplify App.
155//
156// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
157// with awserr.Error's Code and Message methods to get detailed information about
158// the error.
159//
160// See the AWS API reference guide for AWS Amplify's
161// API operation CreateBackendEnvironment for usage and error information.
162//
163// Returned Error Codes:
164//   * ErrCodeBadRequestException "BadRequestException"
165//   Exception thrown when a request contains unexpected data.
166//
167//   * ErrCodeUnauthorizedException "UnauthorizedException"
168//   Exception thrown when an operation fails due to a lack of access.
169//
170//   * ErrCodeNotFoundException "NotFoundException"
171//   Exception thrown when an entity has not been found during an operation.
172//
173//   * ErrCodeInternalFailureException "InternalFailureException"
174//   Exception thrown when the service fails to perform an operation due to an
175//   internal issue.
176//
177//   * ErrCodeLimitExceededException "LimitExceededException"
178//   Exception thrown when a resource could not be created because of service
179//   limits.
180//
181// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/CreateBackendEnvironment
182func (c *Amplify) CreateBackendEnvironment(input *CreateBackendEnvironmentInput) (*CreateBackendEnvironmentOutput, error) {
183	req, out := c.CreateBackendEnvironmentRequest(input)
184	return out, req.Send()
185}
186
187// CreateBackendEnvironmentWithContext is the same as CreateBackendEnvironment with the addition of
188// the ability to pass a context and additional request options.
189//
190// See CreateBackendEnvironment for details on how to use this API operation.
191//
192// The context must be non-nil and will be used for request cancellation. If
193// the context is nil a panic will occur. In the future the SDK may create
194// sub-contexts for http.Requests. See https://golang.org/pkg/context/
195// for more information on using Contexts.
196func (c *Amplify) CreateBackendEnvironmentWithContext(ctx aws.Context, input *CreateBackendEnvironmentInput, opts ...request.Option) (*CreateBackendEnvironmentOutput, error) {
197	req, out := c.CreateBackendEnvironmentRequest(input)
198	req.SetContext(ctx)
199	req.ApplyOptions(opts...)
200	return out, req.Send()
201}
202
203const opCreateBranch = "CreateBranch"
204
205// CreateBranchRequest generates a "aws/request.Request" representing the
206// client's request for the CreateBranch operation. The "output" return
207// value will be populated with the request's response once the request completes
208// successfully.
209//
210// Use "Send" method on the returned Request to send the API call to the service.
211// the "output" return value is not valid until after Send returns without error.
212//
213// See CreateBranch for more information on using the CreateBranch
214// API call, and error handling.
215//
216// This method is useful when you want to inject custom logic or configuration
217// into the SDK's request lifecycle. Such as custom headers, or retry logic.
218//
219//
220//    // Example sending a request using the CreateBranchRequest method.
221//    req, resp := client.CreateBranchRequest(params)
222//
223//    err := req.Send()
224//    if err == nil { // resp is now filled
225//        fmt.Println(resp)
226//    }
227//
228// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/CreateBranch
229func (c *Amplify) CreateBranchRequest(input *CreateBranchInput) (req *request.Request, output *CreateBranchOutput) {
230	op := &request.Operation{
231		Name:       opCreateBranch,
232		HTTPMethod: "POST",
233		HTTPPath:   "/apps/{appId}/branches",
234	}
235
236	if input == nil {
237		input = &CreateBranchInput{}
238	}
239
240	output = &CreateBranchOutput{}
241	req = c.newRequest(op, input, output)
242	return
243}
244
245// CreateBranch API operation for AWS Amplify.
246//
247// Creates a new Branch for an Amplify App.
248//
249// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
250// with awserr.Error's Code and Message methods to get detailed information about
251// the error.
252//
253// See the AWS API reference guide for AWS Amplify's
254// API operation CreateBranch for usage and error information.
255//
256// Returned Error Codes:
257//   * ErrCodeBadRequestException "BadRequestException"
258//   Exception thrown when a request contains unexpected data.
259//
260//   * ErrCodeUnauthorizedException "UnauthorizedException"
261//   Exception thrown when an operation fails due to a lack of access.
262//
263//   * ErrCodeNotFoundException "NotFoundException"
264//   Exception thrown when an entity has not been found during an operation.
265//
266//   * ErrCodeInternalFailureException "InternalFailureException"
267//   Exception thrown when the service fails to perform an operation due to an
268//   internal issue.
269//
270//   * ErrCodeLimitExceededException "LimitExceededException"
271//   Exception thrown when a resource could not be created because of service
272//   limits.
273//
274//   * ErrCodeDependentServiceFailureException "DependentServiceFailureException"
275//   Exception thrown when an operation fails due to a dependent service throwing
276//   an exception.
277//
278// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/CreateBranch
279func (c *Amplify) CreateBranch(input *CreateBranchInput) (*CreateBranchOutput, error) {
280	req, out := c.CreateBranchRequest(input)
281	return out, req.Send()
282}
283
284// CreateBranchWithContext is the same as CreateBranch with the addition of
285// the ability to pass a context and additional request options.
286//
287// See CreateBranch for details on how to use this API operation.
288//
289// The context must be non-nil and will be used for request cancellation. If
290// the context is nil a panic will occur. In the future the SDK may create
291// sub-contexts for http.Requests. See https://golang.org/pkg/context/
292// for more information on using Contexts.
293func (c *Amplify) CreateBranchWithContext(ctx aws.Context, input *CreateBranchInput, opts ...request.Option) (*CreateBranchOutput, error) {
294	req, out := c.CreateBranchRequest(input)
295	req.SetContext(ctx)
296	req.ApplyOptions(opts...)
297	return out, req.Send()
298}
299
300const opCreateDeployment = "CreateDeployment"
301
302// CreateDeploymentRequest generates a "aws/request.Request" representing the
303// client's request for the CreateDeployment operation. The "output" return
304// value will be populated with the request's response once the request completes
305// successfully.
306//
307// Use "Send" method on the returned Request to send the API call to the service.
308// the "output" return value is not valid until after Send returns without error.
309//
310// See CreateDeployment for more information on using the CreateDeployment
311// API call, and error handling.
312//
313// This method is useful when you want to inject custom logic or configuration
314// into the SDK's request lifecycle. Such as custom headers, or retry logic.
315//
316//
317//    // Example sending a request using the CreateDeploymentRequest method.
318//    req, resp := client.CreateDeploymentRequest(params)
319//
320//    err := req.Send()
321//    if err == nil { // resp is now filled
322//        fmt.Println(resp)
323//    }
324//
325// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/CreateDeployment
326func (c *Amplify) CreateDeploymentRequest(input *CreateDeploymentInput) (req *request.Request, output *CreateDeploymentOutput) {
327	op := &request.Operation{
328		Name:       opCreateDeployment,
329		HTTPMethod: "POST",
330		HTTPPath:   "/apps/{appId}/branches/{branchName}/deployments",
331	}
332
333	if input == nil {
334		input = &CreateDeploymentInput{}
335	}
336
337	output = &CreateDeploymentOutput{}
338	req = c.newRequest(op, input, output)
339	return
340}
341
342// CreateDeployment API operation for AWS Amplify.
343//
344// Create a deployment for manual deploy apps. (Apps are not connected to repository)
345//
346// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
347// with awserr.Error's Code and Message methods to get detailed information about
348// the error.
349//
350// See the AWS API reference guide for AWS Amplify's
351// API operation CreateDeployment for usage and error information.
352//
353// Returned Error Codes:
354//   * ErrCodeBadRequestException "BadRequestException"
355//   Exception thrown when a request contains unexpected data.
356//
357//   * ErrCodeUnauthorizedException "UnauthorizedException"
358//   Exception thrown when an operation fails due to a lack of access.
359//
360//   * ErrCodeInternalFailureException "InternalFailureException"
361//   Exception thrown when the service fails to perform an operation due to an
362//   internal issue.
363//
364//   * ErrCodeLimitExceededException "LimitExceededException"
365//   Exception thrown when a resource could not be created because of service
366//   limits.
367//
368// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/CreateDeployment
369func (c *Amplify) CreateDeployment(input *CreateDeploymentInput) (*CreateDeploymentOutput, error) {
370	req, out := c.CreateDeploymentRequest(input)
371	return out, req.Send()
372}
373
374// CreateDeploymentWithContext is the same as CreateDeployment with the addition of
375// the ability to pass a context and additional request options.
376//
377// See CreateDeployment for details on how to use this API operation.
378//
379// The context must be non-nil and will be used for request cancellation. If
380// the context is nil a panic will occur. In the future the SDK may create
381// sub-contexts for http.Requests. See https://golang.org/pkg/context/
382// for more information on using Contexts.
383func (c *Amplify) CreateDeploymentWithContext(ctx aws.Context, input *CreateDeploymentInput, opts ...request.Option) (*CreateDeploymentOutput, error) {
384	req, out := c.CreateDeploymentRequest(input)
385	req.SetContext(ctx)
386	req.ApplyOptions(opts...)
387	return out, req.Send()
388}
389
390const opCreateDomainAssociation = "CreateDomainAssociation"
391
392// CreateDomainAssociationRequest generates a "aws/request.Request" representing the
393// client's request for the CreateDomainAssociation operation. The "output" return
394// value will be populated with the request's response once the request completes
395// successfully.
396//
397// Use "Send" method on the returned Request to send the API call to the service.
398// the "output" return value is not valid until after Send returns without error.
399//
400// See CreateDomainAssociation for more information on using the CreateDomainAssociation
401// API call, and error handling.
402//
403// This method is useful when you want to inject custom logic or configuration
404// into the SDK's request lifecycle. Such as custom headers, or retry logic.
405//
406//
407//    // Example sending a request using the CreateDomainAssociationRequest method.
408//    req, resp := client.CreateDomainAssociationRequest(params)
409//
410//    err := req.Send()
411//    if err == nil { // resp is now filled
412//        fmt.Println(resp)
413//    }
414//
415// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/CreateDomainAssociation
416func (c *Amplify) CreateDomainAssociationRequest(input *CreateDomainAssociationInput) (req *request.Request, output *CreateDomainAssociationOutput) {
417	op := &request.Operation{
418		Name:       opCreateDomainAssociation,
419		HTTPMethod: "POST",
420		HTTPPath:   "/apps/{appId}/domains",
421	}
422
423	if input == nil {
424		input = &CreateDomainAssociationInput{}
425	}
426
427	output = &CreateDomainAssociationOutput{}
428	req = c.newRequest(op, input, output)
429	return
430}
431
432// CreateDomainAssociation API operation for AWS Amplify.
433//
434// Create a new DomainAssociation on an App
435//
436// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
437// with awserr.Error's Code and Message methods to get detailed information about
438// the error.
439//
440// See the AWS API reference guide for AWS Amplify's
441// API operation CreateDomainAssociation for usage and error information.
442//
443// Returned Error Codes:
444//   * ErrCodeBadRequestException "BadRequestException"
445//   Exception thrown when a request contains unexpected data.
446//
447//   * ErrCodeUnauthorizedException "UnauthorizedException"
448//   Exception thrown when an operation fails due to a lack of access.
449//
450//   * ErrCodeNotFoundException "NotFoundException"
451//   Exception thrown when an entity has not been found during an operation.
452//
453//   * ErrCodeInternalFailureException "InternalFailureException"
454//   Exception thrown when the service fails to perform an operation due to an
455//   internal issue.
456//
457//   * ErrCodeLimitExceededException "LimitExceededException"
458//   Exception thrown when a resource could not be created because of service
459//   limits.
460//
461//   * ErrCodeDependentServiceFailureException "DependentServiceFailureException"
462//   Exception thrown when an operation fails due to a dependent service throwing
463//   an exception.
464//
465// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/CreateDomainAssociation
466func (c *Amplify) CreateDomainAssociation(input *CreateDomainAssociationInput) (*CreateDomainAssociationOutput, error) {
467	req, out := c.CreateDomainAssociationRequest(input)
468	return out, req.Send()
469}
470
471// CreateDomainAssociationWithContext is the same as CreateDomainAssociation with the addition of
472// the ability to pass a context and additional request options.
473//
474// See CreateDomainAssociation for details on how to use this API operation.
475//
476// The context must be non-nil and will be used for request cancellation. If
477// the context is nil a panic will occur. In the future the SDK may create
478// sub-contexts for http.Requests. See https://golang.org/pkg/context/
479// for more information on using Contexts.
480func (c *Amplify) CreateDomainAssociationWithContext(ctx aws.Context, input *CreateDomainAssociationInput, opts ...request.Option) (*CreateDomainAssociationOutput, error) {
481	req, out := c.CreateDomainAssociationRequest(input)
482	req.SetContext(ctx)
483	req.ApplyOptions(opts...)
484	return out, req.Send()
485}
486
487const opCreateWebhook = "CreateWebhook"
488
489// CreateWebhookRequest generates a "aws/request.Request" representing the
490// client's request for the CreateWebhook operation. The "output" return
491// value will be populated with the request's response once the request completes
492// successfully.
493//
494// Use "Send" method on the returned Request to send the API call to the service.
495// the "output" return value is not valid until after Send returns without error.
496//
497// See CreateWebhook for more information on using the CreateWebhook
498// API call, and error handling.
499//
500// This method is useful when you want to inject custom logic or configuration
501// into the SDK's request lifecycle. Such as custom headers, or retry logic.
502//
503//
504//    // Example sending a request using the CreateWebhookRequest method.
505//    req, resp := client.CreateWebhookRequest(params)
506//
507//    err := req.Send()
508//    if err == nil { // resp is now filled
509//        fmt.Println(resp)
510//    }
511//
512// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/CreateWebhook
513func (c *Amplify) CreateWebhookRequest(input *CreateWebhookInput) (req *request.Request, output *CreateWebhookOutput) {
514	op := &request.Operation{
515		Name:       opCreateWebhook,
516		HTTPMethod: "POST",
517		HTTPPath:   "/apps/{appId}/webhooks",
518	}
519
520	if input == nil {
521		input = &CreateWebhookInput{}
522	}
523
524	output = &CreateWebhookOutput{}
525	req = c.newRequest(op, input, output)
526	return
527}
528
529// CreateWebhook API operation for AWS Amplify.
530//
531// Create a new webhook on an App.
532//
533// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
534// with awserr.Error's Code and Message methods to get detailed information about
535// the error.
536//
537// See the AWS API reference guide for AWS Amplify's
538// API operation CreateWebhook for usage and error information.
539//
540// Returned Error Codes:
541//   * ErrCodeBadRequestException "BadRequestException"
542//   Exception thrown when a request contains unexpected data.
543//
544//   * ErrCodeUnauthorizedException "UnauthorizedException"
545//   Exception thrown when an operation fails due to a lack of access.
546//
547//   * ErrCodeNotFoundException "NotFoundException"
548//   Exception thrown when an entity has not been found during an operation.
549//
550//   * ErrCodeInternalFailureException "InternalFailureException"
551//   Exception thrown when the service fails to perform an operation due to an
552//   internal issue.
553//
554//   * ErrCodeLimitExceededException "LimitExceededException"
555//   Exception thrown when a resource could not be created because of service
556//   limits.
557//
558//   * ErrCodeDependentServiceFailureException "DependentServiceFailureException"
559//   Exception thrown when an operation fails due to a dependent service throwing
560//   an exception.
561//
562// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/CreateWebhook
563func (c *Amplify) CreateWebhook(input *CreateWebhookInput) (*CreateWebhookOutput, error) {
564	req, out := c.CreateWebhookRequest(input)
565	return out, req.Send()
566}
567
568// CreateWebhookWithContext is the same as CreateWebhook with the addition of
569// the ability to pass a context and additional request options.
570//
571// See CreateWebhook for details on how to use this API operation.
572//
573// The context must be non-nil and will be used for request cancellation. If
574// the context is nil a panic will occur. In the future the SDK may create
575// sub-contexts for http.Requests. See https://golang.org/pkg/context/
576// for more information on using Contexts.
577func (c *Amplify) CreateWebhookWithContext(ctx aws.Context, input *CreateWebhookInput, opts ...request.Option) (*CreateWebhookOutput, error) {
578	req, out := c.CreateWebhookRequest(input)
579	req.SetContext(ctx)
580	req.ApplyOptions(opts...)
581	return out, req.Send()
582}
583
584const opDeleteApp = "DeleteApp"
585
586// DeleteAppRequest generates a "aws/request.Request" representing the
587// client's request for the DeleteApp operation. The "output" return
588// value will be populated with the request's response once the request completes
589// successfully.
590//
591// Use "Send" method on the returned Request to send the API call to the service.
592// the "output" return value is not valid until after Send returns without error.
593//
594// See DeleteApp for more information on using the DeleteApp
595// API call, and error handling.
596//
597// This method is useful when you want to inject custom logic or configuration
598// into the SDK's request lifecycle. Such as custom headers, or retry logic.
599//
600//
601//    // Example sending a request using the DeleteAppRequest method.
602//    req, resp := client.DeleteAppRequest(params)
603//
604//    err := req.Send()
605//    if err == nil { // resp is now filled
606//        fmt.Println(resp)
607//    }
608//
609// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/DeleteApp
610func (c *Amplify) DeleteAppRequest(input *DeleteAppInput) (req *request.Request, output *DeleteAppOutput) {
611	op := &request.Operation{
612		Name:       opDeleteApp,
613		HTTPMethod: "DELETE",
614		HTTPPath:   "/apps/{appId}",
615	}
616
617	if input == nil {
618		input = &DeleteAppInput{}
619	}
620
621	output = &DeleteAppOutput{}
622	req = c.newRequest(op, input, output)
623	return
624}
625
626// DeleteApp API operation for AWS Amplify.
627//
628// Delete an existing Amplify App by appId.
629//
630// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
631// with awserr.Error's Code and Message methods to get detailed information about
632// the error.
633//
634// See the AWS API reference guide for AWS Amplify's
635// API operation DeleteApp for usage and error information.
636//
637// Returned Error Codes:
638//   * ErrCodeBadRequestException "BadRequestException"
639//   Exception thrown when a request contains unexpected data.
640//
641//   * ErrCodeNotFoundException "NotFoundException"
642//   Exception thrown when an entity has not been found during an operation.
643//
644//   * ErrCodeUnauthorizedException "UnauthorizedException"
645//   Exception thrown when an operation fails due to a lack of access.
646//
647//   * ErrCodeInternalFailureException "InternalFailureException"
648//   Exception thrown when the service fails to perform an operation due to an
649//   internal issue.
650//
651//   * ErrCodeDependentServiceFailureException "DependentServiceFailureException"
652//   Exception thrown when an operation fails due to a dependent service throwing
653//   an exception.
654//
655// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/DeleteApp
656func (c *Amplify) DeleteApp(input *DeleteAppInput) (*DeleteAppOutput, error) {
657	req, out := c.DeleteAppRequest(input)
658	return out, req.Send()
659}
660
661// DeleteAppWithContext is the same as DeleteApp with the addition of
662// the ability to pass a context and additional request options.
663//
664// See DeleteApp for details on how to use this API operation.
665//
666// The context must be non-nil and will be used for request cancellation. If
667// the context is nil a panic will occur. In the future the SDK may create
668// sub-contexts for http.Requests. See https://golang.org/pkg/context/
669// for more information on using Contexts.
670func (c *Amplify) DeleteAppWithContext(ctx aws.Context, input *DeleteAppInput, opts ...request.Option) (*DeleteAppOutput, error) {
671	req, out := c.DeleteAppRequest(input)
672	req.SetContext(ctx)
673	req.ApplyOptions(opts...)
674	return out, req.Send()
675}
676
677const opDeleteBackendEnvironment = "DeleteBackendEnvironment"
678
679// DeleteBackendEnvironmentRequest generates a "aws/request.Request" representing the
680// client's request for the DeleteBackendEnvironment operation. The "output" return
681// value will be populated with the request's response once the request completes
682// successfully.
683//
684// Use "Send" method on the returned Request to send the API call to the service.
685// the "output" return value is not valid until after Send returns without error.
686//
687// See DeleteBackendEnvironment for more information on using the DeleteBackendEnvironment
688// API call, and error handling.
689//
690// This method is useful when you want to inject custom logic or configuration
691// into the SDK's request lifecycle. Such as custom headers, or retry logic.
692//
693//
694//    // Example sending a request using the DeleteBackendEnvironmentRequest method.
695//    req, resp := client.DeleteBackendEnvironmentRequest(params)
696//
697//    err := req.Send()
698//    if err == nil { // resp is now filled
699//        fmt.Println(resp)
700//    }
701//
702// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/DeleteBackendEnvironment
703func (c *Amplify) DeleteBackendEnvironmentRequest(input *DeleteBackendEnvironmentInput) (req *request.Request, output *DeleteBackendEnvironmentOutput) {
704	op := &request.Operation{
705		Name:       opDeleteBackendEnvironment,
706		HTTPMethod: "DELETE",
707		HTTPPath:   "/apps/{appId}/backendenvironments/{environmentName}",
708	}
709
710	if input == nil {
711		input = &DeleteBackendEnvironmentInput{}
712	}
713
714	output = &DeleteBackendEnvironmentOutput{}
715	req = c.newRequest(op, input, output)
716	return
717}
718
719// DeleteBackendEnvironment API operation for AWS Amplify.
720//
721// Delete backend environment for an Amplify App.
722//
723// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
724// with awserr.Error's Code and Message methods to get detailed information about
725// the error.
726//
727// See the AWS API reference guide for AWS Amplify's
728// API operation DeleteBackendEnvironment for usage and error information.
729//
730// Returned Error Codes:
731//   * ErrCodeBadRequestException "BadRequestException"
732//   Exception thrown when a request contains unexpected data.
733//
734//   * ErrCodeUnauthorizedException "UnauthorizedException"
735//   Exception thrown when an operation fails due to a lack of access.
736//
737//   * ErrCodeNotFoundException "NotFoundException"
738//   Exception thrown when an entity has not been found during an operation.
739//
740//   * ErrCodeInternalFailureException "InternalFailureException"
741//   Exception thrown when the service fails to perform an operation due to an
742//   internal issue.
743//
744//   * ErrCodeDependentServiceFailureException "DependentServiceFailureException"
745//   Exception thrown when an operation fails due to a dependent service throwing
746//   an exception.
747//
748// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/DeleteBackendEnvironment
749func (c *Amplify) DeleteBackendEnvironment(input *DeleteBackendEnvironmentInput) (*DeleteBackendEnvironmentOutput, error) {
750	req, out := c.DeleteBackendEnvironmentRequest(input)
751	return out, req.Send()
752}
753
754// DeleteBackendEnvironmentWithContext is the same as DeleteBackendEnvironment with the addition of
755// the ability to pass a context and additional request options.
756//
757// See DeleteBackendEnvironment for details on how to use this API operation.
758//
759// The context must be non-nil and will be used for request cancellation. If
760// the context is nil a panic will occur. In the future the SDK may create
761// sub-contexts for http.Requests. See https://golang.org/pkg/context/
762// for more information on using Contexts.
763func (c *Amplify) DeleteBackendEnvironmentWithContext(ctx aws.Context, input *DeleteBackendEnvironmentInput, opts ...request.Option) (*DeleteBackendEnvironmentOutput, error) {
764	req, out := c.DeleteBackendEnvironmentRequest(input)
765	req.SetContext(ctx)
766	req.ApplyOptions(opts...)
767	return out, req.Send()
768}
769
770const opDeleteBranch = "DeleteBranch"
771
772// DeleteBranchRequest generates a "aws/request.Request" representing the
773// client's request for the DeleteBranch operation. The "output" return
774// value will be populated with the request's response once the request completes
775// successfully.
776//
777// Use "Send" method on the returned Request to send the API call to the service.
778// the "output" return value is not valid until after Send returns without error.
779//
780// See DeleteBranch for more information on using the DeleteBranch
781// API call, and error handling.
782//
783// This method is useful when you want to inject custom logic or configuration
784// into the SDK's request lifecycle. Such as custom headers, or retry logic.
785//
786//
787//    // Example sending a request using the DeleteBranchRequest method.
788//    req, resp := client.DeleteBranchRequest(params)
789//
790//    err := req.Send()
791//    if err == nil { // resp is now filled
792//        fmt.Println(resp)
793//    }
794//
795// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/DeleteBranch
796func (c *Amplify) DeleteBranchRequest(input *DeleteBranchInput) (req *request.Request, output *DeleteBranchOutput) {
797	op := &request.Operation{
798		Name:       opDeleteBranch,
799		HTTPMethod: "DELETE",
800		HTTPPath:   "/apps/{appId}/branches/{branchName}",
801	}
802
803	if input == nil {
804		input = &DeleteBranchInput{}
805	}
806
807	output = &DeleteBranchOutput{}
808	req = c.newRequest(op, input, output)
809	return
810}
811
812// DeleteBranch API operation for AWS Amplify.
813//
814// Deletes a branch for an Amplify App.
815//
816// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
817// with awserr.Error's Code and Message methods to get detailed information about
818// the error.
819//
820// See the AWS API reference guide for AWS Amplify's
821// API operation DeleteBranch for usage and error information.
822//
823// Returned Error Codes:
824//   * ErrCodeBadRequestException "BadRequestException"
825//   Exception thrown when a request contains unexpected data.
826//
827//   * ErrCodeUnauthorizedException "UnauthorizedException"
828//   Exception thrown when an operation fails due to a lack of access.
829//
830//   * ErrCodeNotFoundException "NotFoundException"
831//   Exception thrown when an entity has not been found during an operation.
832//
833//   * ErrCodeInternalFailureException "InternalFailureException"
834//   Exception thrown when the service fails to perform an operation due to an
835//   internal issue.
836//
837//   * ErrCodeDependentServiceFailureException "DependentServiceFailureException"
838//   Exception thrown when an operation fails due to a dependent service throwing
839//   an exception.
840//
841// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/DeleteBranch
842func (c *Amplify) DeleteBranch(input *DeleteBranchInput) (*DeleteBranchOutput, error) {
843	req, out := c.DeleteBranchRequest(input)
844	return out, req.Send()
845}
846
847// DeleteBranchWithContext is the same as DeleteBranch with the addition of
848// the ability to pass a context and additional request options.
849//
850// See DeleteBranch for details on how to use this API operation.
851//
852// The context must be non-nil and will be used for request cancellation. If
853// the context is nil a panic will occur. In the future the SDK may create
854// sub-contexts for http.Requests. See https://golang.org/pkg/context/
855// for more information on using Contexts.
856func (c *Amplify) DeleteBranchWithContext(ctx aws.Context, input *DeleteBranchInput, opts ...request.Option) (*DeleteBranchOutput, error) {
857	req, out := c.DeleteBranchRequest(input)
858	req.SetContext(ctx)
859	req.ApplyOptions(opts...)
860	return out, req.Send()
861}
862
863const opDeleteDomainAssociation = "DeleteDomainAssociation"
864
865// DeleteDomainAssociationRequest generates a "aws/request.Request" representing the
866// client's request for the DeleteDomainAssociation operation. The "output" return
867// value will be populated with the request's response once the request completes
868// successfully.
869//
870// Use "Send" method on the returned Request to send the API call to the service.
871// the "output" return value is not valid until after Send returns without error.
872//
873// See DeleteDomainAssociation for more information on using the DeleteDomainAssociation
874// API call, and error handling.
875//
876// This method is useful when you want to inject custom logic or configuration
877// into the SDK's request lifecycle. Such as custom headers, or retry logic.
878//
879//
880//    // Example sending a request using the DeleteDomainAssociationRequest method.
881//    req, resp := client.DeleteDomainAssociationRequest(params)
882//
883//    err := req.Send()
884//    if err == nil { // resp is now filled
885//        fmt.Println(resp)
886//    }
887//
888// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/DeleteDomainAssociation
889func (c *Amplify) DeleteDomainAssociationRequest(input *DeleteDomainAssociationInput) (req *request.Request, output *DeleteDomainAssociationOutput) {
890	op := &request.Operation{
891		Name:       opDeleteDomainAssociation,
892		HTTPMethod: "DELETE",
893		HTTPPath:   "/apps/{appId}/domains/{domainName}",
894	}
895
896	if input == nil {
897		input = &DeleteDomainAssociationInput{}
898	}
899
900	output = &DeleteDomainAssociationOutput{}
901	req = c.newRequest(op, input, output)
902	return
903}
904
905// DeleteDomainAssociation API operation for AWS Amplify.
906//
907// Deletes a DomainAssociation.
908//
909// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
910// with awserr.Error's Code and Message methods to get detailed information about
911// the error.
912//
913// See the AWS API reference guide for AWS Amplify's
914// API operation DeleteDomainAssociation for usage and error information.
915//
916// Returned Error Codes:
917//   * ErrCodeBadRequestException "BadRequestException"
918//   Exception thrown when a request contains unexpected data.
919//
920//   * ErrCodeUnauthorizedException "UnauthorizedException"
921//   Exception thrown when an operation fails due to a lack of access.
922//
923//   * ErrCodeNotFoundException "NotFoundException"
924//   Exception thrown when an entity has not been found during an operation.
925//
926//   * ErrCodeInternalFailureException "InternalFailureException"
927//   Exception thrown when the service fails to perform an operation due to an
928//   internal issue.
929//
930//   * ErrCodeDependentServiceFailureException "DependentServiceFailureException"
931//   Exception thrown when an operation fails due to a dependent service throwing
932//   an exception.
933//
934// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/DeleteDomainAssociation
935func (c *Amplify) DeleteDomainAssociation(input *DeleteDomainAssociationInput) (*DeleteDomainAssociationOutput, error) {
936	req, out := c.DeleteDomainAssociationRequest(input)
937	return out, req.Send()
938}
939
940// DeleteDomainAssociationWithContext is the same as DeleteDomainAssociation with the addition of
941// the ability to pass a context and additional request options.
942//
943// See DeleteDomainAssociation for details on how to use this API operation.
944//
945// The context must be non-nil and will be used for request cancellation. If
946// the context is nil a panic will occur. In the future the SDK may create
947// sub-contexts for http.Requests. See https://golang.org/pkg/context/
948// for more information on using Contexts.
949func (c *Amplify) DeleteDomainAssociationWithContext(ctx aws.Context, input *DeleteDomainAssociationInput, opts ...request.Option) (*DeleteDomainAssociationOutput, error) {
950	req, out := c.DeleteDomainAssociationRequest(input)
951	req.SetContext(ctx)
952	req.ApplyOptions(opts...)
953	return out, req.Send()
954}
955
956const opDeleteJob = "DeleteJob"
957
958// DeleteJobRequest generates a "aws/request.Request" representing the
959// client's request for the DeleteJob operation. The "output" return
960// value will be populated with the request's response once the request completes
961// successfully.
962//
963// Use "Send" method on the returned Request to send the API call to the service.
964// the "output" return value is not valid until after Send returns without error.
965//
966// See DeleteJob for more information on using the DeleteJob
967// API call, and error handling.
968//
969// This method is useful when you want to inject custom logic or configuration
970// into the SDK's request lifecycle. Such as custom headers, or retry logic.
971//
972//
973//    // Example sending a request using the DeleteJobRequest method.
974//    req, resp := client.DeleteJobRequest(params)
975//
976//    err := req.Send()
977//    if err == nil { // resp is now filled
978//        fmt.Println(resp)
979//    }
980//
981// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/DeleteJob
982func (c *Amplify) DeleteJobRequest(input *DeleteJobInput) (req *request.Request, output *DeleteJobOutput) {
983	op := &request.Operation{
984		Name:       opDeleteJob,
985		HTTPMethod: "DELETE",
986		HTTPPath:   "/apps/{appId}/branches/{branchName}/jobs/{jobId}",
987	}
988
989	if input == nil {
990		input = &DeleteJobInput{}
991	}
992
993	output = &DeleteJobOutput{}
994	req = c.newRequest(op, input, output)
995	return
996}
997
998// DeleteJob API operation for AWS Amplify.
999//
1000// Delete a job, for an Amplify branch, part of Amplify App.
1001//
1002// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1003// with awserr.Error's Code and Message methods to get detailed information about
1004// the error.
1005//
1006// See the AWS API reference guide for AWS Amplify's
1007// API operation DeleteJob for usage and error information.
1008//
1009// Returned Error Codes:
1010//   * ErrCodeBadRequestException "BadRequestException"
1011//   Exception thrown when a request contains unexpected data.
1012//
1013//   * ErrCodeUnauthorizedException "UnauthorizedException"
1014//   Exception thrown when an operation fails due to a lack of access.
1015//
1016//   * ErrCodeInternalFailureException "InternalFailureException"
1017//   Exception thrown when the service fails to perform an operation due to an
1018//   internal issue.
1019//
1020//   * ErrCodeNotFoundException "NotFoundException"
1021//   Exception thrown when an entity has not been found during an operation.
1022//
1023//   * ErrCodeLimitExceededException "LimitExceededException"
1024//   Exception thrown when a resource could not be created because of service
1025//   limits.
1026//
1027// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/DeleteJob
1028func (c *Amplify) DeleteJob(input *DeleteJobInput) (*DeleteJobOutput, error) {
1029	req, out := c.DeleteJobRequest(input)
1030	return out, req.Send()
1031}
1032
1033// DeleteJobWithContext is the same as DeleteJob with the addition of
1034// the ability to pass a context and additional request options.
1035//
1036// See DeleteJob for details on how to use this API operation.
1037//
1038// The context must be non-nil and will be used for request cancellation. If
1039// the context is nil a panic will occur. In the future the SDK may create
1040// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1041// for more information on using Contexts.
1042func (c *Amplify) DeleteJobWithContext(ctx aws.Context, input *DeleteJobInput, opts ...request.Option) (*DeleteJobOutput, error) {
1043	req, out := c.DeleteJobRequest(input)
1044	req.SetContext(ctx)
1045	req.ApplyOptions(opts...)
1046	return out, req.Send()
1047}
1048
1049const opDeleteWebhook = "DeleteWebhook"
1050
1051// DeleteWebhookRequest generates a "aws/request.Request" representing the
1052// client's request for the DeleteWebhook operation. The "output" return
1053// value will be populated with the request's response once the request completes
1054// successfully.
1055//
1056// Use "Send" method on the returned Request to send the API call to the service.
1057// the "output" return value is not valid until after Send returns without error.
1058//
1059// See DeleteWebhook for more information on using the DeleteWebhook
1060// API call, and error handling.
1061//
1062// This method is useful when you want to inject custom logic or configuration
1063// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1064//
1065//
1066//    // Example sending a request using the DeleteWebhookRequest method.
1067//    req, resp := client.DeleteWebhookRequest(params)
1068//
1069//    err := req.Send()
1070//    if err == nil { // resp is now filled
1071//        fmt.Println(resp)
1072//    }
1073//
1074// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/DeleteWebhook
1075func (c *Amplify) DeleteWebhookRequest(input *DeleteWebhookInput) (req *request.Request, output *DeleteWebhookOutput) {
1076	op := &request.Operation{
1077		Name:       opDeleteWebhook,
1078		HTTPMethod: "DELETE",
1079		HTTPPath:   "/webhooks/{webhookId}",
1080	}
1081
1082	if input == nil {
1083		input = &DeleteWebhookInput{}
1084	}
1085
1086	output = &DeleteWebhookOutput{}
1087	req = c.newRequest(op, input, output)
1088	return
1089}
1090
1091// DeleteWebhook API operation for AWS Amplify.
1092//
1093// Deletes a webhook.
1094//
1095// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1096// with awserr.Error's Code and Message methods to get detailed information about
1097// the error.
1098//
1099// See the AWS API reference guide for AWS Amplify's
1100// API operation DeleteWebhook for usage and error information.
1101//
1102// Returned Error Codes:
1103//   * ErrCodeBadRequestException "BadRequestException"
1104//   Exception thrown when a request contains unexpected data.
1105//
1106//   * ErrCodeUnauthorizedException "UnauthorizedException"
1107//   Exception thrown when an operation fails due to a lack of access.
1108//
1109//   * ErrCodeInternalFailureException "InternalFailureException"
1110//   Exception thrown when the service fails to perform an operation due to an
1111//   internal issue.
1112//
1113//   * ErrCodeNotFoundException "NotFoundException"
1114//   Exception thrown when an entity has not been found during an operation.
1115//
1116//   * ErrCodeLimitExceededException "LimitExceededException"
1117//   Exception thrown when a resource could not be created because of service
1118//   limits.
1119//
1120// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/DeleteWebhook
1121func (c *Amplify) DeleteWebhook(input *DeleteWebhookInput) (*DeleteWebhookOutput, error) {
1122	req, out := c.DeleteWebhookRequest(input)
1123	return out, req.Send()
1124}
1125
1126// DeleteWebhookWithContext is the same as DeleteWebhook with the addition of
1127// the ability to pass a context and additional request options.
1128//
1129// See DeleteWebhook for details on how to use this API operation.
1130//
1131// The context must be non-nil and will be used for request cancellation. If
1132// the context is nil a panic will occur. In the future the SDK may create
1133// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1134// for more information on using Contexts.
1135func (c *Amplify) DeleteWebhookWithContext(ctx aws.Context, input *DeleteWebhookInput, opts ...request.Option) (*DeleteWebhookOutput, error) {
1136	req, out := c.DeleteWebhookRequest(input)
1137	req.SetContext(ctx)
1138	req.ApplyOptions(opts...)
1139	return out, req.Send()
1140}
1141
1142const opGenerateAccessLogs = "GenerateAccessLogs"
1143
1144// GenerateAccessLogsRequest generates a "aws/request.Request" representing the
1145// client's request for the GenerateAccessLogs operation. The "output" return
1146// value will be populated with the request's response once the request completes
1147// successfully.
1148//
1149// Use "Send" method on the returned Request to send the API call to the service.
1150// the "output" return value is not valid until after Send returns without error.
1151//
1152// See GenerateAccessLogs for more information on using the GenerateAccessLogs
1153// API call, and error handling.
1154//
1155// This method is useful when you want to inject custom logic or configuration
1156// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1157//
1158//
1159//    // Example sending a request using the GenerateAccessLogsRequest method.
1160//    req, resp := client.GenerateAccessLogsRequest(params)
1161//
1162//    err := req.Send()
1163//    if err == nil { // resp is now filled
1164//        fmt.Println(resp)
1165//    }
1166//
1167// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GenerateAccessLogs
1168func (c *Amplify) GenerateAccessLogsRequest(input *GenerateAccessLogsInput) (req *request.Request, output *GenerateAccessLogsOutput) {
1169	op := &request.Operation{
1170		Name:       opGenerateAccessLogs,
1171		HTTPMethod: "POST",
1172		HTTPPath:   "/apps/{appId}/accesslogs",
1173	}
1174
1175	if input == nil {
1176		input = &GenerateAccessLogsInput{}
1177	}
1178
1179	output = &GenerateAccessLogsOutput{}
1180	req = c.newRequest(op, input, output)
1181	return
1182}
1183
1184// GenerateAccessLogs API operation for AWS Amplify.
1185//
1186// Retrieve website access logs for a specific time range via a pre-signed URL.
1187//
1188// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1189// with awserr.Error's Code and Message methods to get detailed information about
1190// the error.
1191//
1192// See the AWS API reference guide for AWS Amplify's
1193// API operation GenerateAccessLogs for usage and error information.
1194//
1195// Returned Error Codes:
1196//   * ErrCodeNotFoundException "NotFoundException"
1197//   Exception thrown when an entity has not been found during an operation.
1198//
1199//   * ErrCodeBadRequestException "BadRequestException"
1200//   Exception thrown when a request contains unexpected data.
1201//
1202//   * ErrCodeUnauthorizedException "UnauthorizedException"
1203//   Exception thrown when an operation fails due to a lack of access.
1204//
1205//   * ErrCodeInternalFailureException "InternalFailureException"
1206//   Exception thrown when the service fails to perform an operation due to an
1207//   internal issue.
1208//
1209// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GenerateAccessLogs
1210func (c *Amplify) GenerateAccessLogs(input *GenerateAccessLogsInput) (*GenerateAccessLogsOutput, error) {
1211	req, out := c.GenerateAccessLogsRequest(input)
1212	return out, req.Send()
1213}
1214
1215// GenerateAccessLogsWithContext is the same as GenerateAccessLogs with the addition of
1216// the ability to pass a context and additional request options.
1217//
1218// See GenerateAccessLogs for details on how to use this API operation.
1219//
1220// The context must be non-nil and will be used for request cancellation. If
1221// the context is nil a panic will occur. In the future the SDK may create
1222// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1223// for more information on using Contexts.
1224func (c *Amplify) GenerateAccessLogsWithContext(ctx aws.Context, input *GenerateAccessLogsInput, opts ...request.Option) (*GenerateAccessLogsOutput, error) {
1225	req, out := c.GenerateAccessLogsRequest(input)
1226	req.SetContext(ctx)
1227	req.ApplyOptions(opts...)
1228	return out, req.Send()
1229}
1230
1231const opGetApp = "GetApp"
1232
1233// GetAppRequest generates a "aws/request.Request" representing the
1234// client's request for the GetApp operation. The "output" return
1235// value will be populated with the request's response once the request completes
1236// successfully.
1237//
1238// Use "Send" method on the returned Request to send the API call to the service.
1239// the "output" return value is not valid until after Send returns without error.
1240//
1241// See GetApp for more information on using the GetApp
1242// API call, and error handling.
1243//
1244// This method is useful when you want to inject custom logic or configuration
1245// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1246//
1247//
1248//    // Example sending a request using the GetAppRequest method.
1249//    req, resp := client.GetAppRequest(params)
1250//
1251//    err := req.Send()
1252//    if err == nil { // resp is now filled
1253//        fmt.Println(resp)
1254//    }
1255//
1256// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetApp
1257func (c *Amplify) GetAppRequest(input *GetAppInput) (req *request.Request, output *GetAppOutput) {
1258	op := &request.Operation{
1259		Name:       opGetApp,
1260		HTTPMethod: "GET",
1261		HTTPPath:   "/apps/{appId}",
1262	}
1263
1264	if input == nil {
1265		input = &GetAppInput{}
1266	}
1267
1268	output = &GetAppOutput{}
1269	req = c.newRequest(op, input, output)
1270	return
1271}
1272
1273// GetApp API operation for AWS Amplify.
1274//
1275// Retrieves an existing Amplify App by appId.
1276//
1277// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1278// with awserr.Error's Code and Message methods to get detailed information about
1279// the error.
1280//
1281// See the AWS API reference guide for AWS Amplify's
1282// API operation GetApp for usage and error information.
1283//
1284// Returned Error Codes:
1285//   * ErrCodeBadRequestException "BadRequestException"
1286//   Exception thrown when a request contains unexpected data.
1287//
1288//   * ErrCodeNotFoundException "NotFoundException"
1289//   Exception thrown when an entity has not been found during an operation.
1290//
1291//   * ErrCodeUnauthorizedException "UnauthorizedException"
1292//   Exception thrown when an operation fails due to a lack of access.
1293//
1294//   * ErrCodeInternalFailureException "InternalFailureException"
1295//   Exception thrown when the service fails to perform an operation due to an
1296//   internal issue.
1297//
1298// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetApp
1299func (c *Amplify) GetApp(input *GetAppInput) (*GetAppOutput, error) {
1300	req, out := c.GetAppRequest(input)
1301	return out, req.Send()
1302}
1303
1304// GetAppWithContext is the same as GetApp with the addition of
1305// the ability to pass a context and additional request options.
1306//
1307// See GetApp for details on how to use this API operation.
1308//
1309// The context must be non-nil and will be used for request cancellation. If
1310// the context is nil a panic will occur. In the future the SDK may create
1311// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1312// for more information on using Contexts.
1313func (c *Amplify) GetAppWithContext(ctx aws.Context, input *GetAppInput, opts ...request.Option) (*GetAppOutput, error) {
1314	req, out := c.GetAppRequest(input)
1315	req.SetContext(ctx)
1316	req.ApplyOptions(opts...)
1317	return out, req.Send()
1318}
1319
1320const opGetArtifactUrl = "GetArtifactUrl"
1321
1322// GetArtifactUrlRequest generates a "aws/request.Request" representing the
1323// client's request for the GetArtifactUrl operation. The "output" return
1324// value will be populated with the request's response once the request completes
1325// successfully.
1326//
1327// Use "Send" method on the returned Request to send the API call to the service.
1328// the "output" return value is not valid until after Send returns without error.
1329//
1330// See GetArtifactUrl for more information on using the GetArtifactUrl
1331// API call, and error handling.
1332//
1333// This method is useful when you want to inject custom logic or configuration
1334// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1335//
1336//
1337//    // Example sending a request using the GetArtifactUrlRequest method.
1338//    req, resp := client.GetArtifactUrlRequest(params)
1339//
1340//    err := req.Send()
1341//    if err == nil { // resp is now filled
1342//        fmt.Println(resp)
1343//    }
1344//
1345// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetArtifactUrl
1346func (c *Amplify) GetArtifactUrlRequest(input *GetArtifactUrlInput) (req *request.Request, output *GetArtifactUrlOutput) {
1347	op := &request.Operation{
1348		Name:       opGetArtifactUrl,
1349		HTTPMethod: "GET",
1350		HTTPPath:   "/artifacts/{artifactId}",
1351	}
1352
1353	if input == nil {
1354		input = &GetArtifactUrlInput{}
1355	}
1356
1357	output = &GetArtifactUrlOutput{}
1358	req = c.newRequest(op, input, output)
1359	return
1360}
1361
1362// GetArtifactUrl API operation for AWS Amplify.
1363//
1364// Retrieves artifact info that corresponds to a artifactId.
1365//
1366// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1367// with awserr.Error's Code and Message methods to get detailed information about
1368// the error.
1369//
1370// See the AWS API reference guide for AWS Amplify's
1371// API operation GetArtifactUrl for usage and error information.
1372//
1373// Returned Error Codes:
1374//   * ErrCodeBadRequestException "BadRequestException"
1375//   Exception thrown when a request contains unexpected data.
1376//
1377//   * ErrCodeUnauthorizedException "UnauthorizedException"
1378//   Exception thrown when an operation fails due to a lack of access.
1379//
1380//   * ErrCodeInternalFailureException "InternalFailureException"
1381//   Exception thrown when the service fails to perform an operation due to an
1382//   internal issue.
1383//
1384//   * ErrCodeNotFoundException "NotFoundException"
1385//   Exception thrown when an entity has not been found during an operation.
1386//
1387//   * ErrCodeLimitExceededException "LimitExceededException"
1388//   Exception thrown when a resource could not be created because of service
1389//   limits.
1390//
1391// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetArtifactUrl
1392func (c *Amplify) GetArtifactUrl(input *GetArtifactUrlInput) (*GetArtifactUrlOutput, error) {
1393	req, out := c.GetArtifactUrlRequest(input)
1394	return out, req.Send()
1395}
1396
1397// GetArtifactUrlWithContext is the same as GetArtifactUrl with the addition of
1398// the ability to pass a context and additional request options.
1399//
1400// See GetArtifactUrl for details on how to use this API operation.
1401//
1402// The context must be non-nil and will be used for request cancellation. If
1403// the context is nil a panic will occur. In the future the SDK may create
1404// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1405// for more information on using Contexts.
1406func (c *Amplify) GetArtifactUrlWithContext(ctx aws.Context, input *GetArtifactUrlInput, opts ...request.Option) (*GetArtifactUrlOutput, error) {
1407	req, out := c.GetArtifactUrlRequest(input)
1408	req.SetContext(ctx)
1409	req.ApplyOptions(opts...)
1410	return out, req.Send()
1411}
1412
1413const opGetBackendEnvironment = "GetBackendEnvironment"
1414
1415// GetBackendEnvironmentRequest generates a "aws/request.Request" representing the
1416// client's request for the GetBackendEnvironment operation. The "output" return
1417// value will be populated with the request's response once the request completes
1418// successfully.
1419//
1420// Use "Send" method on the returned Request to send the API call to the service.
1421// the "output" return value is not valid until after Send returns without error.
1422//
1423// See GetBackendEnvironment for more information on using the GetBackendEnvironment
1424// API call, and error handling.
1425//
1426// This method is useful when you want to inject custom logic or configuration
1427// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1428//
1429//
1430//    // Example sending a request using the GetBackendEnvironmentRequest method.
1431//    req, resp := client.GetBackendEnvironmentRequest(params)
1432//
1433//    err := req.Send()
1434//    if err == nil { // resp is now filled
1435//        fmt.Println(resp)
1436//    }
1437//
1438// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetBackendEnvironment
1439func (c *Amplify) GetBackendEnvironmentRequest(input *GetBackendEnvironmentInput) (req *request.Request, output *GetBackendEnvironmentOutput) {
1440	op := &request.Operation{
1441		Name:       opGetBackendEnvironment,
1442		HTTPMethod: "GET",
1443		HTTPPath:   "/apps/{appId}/backendenvironments/{environmentName}",
1444	}
1445
1446	if input == nil {
1447		input = &GetBackendEnvironmentInput{}
1448	}
1449
1450	output = &GetBackendEnvironmentOutput{}
1451	req = c.newRequest(op, input, output)
1452	return
1453}
1454
1455// GetBackendEnvironment API operation for AWS Amplify.
1456//
1457// Retrieves a backend environment for an Amplify App.
1458//
1459// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1460// with awserr.Error's Code and Message methods to get detailed information about
1461// the error.
1462//
1463// See the AWS API reference guide for AWS Amplify's
1464// API operation GetBackendEnvironment for usage and error information.
1465//
1466// Returned Error Codes:
1467//   * ErrCodeBadRequestException "BadRequestException"
1468//   Exception thrown when a request contains unexpected data.
1469//
1470//   * ErrCodeUnauthorizedException "UnauthorizedException"
1471//   Exception thrown when an operation fails due to a lack of access.
1472//
1473//   * ErrCodeNotFoundException "NotFoundException"
1474//   Exception thrown when an entity has not been found during an operation.
1475//
1476//   * ErrCodeInternalFailureException "InternalFailureException"
1477//   Exception thrown when the service fails to perform an operation due to an
1478//   internal issue.
1479//
1480// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetBackendEnvironment
1481func (c *Amplify) GetBackendEnvironment(input *GetBackendEnvironmentInput) (*GetBackendEnvironmentOutput, error) {
1482	req, out := c.GetBackendEnvironmentRequest(input)
1483	return out, req.Send()
1484}
1485
1486// GetBackendEnvironmentWithContext is the same as GetBackendEnvironment with the addition of
1487// the ability to pass a context and additional request options.
1488//
1489// See GetBackendEnvironment for details on how to use this API operation.
1490//
1491// The context must be non-nil and will be used for request cancellation. If
1492// the context is nil a panic will occur. In the future the SDK may create
1493// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1494// for more information on using Contexts.
1495func (c *Amplify) GetBackendEnvironmentWithContext(ctx aws.Context, input *GetBackendEnvironmentInput, opts ...request.Option) (*GetBackendEnvironmentOutput, error) {
1496	req, out := c.GetBackendEnvironmentRequest(input)
1497	req.SetContext(ctx)
1498	req.ApplyOptions(opts...)
1499	return out, req.Send()
1500}
1501
1502const opGetBranch = "GetBranch"
1503
1504// GetBranchRequest generates a "aws/request.Request" representing the
1505// client's request for the GetBranch operation. The "output" return
1506// value will be populated with the request's response once the request completes
1507// successfully.
1508//
1509// Use "Send" method on the returned Request to send the API call to the service.
1510// the "output" return value is not valid until after Send returns without error.
1511//
1512// See GetBranch for more information on using the GetBranch
1513// API call, and error handling.
1514//
1515// This method is useful when you want to inject custom logic or configuration
1516// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1517//
1518//
1519//    // Example sending a request using the GetBranchRequest method.
1520//    req, resp := client.GetBranchRequest(params)
1521//
1522//    err := req.Send()
1523//    if err == nil { // resp is now filled
1524//        fmt.Println(resp)
1525//    }
1526//
1527// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetBranch
1528func (c *Amplify) GetBranchRequest(input *GetBranchInput) (req *request.Request, output *GetBranchOutput) {
1529	op := &request.Operation{
1530		Name:       opGetBranch,
1531		HTTPMethod: "GET",
1532		HTTPPath:   "/apps/{appId}/branches/{branchName}",
1533	}
1534
1535	if input == nil {
1536		input = &GetBranchInput{}
1537	}
1538
1539	output = &GetBranchOutput{}
1540	req = c.newRequest(op, input, output)
1541	return
1542}
1543
1544// GetBranch API operation for AWS Amplify.
1545//
1546// Retrieves a branch for an Amplify App.
1547//
1548// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1549// with awserr.Error's Code and Message methods to get detailed information about
1550// the error.
1551//
1552// See the AWS API reference guide for AWS Amplify's
1553// API operation GetBranch for usage and error information.
1554//
1555// Returned Error Codes:
1556//   * ErrCodeBadRequestException "BadRequestException"
1557//   Exception thrown when a request contains unexpected data.
1558//
1559//   * ErrCodeUnauthorizedException "UnauthorizedException"
1560//   Exception thrown when an operation fails due to a lack of access.
1561//
1562//   * ErrCodeNotFoundException "NotFoundException"
1563//   Exception thrown when an entity has not been found during an operation.
1564//
1565//   * ErrCodeInternalFailureException "InternalFailureException"
1566//   Exception thrown when the service fails to perform an operation due to an
1567//   internal issue.
1568//
1569// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetBranch
1570func (c *Amplify) GetBranch(input *GetBranchInput) (*GetBranchOutput, error) {
1571	req, out := c.GetBranchRequest(input)
1572	return out, req.Send()
1573}
1574
1575// GetBranchWithContext is the same as GetBranch with the addition of
1576// the ability to pass a context and additional request options.
1577//
1578// See GetBranch for details on how to use this API operation.
1579//
1580// The context must be non-nil and will be used for request cancellation. If
1581// the context is nil a panic will occur. In the future the SDK may create
1582// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1583// for more information on using Contexts.
1584func (c *Amplify) GetBranchWithContext(ctx aws.Context, input *GetBranchInput, opts ...request.Option) (*GetBranchOutput, error) {
1585	req, out := c.GetBranchRequest(input)
1586	req.SetContext(ctx)
1587	req.ApplyOptions(opts...)
1588	return out, req.Send()
1589}
1590
1591const opGetDomainAssociation = "GetDomainAssociation"
1592
1593// GetDomainAssociationRequest generates a "aws/request.Request" representing the
1594// client's request for the GetDomainAssociation operation. The "output" return
1595// value will be populated with the request's response once the request completes
1596// successfully.
1597//
1598// Use "Send" method on the returned Request to send the API call to the service.
1599// the "output" return value is not valid until after Send returns without error.
1600//
1601// See GetDomainAssociation for more information on using the GetDomainAssociation
1602// API call, and error handling.
1603//
1604// This method is useful when you want to inject custom logic or configuration
1605// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1606//
1607//
1608//    // Example sending a request using the GetDomainAssociationRequest method.
1609//    req, resp := client.GetDomainAssociationRequest(params)
1610//
1611//    err := req.Send()
1612//    if err == nil { // resp is now filled
1613//        fmt.Println(resp)
1614//    }
1615//
1616// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetDomainAssociation
1617func (c *Amplify) GetDomainAssociationRequest(input *GetDomainAssociationInput) (req *request.Request, output *GetDomainAssociationOutput) {
1618	op := &request.Operation{
1619		Name:       opGetDomainAssociation,
1620		HTTPMethod: "GET",
1621		HTTPPath:   "/apps/{appId}/domains/{domainName}",
1622	}
1623
1624	if input == nil {
1625		input = &GetDomainAssociationInput{}
1626	}
1627
1628	output = &GetDomainAssociationOutput{}
1629	req = c.newRequest(op, input, output)
1630	return
1631}
1632
1633// GetDomainAssociation API operation for AWS Amplify.
1634//
1635// Retrieves domain info that corresponds to an appId and domainName.
1636//
1637// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1638// with awserr.Error's Code and Message methods to get detailed information about
1639// the error.
1640//
1641// See the AWS API reference guide for AWS Amplify's
1642// API operation GetDomainAssociation for usage and error information.
1643//
1644// Returned Error Codes:
1645//   * ErrCodeBadRequestException "BadRequestException"
1646//   Exception thrown when a request contains unexpected data.
1647//
1648//   * ErrCodeUnauthorizedException "UnauthorizedException"
1649//   Exception thrown when an operation fails due to a lack of access.
1650//
1651//   * ErrCodeNotFoundException "NotFoundException"
1652//   Exception thrown when an entity has not been found during an operation.
1653//
1654//   * ErrCodeInternalFailureException "InternalFailureException"
1655//   Exception thrown when the service fails to perform an operation due to an
1656//   internal issue.
1657//
1658// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetDomainAssociation
1659func (c *Amplify) GetDomainAssociation(input *GetDomainAssociationInput) (*GetDomainAssociationOutput, error) {
1660	req, out := c.GetDomainAssociationRequest(input)
1661	return out, req.Send()
1662}
1663
1664// GetDomainAssociationWithContext is the same as GetDomainAssociation with the addition of
1665// the ability to pass a context and additional request options.
1666//
1667// See GetDomainAssociation for details on how to use this API operation.
1668//
1669// The context must be non-nil and will be used for request cancellation. If
1670// the context is nil a panic will occur. In the future the SDK may create
1671// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1672// for more information on using Contexts.
1673func (c *Amplify) GetDomainAssociationWithContext(ctx aws.Context, input *GetDomainAssociationInput, opts ...request.Option) (*GetDomainAssociationOutput, error) {
1674	req, out := c.GetDomainAssociationRequest(input)
1675	req.SetContext(ctx)
1676	req.ApplyOptions(opts...)
1677	return out, req.Send()
1678}
1679
1680const opGetJob = "GetJob"
1681
1682// GetJobRequest generates a "aws/request.Request" representing the
1683// client's request for the GetJob operation. The "output" return
1684// value will be populated with the request's response once the request completes
1685// successfully.
1686//
1687// Use "Send" method on the returned Request to send the API call to the service.
1688// the "output" return value is not valid until after Send returns without error.
1689//
1690// See GetJob for more information on using the GetJob
1691// API call, and error handling.
1692//
1693// This method is useful when you want to inject custom logic or configuration
1694// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1695//
1696//
1697//    // Example sending a request using the GetJobRequest method.
1698//    req, resp := client.GetJobRequest(params)
1699//
1700//    err := req.Send()
1701//    if err == nil { // resp is now filled
1702//        fmt.Println(resp)
1703//    }
1704//
1705// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetJob
1706func (c *Amplify) GetJobRequest(input *GetJobInput) (req *request.Request, output *GetJobOutput) {
1707	op := &request.Operation{
1708		Name:       opGetJob,
1709		HTTPMethod: "GET",
1710		HTTPPath:   "/apps/{appId}/branches/{branchName}/jobs/{jobId}",
1711	}
1712
1713	if input == nil {
1714		input = &GetJobInput{}
1715	}
1716
1717	output = &GetJobOutput{}
1718	req = c.newRequest(op, input, output)
1719	return
1720}
1721
1722// GetJob API operation for AWS Amplify.
1723//
1724// Get a job for a branch, part of an Amplify App.
1725//
1726// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1727// with awserr.Error's Code and Message methods to get detailed information about
1728// the error.
1729//
1730// See the AWS API reference guide for AWS Amplify's
1731// API operation GetJob for usage and error information.
1732//
1733// Returned Error Codes:
1734//   * ErrCodeBadRequestException "BadRequestException"
1735//   Exception thrown when a request contains unexpected data.
1736//
1737//   * ErrCodeUnauthorizedException "UnauthorizedException"
1738//   Exception thrown when an operation fails due to a lack of access.
1739//
1740//   * ErrCodeInternalFailureException "InternalFailureException"
1741//   Exception thrown when the service fails to perform an operation due to an
1742//   internal issue.
1743//
1744//   * ErrCodeNotFoundException "NotFoundException"
1745//   Exception thrown when an entity has not been found during an operation.
1746//
1747//   * ErrCodeLimitExceededException "LimitExceededException"
1748//   Exception thrown when a resource could not be created because of service
1749//   limits.
1750//
1751// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetJob
1752func (c *Amplify) GetJob(input *GetJobInput) (*GetJobOutput, error) {
1753	req, out := c.GetJobRequest(input)
1754	return out, req.Send()
1755}
1756
1757// GetJobWithContext is the same as GetJob with the addition of
1758// the ability to pass a context and additional request options.
1759//
1760// See GetJob for details on how to use this API operation.
1761//
1762// The context must be non-nil and will be used for request cancellation. If
1763// the context is nil a panic will occur. In the future the SDK may create
1764// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1765// for more information on using Contexts.
1766func (c *Amplify) GetJobWithContext(ctx aws.Context, input *GetJobInput, opts ...request.Option) (*GetJobOutput, error) {
1767	req, out := c.GetJobRequest(input)
1768	req.SetContext(ctx)
1769	req.ApplyOptions(opts...)
1770	return out, req.Send()
1771}
1772
1773const opGetWebhook = "GetWebhook"
1774
1775// GetWebhookRequest generates a "aws/request.Request" representing the
1776// client's request for the GetWebhook operation. The "output" return
1777// value will be populated with the request's response once the request completes
1778// successfully.
1779//
1780// Use "Send" method on the returned Request to send the API call to the service.
1781// the "output" return value is not valid until after Send returns without error.
1782//
1783// See GetWebhook for more information on using the GetWebhook
1784// API call, and error handling.
1785//
1786// This method is useful when you want to inject custom logic or configuration
1787// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1788//
1789//
1790//    // Example sending a request using the GetWebhookRequest method.
1791//    req, resp := client.GetWebhookRequest(params)
1792//
1793//    err := req.Send()
1794//    if err == nil { // resp is now filled
1795//        fmt.Println(resp)
1796//    }
1797//
1798// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetWebhook
1799func (c *Amplify) GetWebhookRequest(input *GetWebhookInput) (req *request.Request, output *GetWebhookOutput) {
1800	op := &request.Operation{
1801		Name:       opGetWebhook,
1802		HTTPMethod: "GET",
1803		HTTPPath:   "/webhooks/{webhookId}",
1804	}
1805
1806	if input == nil {
1807		input = &GetWebhookInput{}
1808	}
1809
1810	output = &GetWebhookOutput{}
1811	req = c.newRequest(op, input, output)
1812	return
1813}
1814
1815// GetWebhook API operation for AWS Amplify.
1816//
1817// Retrieves webhook info that corresponds to a webhookId.
1818//
1819// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1820// with awserr.Error's Code and Message methods to get detailed information about
1821// the error.
1822//
1823// See the AWS API reference guide for AWS Amplify's
1824// API operation GetWebhook for usage and error information.
1825//
1826// Returned Error Codes:
1827//   * ErrCodeBadRequestException "BadRequestException"
1828//   Exception thrown when a request contains unexpected data.
1829//
1830//   * ErrCodeUnauthorizedException "UnauthorizedException"
1831//   Exception thrown when an operation fails due to a lack of access.
1832//
1833//   * ErrCodeInternalFailureException "InternalFailureException"
1834//   Exception thrown when the service fails to perform an operation due to an
1835//   internal issue.
1836//
1837//   * ErrCodeNotFoundException "NotFoundException"
1838//   Exception thrown when an entity has not been found during an operation.
1839//
1840//   * ErrCodeLimitExceededException "LimitExceededException"
1841//   Exception thrown when a resource could not be created because of service
1842//   limits.
1843//
1844// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/GetWebhook
1845func (c *Amplify) GetWebhook(input *GetWebhookInput) (*GetWebhookOutput, error) {
1846	req, out := c.GetWebhookRequest(input)
1847	return out, req.Send()
1848}
1849
1850// GetWebhookWithContext is the same as GetWebhook with the addition of
1851// the ability to pass a context and additional request options.
1852//
1853// See GetWebhook for details on how to use this API operation.
1854//
1855// The context must be non-nil and will be used for request cancellation. If
1856// the context is nil a panic will occur. In the future the SDK may create
1857// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1858// for more information on using Contexts.
1859func (c *Amplify) GetWebhookWithContext(ctx aws.Context, input *GetWebhookInput, opts ...request.Option) (*GetWebhookOutput, error) {
1860	req, out := c.GetWebhookRequest(input)
1861	req.SetContext(ctx)
1862	req.ApplyOptions(opts...)
1863	return out, req.Send()
1864}
1865
1866const opListApps = "ListApps"
1867
1868// ListAppsRequest generates a "aws/request.Request" representing the
1869// client's request for the ListApps operation. The "output" return
1870// value will be populated with the request's response once the request completes
1871// successfully.
1872//
1873// Use "Send" method on the returned Request to send the API call to the service.
1874// the "output" return value is not valid until after Send returns without error.
1875//
1876// See ListApps for more information on using the ListApps
1877// API call, and error handling.
1878//
1879// This method is useful when you want to inject custom logic or configuration
1880// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1881//
1882//
1883//    // Example sending a request using the ListAppsRequest method.
1884//    req, resp := client.ListAppsRequest(params)
1885//
1886//    err := req.Send()
1887//    if err == nil { // resp is now filled
1888//        fmt.Println(resp)
1889//    }
1890//
1891// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListApps
1892func (c *Amplify) ListAppsRequest(input *ListAppsInput) (req *request.Request, output *ListAppsOutput) {
1893	op := &request.Operation{
1894		Name:       opListApps,
1895		HTTPMethod: "GET",
1896		HTTPPath:   "/apps",
1897	}
1898
1899	if input == nil {
1900		input = &ListAppsInput{}
1901	}
1902
1903	output = &ListAppsOutput{}
1904	req = c.newRequest(op, input, output)
1905	return
1906}
1907
1908// ListApps API operation for AWS Amplify.
1909//
1910// Lists existing Amplify Apps.
1911//
1912// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1913// with awserr.Error's Code and Message methods to get detailed information about
1914// the error.
1915//
1916// See the AWS API reference guide for AWS Amplify's
1917// API operation ListApps for usage and error information.
1918//
1919// Returned Error Codes:
1920//   * ErrCodeBadRequestException "BadRequestException"
1921//   Exception thrown when a request contains unexpected data.
1922//
1923//   * ErrCodeUnauthorizedException "UnauthorizedException"
1924//   Exception thrown when an operation fails due to a lack of access.
1925//
1926//   * ErrCodeInternalFailureException "InternalFailureException"
1927//   Exception thrown when the service fails to perform an operation due to an
1928//   internal issue.
1929//
1930// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListApps
1931func (c *Amplify) ListApps(input *ListAppsInput) (*ListAppsOutput, error) {
1932	req, out := c.ListAppsRequest(input)
1933	return out, req.Send()
1934}
1935
1936// ListAppsWithContext is the same as ListApps with the addition of
1937// the ability to pass a context and additional request options.
1938//
1939// See ListApps for details on how to use this API operation.
1940//
1941// The context must be non-nil and will be used for request cancellation. If
1942// the context is nil a panic will occur. In the future the SDK may create
1943// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1944// for more information on using Contexts.
1945func (c *Amplify) ListAppsWithContext(ctx aws.Context, input *ListAppsInput, opts ...request.Option) (*ListAppsOutput, error) {
1946	req, out := c.ListAppsRequest(input)
1947	req.SetContext(ctx)
1948	req.ApplyOptions(opts...)
1949	return out, req.Send()
1950}
1951
1952const opListArtifacts = "ListArtifacts"
1953
1954// ListArtifactsRequest generates a "aws/request.Request" representing the
1955// client's request for the ListArtifacts operation. The "output" return
1956// value will be populated with the request's response once the request completes
1957// successfully.
1958//
1959// Use "Send" method on the returned Request to send the API call to the service.
1960// the "output" return value is not valid until after Send returns without error.
1961//
1962// See ListArtifacts for more information on using the ListArtifacts
1963// API call, and error handling.
1964//
1965// This method is useful when you want to inject custom logic or configuration
1966// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1967//
1968//
1969//    // Example sending a request using the ListArtifactsRequest method.
1970//    req, resp := client.ListArtifactsRequest(params)
1971//
1972//    err := req.Send()
1973//    if err == nil { // resp is now filled
1974//        fmt.Println(resp)
1975//    }
1976//
1977// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListArtifacts
1978func (c *Amplify) ListArtifactsRequest(input *ListArtifactsInput) (req *request.Request, output *ListArtifactsOutput) {
1979	op := &request.Operation{
1980		Name:       opListArtifacts,
1981		HTTPMethod: "GET",
1982		HTTPPath:   "/apps/{appId}/branches/{branchName}/jobs/{jobId}/artifacts",
1983	}
1984
1985	if input == nil {
1986		input = &ListArtifactsInput{}
1987	}
1988
1989	output = &ListArtifactsOutput{}
1990	req = c.newRequest(op, input, output)
1991	return
1992}
1993
1994// ListArtifacts API operation for AWS Amplify.
1995//
1996// List artifacts with an app, a branch, a job and an artifact type.
1997//
1998// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1999// with awserr.Error's Code and Message methods to get detailed information about
2000// the error.
2001//
2002// See the AWS API reference guide for AWS Amplify's
2003// API operation ListArtifacts for usage and error information.
2004//
2005// Returned Error Codes:
2006//   * ErrCodeBadRequestException "BadRequestException"
2007//   Exception thrown when a request contains unexpected data.
2008//
2009//   * ErrCodeUnauthorizedException "UnauthorizedException"
2010//   Exception thrown when an operation fails due to a lack of access.
2011//
2012//   * ErrCodeInternalFailureException "InternalFailureException"
2013//   Exception thrown when the service fails to perform an operation due to an
2014//   internal issue.
2015//
2016//   * ErrCodeLimitExceededException "LimitExceededException"
2017//   Exception thrown when a resource could not be created because of service
2018//   limits.
2019//
2020// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListArtifacts
2021func (c *Amplify) ListArtifacts(input *ListArtifactsInput) (*ListArtifactsOutput, error) {
2022	req, out := c.ListArtifactsRequest(input)
2023	return out, req.Send()
2024}
2025
2026// ListArtifactsWithContext is the same as ListArtifacts with the addition of
2027// the ability to pass a context and additional request options.
2028//
2029// See ListArtifacts for details on how to use this API operation.
2030//
2031// The context must be non-nil and will be used for request cancellation. If
2032// the context is nil a panic will occur. In the future the SDK may create
2033// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2034// for more information on using Contexts.
2035func (c *Amplify) ListArtifactsWithContext(ctx aws.Context, input *ListArtifactsInput, opts ...request.Option) (*ListArtifactsOutput, error) {
2036	req, out := c.ListArtifactsRequest(input)
2037	req.SetContext(ctx)
2038	req.ApplyOptions(opts...)
2039	return out, req.Send()
2040}
2041
2042const opListBackendEnvironments = "ListBackendEnvironments"
2043
2044// ListBackendEnvironmentsRequest generates a "aws/request.Request" representing the
2045// client's request for the ListBackendEnvironments operation. The "output" return
2046// value will be populated with the request's response once the request completes
2047// successfully.
2048//
2049// Use "Send" method on the returned Request to send the API call to the service.
2050// the "output" return value is not valid until after Send returns without error.
2051//
2052// See ListBackendEnvironments for more information on using the ListBackendEnvironments
2053// API call, and error handling.
2054//
2055// This method is useful when you want to inject custom logic or configuration
2056// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2057//
2058//
2059//    // Example sending a request using the ListBackendEnvironmentsRequest method.
2060//    req, resp := client.ListBackendEnvironmentsRequest(params)
2061//
2062//    err := req.Send()
2063//    if err == nil { // resp is now filled
2064//        fmt.Println(resp)
2065//    }
2066//
2067// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListBackendEnvironments
2068func (c *Amplify) ListBackendEnvironmentsRequest(input *ListBackendEnvironmentsInput) (req *request.Request, output *ListBackendEnvironmentsOutput) {
2069	op := &request.Operation{
2070		Name:       opListBackendEnvironments,
2071		HTTPMethod: "GET",
2072		HTTPPath:   "/apps/{appId}/backendenvironments",
2073	}
2074
2075	if input == nil {
2076		input = &ListBackendEnvironmentsInput{}
2077	}
2078
2079	output = &ListBackendEnvironmentsOutput{}
2080	req = c.newRequest(op, input, output)
2081	return
2082}
2083
2084// ListBackendEnvironments API operation for AWS Amplify.
2085//
2086// Lists backend environments for an Amplify App.
2087//
2088// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2089// with awserr.Error's Code and Message methods to get detailed information about
2090// the error.
2091//
2092// See the AWS API reference guide for AWS Amplify's
2093// API operation ListBackendEnvironments for usage and error information.
2094//
2095// Returned Error Codes:
2096//   * ErrCodeBadRequestException "BadRequestException"
2097//   Exception thrown when a request contains unexpected data.
2098//
2099//   * ErrCodeUnauthorizedException "UnauthorizedException"
2100//   Exception thrown when an operation fails due to a lack of access.
2101//
2102//   * ErrCodeInternalFailureException "InternalFailureException"
2103//   Exception thrown when the service fails to perform an operation due to an
2104//   internal issue.
2105//
2106// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListBackendEnvironments
2107func (c *Amplify) ListBackendEnvironments(input *ListBackendEnvironmentsInput) (*ListBackendEnvironmentsOutput, error) {
2108	req, out := c.ListBackendEnvironmentsRequest(input)
2109	return out, req.Send()
2110}
2111
2112// ListBackendEnvironmentsWithContext is the same as ListBackendEnvironments with the addition of
2113// the ability to pass a context and additional request options.
2114//
2115// See ListBackendEnvironments for details on how to use this API operation.
2116//
2117// The context must be non-nil and will be used for request cancellation. If
2118// the context is nil a panic will occur. In the future the SDK may create
2119// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2120// for more information on using Contexts.
2121func (c *Amplify) ListBackendEnvironmentsWithContext(ctx aws.Context, input *ListBackendEnvironmentsInput, opts ...request.Option) (*ListBackendEnvironmentsOutput, error) {
2122	req, out := c.ListBackendEnvironmentsRequest(input)
2123	req.SetContext(ctx)
2124	req.ApplyOptions(opts...)
2125	return out, req.Send()
2126}
2127
2128const opListBranches = "ListBranches"
2129
2130// ListBranchesRequest generates a "aws/request.Request" representing the
2131// client's request for the ListBranches operation. The "output" return
2132// value will be populated with the request's response once the request completes
2133// successfully.
2134//
2135// Use "Send" method on the returned Request to send the API call to the service.
2136// the "output" return value is not valid until after Send returns without error.
2137//
2138// See ListBranches for more information on using the ListBranches
2139// API call, and error handling.
2140//
2141// This method is useful when you want to inject custom logic or configuration
2142// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2143//
2144//
2145//    // Example sending a request using the ListBranchesRequest method.
2146//    req, resp := client.ListBranchesRequest(params)
2147//
2148//    err := req.Send()
2149//    if err == nil { // resp is now filled
2150//        fmt.Println(resp)
2151//    }
2152//
2153// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListBranches
2154func (c *Amplify) ListBranchesRequest(input *ListBranchesInput) (req *request.Request, output *ListBranchesOutput) {
2155	op := &request.Operation{
2156		Name:       opListBranches,
2157		HTTPMethod: "GET",
2158		HTTPPath:   "/apps/{appId}/branches",
2159	}
2160
2161	if input == nil {
2162		input = &ListBranchesInput{}
2163	}
2164
2165	output = &ListBranchesOutput{}
2166	req = c.newRequest(op, input, output)
2167	return
2168}
2169
2170// ListBranches API operation for AWS Amplify.
2171//
2172// Lists branches for an Amplify App.
2173//
2174// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2175// with awserr.Error's Code and Message methods to get detailed information about
2176// the error.
2177//
2178// See the AWS API reference guide for AWS Amplify's
2179// API operation ListBranches for usage and error information.
2180//
2181// Returned Error Codes:
2182//   * ErrCodeBadRequestException "BadRequestException"
2183//   Exception thrown when a request contains unexpected data.
2184//
2185//   * ErrCodeUnauthorizedException "UnauthorizedException"
2186//   Exception thrown when an operation fails due to a lack of access.
2187//
2188//   * ErrCodeInternalFailureException "InternalFailureException"
2189//   Exception thrown when the service fails to perform an operation due to an
2190//   internal issue.
2191//
2192// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListBranches
2193func (c *Amplify) ListBranches(input *ListBranchesInput) (*ListBranchesOutput, error) {
2194	req, out := c.ListBranchesRequest(input)
2195	return out, req.Send()
2196}
2197
2198// ListBranchesWithContext is the same as ListBranches with the addition of
2199// the ability to pass a context and additional request options.
2200//
2201// See ListBranches for details on how to use this API operation.
2202//
2203// The context must be non-nil and will be used for request cancellation. If
2204// the context is nil a panic will occur. In the future the SDK may create
2205// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2206// for more information on using Contexts.
2207func (c *Amplify) ListBranchesWithContext(ctx aws.Context, input *ListBranchesInput, opts ...request.Option) (*ListBranchesOutput, error) {
2208	req, out := c.ListBranchesRequest(input)
2209	req.SetContext(ctx)
2210	req.ApplyOptions(opts...)
2211	return out, req.Send()
2212}
2213
2214const opListDomainAssociations = "ListDomainAssociations"
2215
2216// ListDomainAssociationsRequest generates a "aws/request.Request" representing the
2217// client's request for the ListDomainAssociations operation. The "output" return
2218// value will be populated with the request's response once the request completes
2219// successfully.
2220//
2221// Use "Send" method on the returned Request to send the API call to the service.
2222// the "output" return value is not valid until after Send returns without error.
2223//
2224// See ListDomainAssociations for more information on using the ListDomainAssociations
2225// API call, and error handling.
2226//
2227// This method is useful when you want to inject custom logic or configuration
2228// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2229//
2230//
2231//    // Example sending a request using the ListDomainAssociationsRequest method.
2232//    req, resp := client.ListDomainAssociationsRequest(params)
2233//
2234//    err := req.Send()
2235//    if err == nil { // resp is now filled
2236//        fmt.Println(resp)
2237//    }
2238//
2239// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListDomainAssociations
2240func (c *Amplify) ListDomainAssociationsRequest(input *ListDomainAssociationsInput) (req *request.Request, output *ListDomainAssociationsOutput) {
2241	op := &request.Operation{
2242		Name:       opListDomainAssociations,
2243		HTTPMethod: "GET",
2244		HTTPPath:   "/apps/{appId}/domains",
2245	}
2246
2247	if input == nil {
2248		input = &ListDomainAssociationsInput{}
2249	}
2250
2251	output = &ListDomainAssociationsOutput{}
2252	req = c.newRequest(op, input, output)
2253	return
2254}
2255
2256// ListDomainAssociations API operation for AWS Amplify.
2257//
2258// List domains with an app
2259//
2260// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2261// with awserr.Error's Code and Message methods to get detailed information about
2262// the error.
2263//
2264// See the AWS API reference guide for AWS Amplify's
2265// API operation ListDomainAssociations for usage and error information.
2266//
2267// Returned Error Codes:
2268//   * ErrCodeBadRequestException "BadRequestException"
2269//   Exception thrown when a request contains unexpected data.
2270//
2271//   * ErrCodeUnauthorizedException "UnauthorizedException"
2272//   Exception thrown when an operation fails due to a lack of access.
2273//
2274//   * ErrCodeInternalFailureException "InternalFailureException"
2275//   Exception thrown when the service fails to perform an operation due to an
2276//   internal issue.
2277//
2278// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListDomainAssociations
2279func (c *Amplify) ListDomainAssociations(input *ListDomainAssociationsInput) (*ListDomainAssociationsOutput, error) {
2280	req, out := c.ListDomainAssociationsRequest(input)
2281	return out, req.Send()
2282}
2283
2284// ListDomainAssociationsWithContext is the same as ListDomainAssociations with the addition of
2285// the ability to pass a context and additional request options.
2286//
2287// See ListDomainAssociations for details on how to use this API operation.
2288//
2289// The context must be non-nil and will be used for request cancellation. If
2290// the context is nil a panic will occur. In the future the SDK may create
2291// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2292// for more information on using Contexts.
2293func (c *Amplify) ListDomainAssociationsWithContext(ctx aws.Context, input *ListDomainAssociationsInput, opts ...request.Option) (*ListDomainAssociationsOutput, error) {
2294	req, out := c.ListDomainAssociationsRequest(input)
2295	req.SetContext(ctx)
2296	req.ApplyOptions(opts...)
2297	return out, req.Send()
2298}
2299
2300const opListJobs = "ListJobs"
2301
2302// ListJobsRequest generates a "aws/request.Request" representing the
2303// client's request for the ListJobs operation. The "output" return
2304// value will be populated with the request's response once the request completes
2305// successfully.
2306//
2307// Use "Send" method on the returned Request to send the API call to the service.
2308// the "output" return value is not valid until after Send returns without error.
2309//
2310// See ListJobs for more information on using the ListJobs
2311// API call, and error handling.
2312//
2313// This method is useful when you want to inject custom logic or configuration
2314// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2315//
2316//
2317//    // Example sending a request using the ListJobsRequest method.
2318//    req, resp := client.ListJobsRequest(params)
2319//
2320//    err := req.Send()
2321//    if err == nil { // resp is now filled
2322//        fmt.Println(resp)
2323//    }
2324//
2325// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListJobs
2326func (c *Amplify) ListJobsRequest(input *ListJobsInput) (req *request.Request, output *ListJobsOutput) {
2327	op := &request.Operation{
2328		Name:       opListJobs,
2329		HTTPMethod: "GET",
2330		HTTPPath:   "/apps/{appId}/branches/{branchName}/jobs",
2331	}
2332
2333	if input == nil {
2334		input = &ListJobsInput{}
2335	}
2336
2337	output = &ListJobsOutput{}
2338	req = c.newRequest(op, input, output)
2339	return
2340}
2341
2342// ListJobs API operation for AWS Amplify.
2343//
2344// List Jobs for a branch, part of an Amplify App.
2345//
2346// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2347// with awserr.Error's Code and Message methods to get detailed information about
2348// the error.
2349//
2350// See the AWS API reference guide for AWS Amplify's
2351// API operation ListJobs for usage and error information.
2352//
2353// Returned Error Codes:
2354//   * ErrCodeBadRequestException "BadRequestException"
2355//   Exception thrown when a request contains unexpected data.
2356//
2357//   * ErrCodeUnauthorizedException "UnauthorizedException"
2358//   Exception thrown when an operation fails due to a lack of access.
2359//
2360//   * ErrCodeInternalFailureException "InternalFailureException"
2361//   Exception thrown when the service fails to perform an operation due to an
2362//   internal issue.
2363//
2364//   * ErrCodeLimitExceededException "LimitExceededException"
2365//   Exception thrown when a resource could not be created because of service
2366//   limits.
2367//
2368// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListJobs
2369func (c *Amplify) ListJobs(input *ListJobsInput) (*ListJobsOutput, error) {
2370	req, out := c.ListJobsRequest(input)
2371	return out, req.Send()
2372}
2373
2374// ListJobsWithContext is the same as ListJobs with the addition of
2375// the ability to pass a context and additional request options.
2376//
2377// See ListJobs for details on how to use this API operation.
2378//
2379// The context must be non-nil and will be used for request cancellation. If
2380// the context is nil a panic will occur. In the future the SDK may create
2381// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2382// for more information on using Contexts.
2383func (c *Amplify) ListJobsWithContext(ctx aws.Context, input *ListJobsInput, opts ...request.Option) (*ListJobsOutput, error) {
2384	req, out := c.ListJobsRequest(input)
2385	req.SetContext(ctx)
2386	req.ApplyOptions(opts...)
2387	return out, req.Send()
2388}
2389
2390const opListTagsForResource = "ListTagsForResource"
2391
2392// ListTagsForResourceRequest generates a "aws/request.Request" representing the
2393// client's request for the ListTagsForResource operation. The "output" return
2394// value will be populated with the request's response once the request completes
2395// successfully.
2396//
2397// Use "Send" method on the returned Request to send the API call to the service.
2398// the "output" return value is not valid until after Send returns without error.
2399//
2400// See ListTagsForResource for more information on using the ListTagsForResource
2401// API call, and error handling.
2402//
2403// This method is useful when you want to inject custom logic or configuration
2404// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2405//
2406//
2407//    // Example sending a request using the ListTagsForResourceRequest method.
2408//    req, resp := client.ListTagsForResourceRequest(params)
2409//
2410//    err := req.Send()
2411//    if err == nil { // resp is now filled
2412//        fmt.Println(resp)
2413//    }
2414//
2415// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListTagsForResource
2416func (c *Amplify) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
2417	op := &request.Operation{
2418		Name:       opListTagsForResource,
2419		HTTPMethod: "GET",
2420		HTTPPath:   "/tags/{resourceArn}",
2421	}
2422
2423	if input == nil {
2424		input = &ListTagsForResourceInput{}
2425	}
2426
2427	output = &ListTagsForResourceOutput{}
2428	req = c.newRequest(op, input, output)
2429	return
2430}
2431
2432// ListTagsForResource API operation for AWS Amplify.
2433//
2434// List tags for resource.
2435//
2436// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2437// with awserr.Error's Code and Message methods to get detailed information about
2438// the error.
2439//
2440// See the AWS API reference guide for AWS Amplify's
2441// API operation ListTagsForResource for usage and error information.
2442//
2443// Returned Error Codes:
2444//   * ErrCodeInternalFailureException "InternalFailureException"
2445//   Exception thrown when the service fails to perform an operation due to an
2446//   internal issue.
2447//
2448//   * ErrCodeBadRequestException "BadRequestException"
2449//   Exception thrown when a request contains unexpected data.
2450//
2451//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
2452//   Exception thrown when an operation fails due to non-existent resource.
2453//
2454// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListTagsForResource
2455func (c *Amplify) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
2456	req, out := c.ListTagsForResourceRequest(input)
2457	return out, req.Send()
2458}
2459
2460// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
2461// the ability to pass a context and additional request options.
2462//
2463// See ListTagsForResource for details on how to use this API operation.
2464//
2465// The context must be non-nil and will be used for request cancellation. If
2466// the context is nil a panic will occur. In the future the SDK may create
2467// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2468// for more information on using Contexts.
2469func (c *Amplify) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
2470	req, out := c.ListTagsForResourceRequest(input)
2471	req.SetContext(ctx)
2472	req.ApplyOptions(opts...)
2473	return out, req.Send()
2474}
2475
2476const opListWebhooks = "ListWebhooks"
2477
2478// ListWebhooksRequest generates a "aws/request.Request" representing the
2479// client's request for the ListWebhooks operation. The "output" return
2480// value will be populated with the request's response once the request completes
2481// successfully.
2482//
2483// Use "Send" method on the returned Request to send the API call to the service.
2484// the "output" return value is not valid until after Send returns without error.
2485//
2486// See ListWebhooks for more information on using the ListWebhooks
2487// API call, and error handling.
2488//
2489// This method is useful when you want to inject custom logic or configuration
2490// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2491//
2492//
2493//    // Example sending a request using the ListWebhooksRequest method.
2494//    req, resp := client.ListWebhooksRequest(params)
2495//
2496//    err := req.Send()
2497//    if err == nil { // resp is now filled
2498//        fmt.Println(resp)
2499//    }
2500//
2501// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListWebhooks
2502func (c *Amplify) ListWebhooksRequest(input *ListWebhooksInput) (req *request.Request, output *ListWebhooksOutput) {
2503	op := &request.Operation{
2504		Name:       opListWebhooks,
2505		HTTPMethod: "GET",
2506		HTTPPath:   "/apps/{appId}/webhooks",
2507	}
2508
2509	if input == nil {
2510		input = &ListWebhooksInput{}
2511	}
2512
2513	output = &ListWebhooksOutput{}
2514	req = c.newRequest(op, input, output)
2515	return
2516}
2517
2518// ListWebhooks API operation for AWS Amplify.
2519//
2520// List webhooks with an app.
2521//
2522// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2523// with awserr.Error's Code and Message methods to get detailed information about
2524// the error.
2525//
2526// See the AWS API reference guide for AWS Amplify's
2527// API operation ListWebhooks for usage and error information.
2528//
2529// Returned Error Codes:
2530//   * ErrCodeBadRequestException "BadRequestException"
2531//   Exception thrown when a request contains unexpected data.
2532//
2533//   * ErrCodeUnauthorizedException "UnauthorizedException"
2534//   Exception thrown when an operation fails due to a lack of access.
2535//
2536//   * ErrCodeInternalFailureException "InternalFailureException"
2537//   Exception thrown when the service fails to perform an operation due to an
2538//   internal issue.
2539//
2540//   * ErrCodeLimitExceededException "LimitExceededException"
2541//   Exception thrown when a resource could not be created because of service
2542//   limits.
2543//
2544// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/ListWebhooks
2545func (c *Amplify) ListWebhooks(input *ListWebhooksInput) (*ListWebhooksOutput, error) {
2546	req, out := c.ListWebhooksRequest(input)
2547	return out, req.Send()
2548}
2549
2550// ListWebhooksWithContext is the same as ListWebhooks with the addition of
2551// the ability to pass a context and additional request options.
2552//
2553// See ListWebhooks for details on how to use this API operation.
2554//
2555// The context must be non-nil and will be used for request cancellation. If
2556// the context is nil a panic will occur. In the future the SDK may create
2557// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2558// for more information on using Contexts.
2559func (c *Amplify) ListWebhooksWithContext(ctx aws.Context, input *ListWebhooksInput, opts ...request.Option) (*ListWebhooksOutput, error) {
2560	req, out := c.ListWebhooksRequest(input)
2561	req.SetContext(ctx)
2562	req.ApplyOptions(opts...)
2563	return out, req.Send()
2564}
2565
2566const opStartDeployment = "StartDeployment"
2567
2568// StartDeploymentRequest generates a "aws/request.Request" representing the
2569// client's request for the StartDeployment operation. The "output" return
2570// value will be populated with the request's response once the request completes
2571// successfully.
2572//
2573// Use "Send" method on the returned Request to send the API call to the service.
2574// the "output" return value is not valid until after Send returns without error.
2575//
2576// See StartDeployment for more information on using the StartDeployment
2577// API call, and error handling.
2578//
2579// This method is useful when you want to inject custom logic or configuration
2580// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2581//
2582//
2583//    // Example sending a request using the StartDeploymentRequest method.
2584//    req, resp := client.StartDeploymentRequest(params)
2585//
2586//    err := req.Send()
2587//    if err == nil { // resp is now filled
2588//        fmt.Println(resp)
2589//    }
2590//
2591// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/StartDeployment
2592func (c *Amplify) StartDeploymentRequest(input *StartDeploymentInput) (req *request.Request, output *StartDeploymentOutput) {
2593	op := &request.Operation{
2594		Name:       opStartDeployment,
2595		HTTPMethod: "POST",
2596		HTTPPath:   "/apps/{appId}/branches/{branchName}/deployments/start",
2597	}
2598
2599	if input == nil {
2600		input = &StartDeploymentInput{}
2601	}
2602
2603	output = &StartDeploymentOutput{}
2604	req = c.newRequest(op, input, output)
2605	return
2606}
2607
2608// StartDeployment API operation for AWS Amplify.
2609//
2610// Start a deployment for manual deploy apps. (Apps are not connected to repository)
2611//
2612// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2613// with awserr.Error's Code and Message methods to get detailed information about
2614// the error.
2615//
2616// See the AWS API reference guide for AWS Amplify's
2617// API operation StartDeployment for usage and error information.
2618//
2619// Returned Error Codes:
2620//   * ErrCodeBadRequestException "BadRequestException"
2621//   Exception thrown when a request contains unexpected data.
2622//
2623//   * ErrCodeUnauthorizedException "UnauthorizedException"
2624//   Exception thrown when an operation fails due to a lack of access.
2625//
2626//   * ErrCodeInternalFailureException "InternalFailureException"
2627//   Exception thrown when the service fails to perform an operation due to an
2628//   internal issue.
2629//
2630//   * ErrCodeNotFoundException "NotFoundException"
2631//   Exception thrown when an entity has not been found during an operation.
2632//
2633//   * ErrCodeLimitExceededException "LimitExceededException"
2634//   Exception thrown when a resource could not be created because of service
2635//   limits.
2636//
2637// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/StartDeployment
2638func (c *Amplify) StartDeployment(input *StartDeploymentInput) (*StartDeploymentOutput, error) {
2639	req, out := c.StartDeploymentRequest(input)
2640	return out, req.Send()
2641}
2642
2643// StartDeploymentWithContext is the same as StartDeployment with the addition of
2644// the ability to pass a context and additional request options.
2645//
2646// See StartDeployment for details on how to use this API operation.
2647//
2648// The context must be non-nil and will be used for request cancellation. If
2649// the context is nil a panic will occur. In the future the SDK may create
2650// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2651// for more information on using Contexts.
2652func (c *Amplify) StartDeploymentWithContext(ctx aws.Context, input *StartDeploymentInput, opts ...request.Option) (*StartDeploymentOutput, error) {
2653	req, out := c.StartDeploymentRequest(input)
2654	req.SetContext(ctx)
2655	req.ApplyOptions(opts...)
2656	return out, req.Send()
2657}
2658
2659const opStartJob = "StartJob"
2660
2661// StartJobRequest generates a "aws/request.Request" representing the
2662// client's request for the StartJob operation. The "output" return
2663// value will be populated with the request's response once the request completes
2664// successfully.
2665//
2666// Use "Send" method on the returned Request to send the API call to the service.
2667// the "output" return value is not valid until after Send returns without error.
2668//
2669// See StartJob for more information on using the StartJob
2670// API call, and error handling.
2671//
2672// This method is useful when you want to inject custom logic or configuration
2673// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2674//
2675//
2676//    // Example sending a request using the StartJobRequest method.
2677//    req, resp := client.StartJobRequest(params)
2678//
2679//    err := req.Send()
2680//    if err == nil { // resp is now filled
2681//        fmt.Println(resp)
2682//    }
2683//
2684// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/StartJob
2685func (c *Amplify) StartJobRequest(input *StartJobInput) (req *request.Request, output *StartJobOutput) {
2686	op := &request.Operation{
2687		Name:       opStartJob,
2688		HTTPMethod: "POST",
2689		HTTPPath:   "/apps/{appId}/branches/{branchName}/jobs",
2690	}
2691
2692	if input == nil {
2693		input = &StartJobInput{}
2694	}
2695
2696	output = &StartJobOutput{}
2697	req = c.newRequest(op, input, output)
2698	return
2699}
2700
2701// StartJob API operation for AWS Amplify.
2702//
2703// Starts a new job for a branch, part of an Amplify App.
2704//
2705// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2706// with awserr.Error's Code and Message methods to get detailed information about
2707// the error.
2708//
2709// See the AWS API reference guide for AWS Amplify's
2710// API operation StartJob for usage and error information.
2711//
2712// Returned Error Codes:
2713//   * ErrCodeBadRequestException "BadRequestException"
2714//   Exception thrown when a request contains unexpected data.
2715//
2716//   * ErrCodeUnauthorizedException "UnauthorizedException"
2717//   Exception thrown when an operation fails due to a lack of access.
2718//
2719//   * ErrCodeInternalFailureException "InternalFailureException"
2720//   Exception thrown when the service fails to perform an operation due to an
2721//   internal issue.
2722//
2723//   * ErrCodeNotFoundException "NotFoundException"
2724//   Exception thrown when an entity has not been found during an operation.
2725//
2726//   * ErrCodeLimitExceededException "LimitExceededException"
2727//   Exception thrown when a resource could not be created because of service
2728//   limits.
2729//
2730// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/StartJob
2731func (c *Amplify) StartJob(input *StartJobInput) (*StartJobOutput, error) {
2732	req, out := c.StartJobRequest(input)
2733	return out, req.Send()
2734}
2735
2736// StartJobWithContext is the same as StartJob with the addition of
2737// the ability to pass a context and additional request options.
2738//
2739// See StartJob for details on how to use this API operation.
2740//
2741// The context must be non-nil and will be used for request cancellation. If
2742// the context is nil a panic will occur. In the future the SDK may create
2743// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2744// for more information on using Contexts.
2745func (c *Amplify) StartJobWithContext(ctx aws.Context, input *StartJobInput, opts ...request.Option) (*StartJobOutput, error) {
2746	req, out := c.StartJobRequest(input)
2747	req.SetContext(ctx)
2748	req.ApplyOptions(opts...)
2749	return out, req.Send()
2750}
2751
2752const opStopJob = "StopJob"
2753
2754// StopJobRequest generates a "aws/request.Request" representing the
2755// client's request for the StopJob operation. The "output" return
2756// value will be populated with the request's response once the request completes
2757// successfully.
2758//
2759// Use "Send" method on the returned Request to send the API call to the service.
2760// the "output" return value is not valid until after Send returns without error.
2761//
2762// See StopJob for more information on using the StopJob
2763// API call, and error handling.
2764//
2765// This method is useful when you want to inject custom logic or configuration
2766// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2767//
2768//
2769//    // Example sending a request using the StopJobRequest method.
2770//    req, resp := client.StopJobRequest(params)
2771//
2772//    err := req.Send()
2773//    if err == nil { // resp is now filled
2774//        fmt.Println(resp)
2775//    }
2776//
2777// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/StopJob
2778func (c *Amplify) StopJobRequest(input *StopJobInput) (req *request.Request, output *StopJobOutput) {
2779	op := &request.Operation{
2780		Name:       opStopJob,
2781		HTTPMethod: "DELETE",
2782		HTTPPath:   "/apps/{appId}/branches/{branchName}/jobs/{jobId}/stop",
2783	}
2784
2785	if input == nil {
2786		input = &StopJobInput{}
2787	}
2788
2789	output = &StopJobOutput{}
2790	req = c.newRequest(op, input, output)
2791	return
2792}
2793
2794// StopJob API operation for AWS Amplify.
2795//
2796// Stop a job that is in progress, for an Amplify branch, part of Amplify App.
2797//
2798// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2799// with awserr.Error's Code and Message methods to get detailed information about
2800// the error.
2801//
2802// See the AWS API reference guide for AWS Amplify's
2803// API operation StopJob for usage and error information.
2804//
2805// Returned Error Codes:
2806//   * ErrCodeBadRequestException "BadRequestException"
2807//   Exception thrown when a request contains unexpected data.
2808//
2809//   * ErrCodeUnauthorizedException "UnauthorizedException"
2810//   Exception thrown when an operation fails due to a lack of access.
2811//
2812//   * ErrCodeInternalFailureException "InternalFailureException"
2813//   Exception thrown when the service fails to perform an operation due to an
2814//   internal issue.
2815//
2816//   * ErrCodeNotFoundException "NotFoundException"
2817//   Exception thrown when an entity has not been found during an operation.
2818//
2819//   * ErrCodeLimitExceededException "LimitExceededException"
2820//   Exception thrown when a resource could not be created because of service
2821//   limits.
2822//
2823// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/StopJob
2824func (c *Amplify) StopJob(input *StopJobInput) (*StopJobOutput, error) {
2825	req, out := c.StopJobRequest(input)
2826	return out, req.Send()
2827}
2828
2829// StopJobWithContext is the same as StopJob with the addition of
2830// the ability to pass a context and additional request options.
2831//
2832// See StopJob for details on how to use this API operation.
2833//
2834// The context must be non-nil and will be used for request cancellation. If
2835// the context is nil a panic will occur. In the future the SDK may create
2836// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2837// for more information on using Contexts.
2838func (c *Amplify) StopJobWithContext(ctx aws.Context, input *StopJobInput, opts ...request.Option) (*StopJobOutput, error) {
2839	req, out := c.StopJobRequest(input)
2840	req.SetContext(ctx)
2841	req.ApplyOptions(opts...)
2842	return out, req.Send()
2843}
2844
2845const opTagResource = "TagResource"
2846
2847// TagResourceRequest generates a "aws/request.Request" representing the
2848// client's request for the TagResource operation. The "output" return
2849// value will be populated with the request's response once the request completes
2850// successfully.
2851//
2852// Use "Send" method on the returned Request to send the API call to the service.
2853// the "output" return value is not valid until after Send returns without error.
2854//
2855// See TagResource for more information on using the TagResource
2856// API call, and error handling.
2857//
2858// This method is useful when you want to inject custom logic or configuration
2859// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2860//
2861//
2862//    // Example sending a request using the TagResourceRequest method.
2863//    req, resp := client.TagResourceRequest(params)
2864//
2865//    err := req.Send()
2866//    if err == nil { // resp is now filled
2867//        fmt.Println(resp)
2868//    }
2869//
2870// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/TagResource
2871func (c *Amplify) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
2872	op := &request.Operation{
2873		Name:       opTagResource,
2874		HTTPMethod: "POST",
2875		HTTPPath:   "/tags/{resourceArn}",
2876	}
2877
2878	if input == nil {
2879		input = &TagResourceInput{}
2880	}
2881
2882	output = &TagResourceOutput{}
2883	req = c.newRequest(op, input, output)
2884	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2885	return
2886}
2887
2888// TagResource API operation for AWS Amplify.
2889//
2890// Tag resource with tag key and value.
2891//
2892// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2893// with awserr.Error's Code and Message methods to get detailed information about
2894// the error.
2895//
2896// See the AWS API reference guide for AWS Amplify's
2897// API operation TagResource for usage and error information.
2898//
2899// Returned Error Codes:
2900//   * ErrCodeInternalFailureException "InternalFailureException"
2901//   Exception thrown when the service fails to perform an operation due to an
2902//   internal issue.
2903//
2904//   * ErrCodeBadRequestException "BadRequestException"
2905//   Exception thrown when a request contains unexpected data.
2906//
2907//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
2908//   Exception thrown when an operation fails due to non-existent resource.
2909//
2910// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/TagResource
2911func (c *Amplify) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
2912	req, out := c.TagResourceRequest(input)
2913	return out, req.Send()
2914}
2915
2916// TagResourceWithContext is the same as TagResource with the addition of
2917// the ability to pass a context and additional request options.
2918//
2919// See TagResource for details on how to use this API operation.
2920//
2921// The context must be non-nil and will be used for request cancellation. If
2922// the context is nil a panic will occur. In the future the SDK may create
2923// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2924// for more information on using Contexts.
2925func (c *Amplify) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
2926	req, out := c.TagResourceRequest(input)
2927	req.SetContext(ctx)
2928	req.ApplyOptions(opts...)
2929	return out, req.Send()
2930}
2931
2932const opUntagResource = "UntagResource"
2933
2934// UntagResourceRequest generates a "aws/request.Request" representing the
2935// client's request for the UntagResource operation. The "output" return
2936// value will be populated with the request's response once the request completes
2937// successfully.
2938//
2939// Use "Send" method on the returned Request to send the API call to the service.
2940// the "output" return value is not valid until after Send returns without error.
2941//
2942// See UntagResource for more information on using the UntagResource
2943// API call, and error handling.
2944//
2945// This method is useful when you want to inject custom logic or configuration
2946// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2947//
2948//
2949//    // Example sending a request using the UntagResourceRequest method.
2950//    req, resp := client.UntagResourceRequest(params)
2951//
2952//    err := req.Send()
2953//    if err == nil { // resp is now filled
2954//        fmt.Println(resp)
2955//    }
2956//
2957// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/UntagResource
2958func (c *Amplify) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
2959	op := &request.Operation{
2960		Name:       opUntagResource,
2961		HTTPMethod: "DELETE",
2962		HTTPPath:   "/tags/{resourceArn}",
2963	}
2964
2965	if input == nil {
2966		input = &UntagResourceInput{}
2967	}
2968
2969	output = &UntagResourceOutput{}
2970	req = c.newRequest(op, input, output)
2971	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
2972	return
2973}
2974
2975// UntagResource API operation for AWS Amplify.
2976//
2977// Untag resource with resourceArn.
2978//
2979// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2980// with awserr.Error's Code and Message methods to get detailed information about
2981// the error.
2982//
2983// See the AWS API reference guide for AWS Amplify's
2984// API operation UntagResource for usage and error information.
2985//
2986// Returned Error Codes:
2987//   * ErrCodeInternalFailureException "InternalFailureException"
2988//   Exception thrown when the service fails to perform an operation due to an
2989//   internal issue.
2990//
2991//   * ErrCodeBadRequestException "BadRequestException"
2992//   Exception thrown when a request contains unexpected data.
2993//
2994//   * ErrCodeResourceNotFoundException "ResourceNotFoundException"
2995//   Exception thrown when an operation fails due to non-existent resource.
2996//
2997// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/UntagResource
2998func (c *Amplify) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
2999	req, out := c.UntagResourceRequest(input)
3000	return out, req.Send()
3001}
3002
3003// UntagResourceWithContext is the same as UntagResource with the addition of
3004// the ability to pass a context and additional request options.
3005//
3006// See UntagResource 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 *Amplify) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
3013	req, out := c.UntagResourceRequest(input)
3014	req.SetContext(ctx)
3015	req.ApplyOptions(opts...)
3016	return out, req.Send()
3017}
3018
3019const opUpdateApp = "UpdateApp"
3020
3021// UpdateAppRequest generates a "aws/request.Request" representing the
3022// client's request for the UpdateApp operation. The "output" return
3023// value will be populated with the request's response once the request completes
3024// successfully.
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 UpdateApp for more information on using the UpdateApp
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 UpdateAppRequest method.
3037//    req, resp := client.UpdateAppRequest(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/amplify-2017-07-25/UpdateApp
3045func (c *Amplify) UpdateAppRequest(input *UpdateAppInput) (req *request.Request, output *UpdateAppOutput) {
3046	op := &request.Operation{
3047		Name:       opUpdateApp,
3048		HTTPMethod: "POST",
3049		HTTPPath:   "/apps/{appId}",
3050	}
3051
3052	if input == nil {
3053		input = &UpdateAppInput{}
3054	}
3055
3056	output = &UpdateAppOutput{}
3057	req = c.newRequest(op, input, output)
3058	return
3059}
3060
3061// UpdateApp API operation for AWS Amplify.
3062//
3063// Updates an existing Amplify App.
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 AWS Amplify's
3070// API operation UpdateApp for usage and error information.
3071//
3072// Returned Error Codes:
3073//   * ErrCodeBadRequestException "BadRequestException"
3074//   Exception thrown when a request contains unexpected data.
3075//
3076//   * ErrCodeNotFoundException "NotFoundException"
3077//   Exception thrown when an entity has not been found during an operation.
3078//
3079//   * ErrCodeUnauthorizedException "UnauthorizedException"
3080//   Exception thrown when an operation fails due to a lack of access.
3081//
3082//   * ErrCodeInternalFailureException "InternalFailureException"
3083//   Exception thrown when the service fails to perform an operation due to an
3084//   internal issue.
3085//
3086// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/UpdateApp
3087func (c *Amplify) UpdateApp(input *UpdateAppInput) (*UpdateAppOutput, error) {
3088	req, out := c.UpdateAppRequest(input)
3089	return out, req.Send()
3090}
3091
3092// UpdateAppWithContext is the same as UpdateApp with the addition of
3093// the ability to pass a context and additional request options.
3094//
3095// See UpdateApp for details on how to use this API operation.
3096//
3097// The context must be non-nil and will be used for request cancellation. If
3098// the context is nil a panic will occur. In the future the SDK may create
3099// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3100// for more information on using Contexts.
3101func (c *Amplify) UpdateAppWithContext(ctx aws.Context, input *UpdateAppInput, opts ...request.Option) (*UpdateAppOutput, error) {
3102	req, out := c.UpdateAppRequest(input)
3103	req.SetContext(ctx)
3104	req.ApplyOptions(opts...)
3105	return out, req.Send()
3106}
3107
3108const opUpdateBranch = "UpdateBranch"
3109
3110// UpdateBranchRequest generates a "aws/request.Request" representing the
3111// client's request for the UpdateBranch operation. The "output" return
3112// value will be populated with the request's response once the request completes
3113// successfully.
3114//
3115// Use "Send" method on the returned Request to send the API call to the service.
3116// the "output" return value is not valid until after Send returns without error.
3117//
3118// See UpdateBranch for more information on using the UpdateBranch
3119// API call, and error handling.
3120//
3121// This method is useful when you want to inject custom logic or configuration
3122// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3123//
3124//
3125//    // Example sending a request using the UpdateBranchRequest method.
3126//    req, resp := client.UpdateBranchRequest(params)
3127//
3128//    err := req.Send()
3129//    if err == nil { // resp is now filled
3130//        fmt.Println(resp)
3131//    }
3132//
3133// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/UpdateBranch
3134func (c *Amplify) UpdateBranchRequest(input *UpdateBranchInput) (req *request.Request, output *UpdateBranchOutput) {
3135	op := &request.Operation{
3136		Name:       opUpdateBranch,
3137		HTTPMethod: "POST",
3138		HTTPPath:   "/apps/{appId}/branches/{branchName}",
3139	}
3140
3141	if input == nil {
3142		input = &UpdateBranchInput{}
3143	}
3144
3145	output = &UpdateBranchOutput{}
3146	req = c.newRequest(op, input, output)
3147	return
3148}
3149
3150// UpdateBranch API operation for AWS Amplify.
3151//
3152// Updates a branch for an Amplify App.
3153//
3154// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3155// with awserr.Error's Code and Message methods to get detailed information about
3156// the error.
3157//
3158// See the AWS API reference guide for AWS Amplify's
3159// API operation UpdateBranch for usage and error information.
3160//
3161// Returned Error Codes:
3162//   * ErrCodeBadRequestException "BadRequestException"
3163//   Exception thrown when a request contains unexpected data.
3164//
3165//   * ErrCodeUnauthorizedException "UnauthorizedException"
3166//   Exception thrown when an operation fails due to a lack of access.
3167//
3168//   * ErrCodeNotFoundException "NotFoundException"
3169//   Exception thrown when an entity has not been found during an operation.
3170//
3171//   * ErrCodeInternalFailureException "InternalFailureException"
3172//   Exception thrown when the service fails to perform an operation due to an
3173//   internal issue.
3174//
3175//   * ErrCodeDependentServiceFailureException "DependentServiceFailureException"
3176//   Exception thrown when an operation fails due to a dependent service throwing
3177//   an exception.
3178//
3179// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/UpdateBranch
3180func (c *Amplify) UpdateBranch(input *UpdateBranchInput) (*UpdateBranchOutput, error) {
3181	req, out := c.UpdateBranchRequest(input)
3182	return out, req.Send()
3183}
3184
3185// UpdateBranchWithContext is the same as UpdateBranch with the addition of
3186// the ability to pass a context and additional request options.
3187//
3188// See UpdateBranch for details on how to use this API operation.
3189//
3190// The context must be non-nil and will be used for request cancellation. If
3191// the context is nil a panic will occur. In the future the SDK may create
3192// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3193// for more information on using Contexts.
3194func (c *Amplify) UpdateBranchWithContext(ctx aws.Context, input *UpdateBranchInput, opts ...request.Option) (*UpdateBranchOutput, error) {
3195	req, out := c.UpdateBranchRequest(input)
3196	req.SetContext(ctx)
3197	req.ApplyOptions(opts...)
3198	return out, req.Send()
3199}
3200
3201const opUpdateDomainAssociation = "UpdateDomainAssociation"
3202
3203// UpdateDomainAssociationRequest generates a "aws/request.Request" representing the
3204// client's request for the UpdateDomainAssociation operation. The "output" return
3205// value will be populated with the request's response once the request completes
3206// successfully.
3207//
3208// Use "Send" method on the returned Request to send the API call to the service.
3209// the "output" return value is not valid until after Send returns without error.
3210//
3211// See UpdateDomainAssociation for more information on using the UpdateDomainAssociation
3212// API call, and error handling.
3213//
3214// This method is useful when you want to inject custom logic or configuration
3215// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3216//
3217//
3218//    // Example sending a request using the UpdateDomainAssociationRequest method.
3219//    req, resp := client.UpdateDomainAssociationRequest(params)
3220//
3221//    err := req.Send()
3222//    if err == nil { // resp is now filled
3223//        fmt.Println(resp)
3224//    }
3225//
3226// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/UpdateDomainAssociation
3227func (c *Amplify) UpdateDomainAssociationRequest(input *UpdateDomainAssociationInput) (req *request.Request, output *UpdateDomainAssociationOutput) {
3228	op := &request.Operation{
3229		Name:       opUpdateDomainAssociation,
3230		HTTPMethod: "POST",
3231		HTTPPath:   "/apps/{appId}/domains/{domainName}",
3232	}
3233
3234	if input == nil {
3235		input = &UpdateDomainAssociationInput{}
3236	}
3237
3238	output = &UpdateDomainAssociationOutput{}
3239	req = c.newRequest(op, input, output)
3240	return
3241}
3242
3243// UpdateDomainAssociation API operation for AWS Amplify.
3244//
3245// Create a new DomainAssociation on an App
3246//
3247// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3248// with awserr.Error's Code and Message methods to get detailed information about
3249// the error.
3250//
3251// See the AWS API reference guide for AWS Amplify's
3252// API operation UpdateDomainAssociation for usage and error information.
3253//
3254// Returned Error Codes:
3255//   * ErrCodeBadRequestException "BadRequestException"
3256//   Exception thrown when a request contains unexpected data.
3257//
3258//   * ErrCodeUnauthorizedException "UnauthorizedException"
3259//   Exception thrown when an operation fails due to a lack of access.
3260//
3261//   * ErrCodeNotFoundException "NotFoundException"
3262//   Exception thrown when an entity has not been found during an operation.
3263//
3264//   * ErrCodeInternalFailureException "InternalFailureException"
3265//   Exception thrown when the service fails to perform an operation due to an
3266//   internal issue.
3267//
3268//   * ErrCodeDependentServiceFailureException "DependentServiceFailureException"
3269//   Exception thrown when an operation fails due to a dependent service throwing
3270//   an exception.
3271//
3272// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/UpdateDomainAssociation
3273func (c *Amplify) UpdateDomainAssociation(input *UpdateDomainAssociationInput) (*UpdateDomainAssociationOutput, error) {
3274	req, out := c.UpdateDomainAssociationRequest(input)
3275	return out, req.Send()
3276}
3277
3278// UpdateDomainAssociationWithContext is the same as UpdateDomainAssociation with the addition of
3279// the ability to pass a context and additional request options.
3280//
3281// See UpdateDomainAssociation for details on how to use this API operation.
3282//
3283// The context must be non-nil and will be used for request cancellation. If
3284// the context is nil a panic will occur. In the future the SDK may create
3285// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3286// for more information on using Contexts.
3287func (c *Amplify) UpdateDomainAssociationWithContext(ctx aws.Context, input *UpdateDomainAssociationInput, opts ...request.Option) (*UpdateDomainAssociationOutput, error) {
3288	req, out := c.UpdateDomainAssociationRequest(input)
3289	req.SetContext(ctx)
3290	req.ApplyOptions(opts...)
3291	return out, req.Send()
3292}
3293
3294const opUpdateWebhook = "UpdateWebhook"
3295
3296// UpdateWebhookRequest generates a "aws/request.Request" representing the
3297// client's request for the UpdateWebhook operation. The "output" return
3298// value will be populated with the request's response once the request completes
3299// successfully.
3300//
3301// Use "Send" method on the returned Request to send the API call to the service.
3302// the "output" return value is not valid until after Send returns without error.
3303//
3304// See UpdateWebhook for more information on using the UpdateWebhook
3305// API call, and error handling.
3306//
3307// This method is useful when you want to inject custom logic or configuration
3308// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3309//
3310//
3311//    // Example sending a request using the UpdateWebhookRequest method.
3312//    req, resp := client.UpdateWebhookRequest(params)
3313//
3314//    err := req.Send()
3315//    if err == nil { // resp is now filled
3316//        fmt.Println(resp)
3317//    }
3318//
3319// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/UpdateWebhook
3320func (c *Amplify) UpdateWebhookRequest(input *UpdateWebhookInput) (req *request.Request, output *UpdateWebhookOutput) {
3321	op := &request.Operation{
3322		Name:       opUpdateWebhook,
3323		HTTPMethod: "POST",
3324		HTTPPath:   "/webhooks/{webhookId}",
3325	}
3326
3327	if input == nil {
3328		input = &UpdateWebhookInput{}
3329	}
3330
3331	output = &UpdateWebhookOutput{}
3332	req = c.newRequest(op, input, output)
3333	return
3334}
3335
3336// UpdateWebhook API operation for AWS Amplify.
3337//
3338// Update a webhook.
3339//
3340// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3341// with awserr.Error's Code and Message methods to get detailed information about
3342// the error.
3343//
3344// See the AWS API reference guide for AWS Amplify's
3345// API operation UpdateWebhook for usage and error information.
3346//
3347// Returned Error Codes:
3348//   * ErrCodeBadRequestException "BadRequestException"
3349//   Exception thrown when a request contains unexpected data.
3350//
3351//   * ErrCodeUnauthorizedException "UnauthorizedException"
3352//   Exception thrown when an operation fails due to a lack of access.
3353//
3354//   * ErrCodeNotFoundException "NotFoundException"
3355//   Exception thrown when an entity has not been found during an operation.
3356//
3357//   * ErrCodeInternalFailureException "InternalFailureException"
3358//   Exception thrown when the service fails to perform an operation due to an
3359//   internal issue.
3360//
3361//   * ErrCodeDependentServiceFailureException "DependentServiceFailureException"
3362//   Exception thrown when an operation fails due to a dependent service throwing
3363//   an exception.
3364//
3365// See also, https://docs.aws.amazon.com/goto/WebAPI/amplify-2017-07-25/UpdateWebhook
3366func (c *Amplify) UpdateWebhook(input *UpdateWebhookInput) (*UpdateWebhookOutput, error) {
3367	req, out := c.UpdateWebhookRequest(input)
3368	return out, req.Send()
3369}
3370
3371// UpdateWebhookWithContext is the same as UpdateWebhook with the addition of
3372// the ability to pass a context and additional request options.
3373//
3374// See UpdateWebhook for details on how to use this API operation.
3375//
3376// The context must be non-nil and will be used for request cancellation. If
3377// the context is nil a panic will occur. In the future the SDK may create
3378// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3379// for more information on using Contexts.
3380func (c *Amplify) UpdateWebhookWithContext(ctx aws.Context, input *UpdateWebhookInput, opts ...request.Option) (*UpdateWebhookOutput, error) {
3381	req, out := c.UpdateWebhookRequest(input)
3382	req.SetContext(ctx)
3383	req.ApplyOptions(opts...)
3384	return out, req.Send()
3385}
3386
3387// Amplify App represents different branches of a repository for building, deploying,
3388// and hosting.
3389type App struct {
3390	_ struct{} `type:"structure"`
3391
3392	// ARN for the Amplify App.
3393	//
3394	// AppArn is a required field
3395	AppArn *string `locationName:"appArn" type:"string" required:"true"`
3396
3397	// Unique Id for the Amplify App.
3398	//
3399	// AppId is a required field
3400	AppId *string `locationName:"appId" min:"1" type:"string" required:"true"`
3401
3402	// Automated branch creation config for the Amplify App.
3403	AutoBranchCreationConfig *AutoBranchCreationConfig `locationName:"autoBranchCreationConfig" type:"structure"`
3404
3405	// Automated branch creation glob patterns for the Amplify App.
3406	AutoBranchCreationPatterns []*string `locationName:"autoBranchCreationPatterns" type:"list"`
3407
3408	// Basic Authorization credentials for branches for the Amplify App.
3409	BasicAuthCredentials *string `locationName:"basicAuthCredentials" type:"string"`
3410
3411	// BuildSpec content for Amplify App.
3412	BuildSpec *string `locationName:"buildSpec" min:"1" type:"string"`
3413
3414	// Create date / time for the Amplify App.
3415	//
3416	// CreateTime is a required field
3417	CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"`
3418
3419	// Custom redirect / rewrite rules for the Amplify App.
3420	CustomRules []*CustomRule `locationName:"customRules" type:"list"`
3421
3422	// Default domain for the Amplify App.
3423	//
3424	// DefaultDomain is a required field
3425	DefaultDomain *string `locationName:"defaultDomain" min:"1" type:"string" required:"true"`
3426
3427	// Description for the Amplify App.
3428	//
3429	// Description is a required field
3430	Description *string `locationName:"description" type:"string" required:"true"`
3431
3432	// Enables automated branch creation for the Amplify App.
3433	EnableAutoBranchCreation *bool `locationName:"enableAutoBranchCreation" type:"boolean"`
3434
3435	// Enables Basic Authorization for branches for the Amplify App.
3436	//
3437	// EnableBasicAuth is a required field
3438	EnableBasicAuth *bool `locationName:"enableBasicAuth" type:"boolean" required:"true"`
3439
3440	// Enables auto-building of branches for the Amplify App.
3441	//
3442	// EnableBranchAutoBuild is a required field
3443	EnableBranchAutoBuild *bool `locationName:"enableBranchAutoBuild" type:"boolean" required:"true"`
3444
3445	// Environment Variables for the Amplify App.
3446	//
3447	// EnvironmentVariables is a required field
3448	EnvironmentVariables map[string]*string `locationName:"environmentVariables" type:"map" required:"true"`
3449
3450	// IAM service role ARN for the Amplify App.
3451	IamServiceRoleArn *string `locationName:"iamServiceRoleArn" min:"1" type:"string"`
3452
3453	// Name for the Amplify App.
3454	//
3455	// Name is a required field
3456	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
3457
3458	// Platform for the Amplify App.
3459	//
3460	// Platform is a required field
3461	Platform *string `locationName:"platform" type:"string" required:"true" enum:"Platform"`
3462
3463	// Structure with Production Branch information.
3464	ProductionBranch *ProductionBranch `locationName:"productionBranch" type:"structure"`
3465
3466	// Repository for the Amplify App.
3467	//
3468	// Repository is a required field
3469	Repository *string `locationName:"repository" type:"string" required:"true"`
3470
3471	// Tag for Amplify App.
3472	Tags map[string]*string `locationName:"tags" min:"1" type:"map"`
3473
3474	// Update date / time for the Amplify App.
3475	//
3476	// UpdateTime is a required field
3477	UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" required:"true"`
3478}
3479
3480// String returns the string representation
3481func (s App) String() string {
3482	return awsutil.Prettify(s)
3483}
3484
3485// GoString returns the string representation
3486func (s App) GoString() string {
3487	return s.String()
3488}
3489
3490// SetAppArn sets the AppArn field's value.
3491func (s *App) SetAppArn(v string) *App {
3492	s.AppArn = &v
3493	return s
3494}
3495
3496// SetAppId sets the AppId field's value.
3497func (s *App) SetAppId(v string) *App {
3498	s.AppId = &v
3499	return s
3500}
3501
3502// SetAutoBranchCreationConfig sets the AutoBranchCreationConfig field's value.
3503func (s *App) SetAutoBranchCreationConfig(v *AutoBranchCreationConfig) *App {
3504	s.AutoBranchCreationConfig = v
3505	return s
3506}
3507
3508// SetAutoBranchCreationPatterns sets the AutoBranchCreationPatterns field's value.
3509func (s *App) SetAutoBranchCreationPatterns(v []*string) *App {
3510	s.AutoBranchCreationPatterns = v
3511	return s
3512}
3513
3514// SetBasicAuthCredentials sets the BasicAuthCredentials field's value.
3515func (s *App) SetBasicAuthCredentials(v string) *App {
3516	s.BasicAuthCredentials = &v
3517	return s
3518}
3519
3520// SetBuildSpec sets the BuildSpec field's value.
3521func (s *App) SetBuildSpec(v string) *App {
3522	s.BuildSpec = &v
3523	return s
3524}
3525
3526// SetCreateTime sets the CreateTime field's value.
3527func (s *App) SetCreateTime(v time.Time) *App {
3528	s.CreateTime = &v
3529	return s
3530}
3531
3532// SetCustomRules sets the CustomRules field's value.
3533func (s *App) SetCustomRules(v []*CustomRule) *App {
3534	s.CustomRules = v
3535	return s
3536}
3537
3538// SetDefaultDomain sets the DefaultDomain field's value.
3539func (s *App) SetDefaultDomain(v string) *App {
3540	s.DefaultDomain = &v
3541	return s
3542}
3543
3544// SetDescription sets the Description field's value.
3545func (s *App) SetDescription(v string) *App {
3546	s.Description = &v
3547	return s
3548}
3549
3550// SetEnableAutoBranchCreation sets the EnableAutoBranchCreation field's value.
3551func (s *App) SetEnableAutoBranchCreation(v bool) *App {
3552	s.EnableAutoBranchCreation = &v
3553	return s
3554}
3555
3556// SetEnableBasicAuth sets the EnableBasicAuth field's value.
3557func (s *App) SetEnableBasicAuth(v bool) *App {
3558	s.EnableBasicAuth = &v
3559	return s
3560}
3561
3562// SetEnableBranchAutoBuild sets the EnableBranchAutoBuild field's value.
3563func (s *App) SetEnableBranchAutoBuild(v bool) *App {
3564	s.EnableBranchAutoBuild = &v
3565	return s
3566}
3567
3568// SetEnvironmentVariables sets the EnvironmentVariables field's value.
3569func (s *App) SetEnvironmentVariables(v map[string]*string) *App {
3570	s.EnvironmentVariables = v
3571	return s
3572}
3573
3574// SetIamServiceRoleArn sets the IamServiceRoleArn field's value.
3575func (s *App) SetIamServiceRoleArn(v string) *App {
3576	s.IamServiceRoleArn = &v
3577	return s
3578}
3579
3580// SetName sets the Name field's value.
3581func (s *App) SetName(v string) *App {
3582	s.Name = &v
3583	return s
3584}
3585
3586// SetPlatform sets the Platform field's value.
3587func (s *App) SetPlatform(v string) *App {
3588	s.Platform = &v
3589	return s
3590}
3591
3592// SetProductionBranch sets the ProductionBranch field's value.
3593func (s *App) SetProductionBranch(v *ProductionBranch) *App {
3594	s.ProductionBranch = v
3595	return s
3596}
3597
3598// SetRepository sets the Repository field's value.
3599func (s *App) SetRepository(v string) *App {
3600	s.Repository = &v
3601	return s
3602}
3603
3604// SetTags sets the Tags field's value.
3605func (s *App) SetTags(v map[string]*string) *App {
3606	s.Tags = v
3607	return s
3608}
3609
3610// SetUpdateTime sets the UpdateTime field's value.
3611func (s *App) SetUpdateTime(v time.Time) *App {
3612	s.UpdateTime = &v
3613	return s
3614}
3615
3616// Structure for artifact.
3617type Artifact struct {
3618	_ struct{} `type:"structure"`
3619
3620	// File name for the artifact.
3621	//
3622	// ArtifactFileName is a required field
3623	ArtifactFileName *string `locationName:"artifactFileName" type:"string" required:"true"`
3624
3625	// Unique Id for a artifact.
3626	//
3627	// ArtifactId is a required field
3628	ArtifactId *string `locationName:"artifactId" type:"string" required:"true"`
3629}
3630
3631// String returns the string representation
3632func (s Artifact) String() string {
3633	return awsutil.Prettify(s)
3634}
3635
3636// GoString returns the string representation
3637func (s Artifact) GoString() string {
3638	return s.String()
3639}
3640
3641// SetArtifactFileName sets the ArtifactFileName field's value.
3642func (s *Artifact) SetArtifactFileName(v string) *Artifact {
3643	s.ArtifactFileName = &v
3644	return s
3645}
3646
3647// SetArtifactId sets the ArtifactId field's value.
3648func (s *Artifact) SetArtifactId(v string) *Artifact {
3649	s.ArtifactId = &v
3650	return s
3651}
3652
3653// Structure with auto branch creation config.
3654type AutoBranchCreationConfig struct {
3655	_ struct{} `type:"structure"`
3656
3657	// Basic Authorization credentials for the auto created branch.
3658	BasicAuthCredentials *string `locationName:"basicAuthCredentials" type:"string"`
3659
3660	// BuildSpec for the auto created branch.
3661	BuildSpec *string `locationName:"buildSpec" min:"1" type:"string"`
3662
3663	// Enables auto building for the auto created branch.
3664	EnableAutoBuild *bool `locationName:"enableAutoBuild" type:"boolean"`
3665
3666	// Enables Basic Auth for the auto created branch.
3667	EnableBasicAuth *bool `locationName:"enableBasicAuth" type:"boolean"`
3668
3669	// Enables Pull Request Preview for auto created branch.
3670	EnablePullRequestPreview *bool `locationName:"enablePullRequestPreview" type:"boolean"`
3671
3672	// Environment Variables for the auto created branch.
3673	EnvironmentVariables map[string]*string `locationName:"environmentVariables" type:"map"`
3674
3675	// Framework for the auto created branch.
3676	Framework *string `locationName:"framework" type:"string"`
3677
3678	// The Amplify Environment name for the pull request.
3679	PullRequestEnvironmentName *string `locationName:"pullRequestEnvironmentName" type:"string"`
3680
3681	// Stage for the auto created branch.
3682	Stage *string `locationName:"stage" type:"string" enum:"Stage"`
3683}
3684
3685// String returns the string representation
3686func (s AutoBranchCreationConfig) String() string {
3687	return awsutil.Prettify(s)
3688}
3689
3690// GoString returns the string representation
3691func (s AutoBranchCreationConfig) GoString() string {
3692	return s.String()
3693}
3694
3695// Validate inspects the fields of the type to determine if they are valid.
3696func (s *AutoBranchCreationConfig) Validate() error {
3697	invalidParams := request.ErrInvalidParams{Context: "AutoBranchCreationConfig"}
3698	if s.BuildSpec != nil && len(*s.BuildSpec) < 1 {
3699		invalidParams.Add(request.NewErrParamMinLen("BuildSpec", 1))
3700	}
3701
3702	if invalidParams.Len() > 0 {
3703		return invalidParams
3704	}
3705	return nil
3706}
3707
3708// SetBasicAuthCredentials sets the BasicAuthCredentials field's value.
3709func (s *AutoBranchCreationConfig) SetBasicAuthCredentials(v string) *AutoBranchCreationConfig {
3710	s.BasicAuthCredentials = &v
3711	return s
3712}
3713
3714// SetBuildSpec sets the BuildSpec field's value.
3715func (s *AutoBranchCreationConfig) SetBuildSpec(v string) *AutoBranchCreationConfig {
3716	s.BuildSpec = &v
3717	return s
3718}
3719
3720// SetEnableAutoBuild sets the EnableAutoBuild field's value.
3721func (s *AutoBranchCreationConfig) SetEnableAutoBuild(v bool) *AutoBranchCreationConfig {
3722	s.EnableAutoBuild = &v
3723	return s
3724}
3725
3726// SetEnableBasicAuth sets the EnableBasicAuth field's value.
3727func (s *AutoBranchCreationConfig) SetEnableBasicAuth(v bool) *AutoBranchCreationConfig {
3728	s.EnableBasicAuth = &v
3729	return s
3730}
3731
3732// SetEnablePullRequestPreview sets the EnablePullRequestPreview field's value.
3733func (s *AutoBranchCreationConfig) SetEnablePullRequestPreview(v bool) *AutoBranchCreationConfig {
3734	s.EnablePullRequestPreview = &v
3735	return s
3736}
3737
3738// SetEnvironmentVariables sets the EnvironmentVariables field's value.
3739func (s *AutoBranchCreationConfig) SetEnvironmentVariables(v map[string]*string) *AutoBranchCreationConfig {
3740	s.EnvironmentVariables = v
3741	return s
3742}
3743
3744// SetFramework sets the Framework field's value.
3745func (s *AutoBranchCreationConfig) SetFramework(v string) *AutoBranchCreationConfig {
3746	s.Framework = &v
3747	return s
3748}
3749
3750// SetPullRequestEnvironmentName sets the PullRequestEnvironmentName field's value.
3751func (s *AutoBranchCreationConfig) SetPullRequestEnvironmentName(v string) *AutoBranchCreationConfig {
3752	s.PullRequestEnvironmentName = &v
3753	return s
3754}
3755
3756// SetStage sets the Stage field's value.
3757func (s *AutoBranchCreationConfig) SetStage(v string) *AutoBranchCreationConfig {
3758	s.Stage = &v
3759	return s
3760}
3761
3762// Backend environment for an Amplify App.
3763type BackendEnvironment struct {
3764	_ struct{} `type:"structure"`
3765
3766	// Arn for a backend environment, part of an Amplify App.
3767	//
3768	// BackendEnvironmentArn is a required field
3769	BackendEnvironmentArn *string `locationName:"backendEnvironmentArn" min:"1" type:"string" required:"true"`
3770
3771	// Creation date and time for a backend environment, part of an Amplify App.
3772	//
3773	// CreateTime is a required field
3774	CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"`
3775
3776	// Name of deployment artifacts.
3777	DeploymentArtifacts *string `locationName:"deploymentArtifacts" min:"1" type:"string"`
3778
3779	// Name for a backend environment, part of an Amplify App.
3780	//
3781	// EnvironmentName is a required field
3782	EnvironmentName *string `locationName:"environmentName" min:"1" type:"string" required:"true"`
3783
3784	// CloudFormation stack name of backend environment.
3785	StackName *string `locationName:"stackName" min:"1" type:"string"`
3786
3787	// Last updated date and time for a backend environment, part of an Amplify
3788	// App.
3789	//
3790	// UpdateTime is a required field
3791	UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" required:"true"`
3792}
3793
3794// String returns the string representation
3795func (s BackendEnvironment) String() string {
3796	return awsutil.Prettify(s)
3797}
3798
3799// GoString returns the string representation
3800func (s BackendEnvironment) GoString() string {
3801	return s.String()
3802}
3803
3804// SetBackendEnvironmentArn sets the BackendEnvironmentArn field's value.
3805func (s *BackendEnvironment) SetBackendEnvironmentArn(v string) *BackendEnvironment {
3806	s.BackendEnvironmentArn = &v
3807	return s
3808}
3809
3810// SetCreateTime sets the CreateTime field's value.
3811func (s *BackendEnvironment) SetCreateTime(v time.Time) *BackendEnvironment {
3812	s.CreateTime = &v
3813	return s
3814}
3815
3816// SetDeploymentArtifacts sets the DeploymentArtifacts field's value.
3817func (s *BackendEnvironment) SetDeploymentArtifacts(v string) *BackendEnvironment {
3818	s.DeploymentArtifacts = &v
3819	return s
3820}
3821
3822// SetEnvironmentName sets the EnvironmentName field's value.
3823func (s *BackendEnvironment) SetEnvironmentName(v string) *BackendEnvironment {
3824	s.EnvironmentName = &v
3825	return s
3826}
3827
3828// SetStackName sets the StackName field's value.
3829func (s *BackendEnvironment) SetStackName(v string) *BackendEnvironment {
3830	s.StackName = &v
3831	return s
3832}
3833
3834// SetUpdateTime sets the UpdateTime field's value.
3835func (s *BackendEnvironment) SetUpdateTime(v time.Time) *BackendEnvironment {
3836	s.UpdateTime = &v
3837	return s
3838}
3839
3840// Branch for an Amplify App, which maps to a 3rd party repository branch.
3841type Branch struct {
3842	_ struct{} `type:"structure"`
3843
3844	// Id of the active job for a branch, part of an Amplify App.
3845	//
3846	// ActiveJobId is a required field
3847	ActiveJobId *string `locationName:"activeJobId" type:"string" required:"true"`
3848
3849	// List of custom resources that are linked to this branch.
3850	AssociatedResources []*string `locationName:"associatedResources" type:"list"`
3851
3852	// ARN for a Backend Environment, part of an Amplify App.
3853	BackendEnvironmentArn *string `locationName:"backendEnvironmentArn" min:"1" type:"string"`
3854
3855	// Basic Authorization credentials for a branch, part of an Amplify App.
3856	BasicAuthCredentials *string `locationName:"basicAuthCredentials" type:"string"`
3857
3858	// ARN for a branch, part of an Amplify App.
3859	//
3860	// BranchArn is a required field
3861	BranchArn *string `locationName:"branchArn" type:"string" required:"true"`
3862
3863	// Name for a branch, part of an Amplify App.
3864	//
3865	// BranchName is a required field
3866	BranchName *string `locationName:"branchName" min:"1" type:"string" required:"true"`
3867
3868	// BuildSpec content for branch for Amplify App.
3869	BuildSpec *string `locationName:"buildSpec" min:"1" type:"string"`
3870
3871	// Creation date and time for a branch, part of an Amplify App.
3872	//
3873	// CreateTime is a required field
3874	CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"`
3875
3876	// Custom domains for a branch, part of an Amplify App.
3877	//
3878	// CustomDomains is a required field
3879	CustomDomains []*string `locationName:"customDomains" type:"list" required:"true"`
3880
3881	// Description for a branch, part of an Amplify App.
3882	//
3883	// Description is a required field
3884	Description *string `locationName:"description" type:"string" required:"true"`
3885
3886	// The destination branch if the branch is a pull request branch.
3887	DestinationBranch *string `locationName:"destinationBranch" min:"1" type:"string"`
3888
3889	// Display name for a branch, will use as the default domain prefix.
3890	//
3891	// DisplayName is a required field
3892	DisplayName *string `locationName:"displayName" type:"string" required:"true"`
3893
3894	// Enables auto-building on push for a branch, part of an Amplify App.
3895	//
3896	// EnableAutoBuild is a required field
3897	EnableAutoBuild *bool `locationName:"enableAutoBuild" type:"boolean" required:"true"`
3898
3899	// Enables Basic Authorization for a branch, part of an Amplify App.
3900	//
3901	// EnableBasicAuth is a required field
3902	EnableBasicAuth *bool `locationName:"enableBasicAuth" type:"boolean" required:"true"`
3903
3904	// Enables notifications for a branch, part of an Amplify App.
3905	//
3906	// EnableNotification is a required field
3907	EnableNotification *bool `locationName:"enableNotification" type:"boolean" required:"true"`
3908
3909	// Enables Pull Request Preview for this branch.
3910	//
3911	// EnablePullRequestPreview is a required field
3912	EnablePullRequestPreview *bool `locationName:"enablePullRequestPreview" type:"boolean" required:"true"`
3913
3914	// Environment Variables specific to a branch, part of an Amplify App.
3915	//
3916	// EnvironmentVariables is a required field
3917	EnvironmentVariables map[string]*string `locationName:"environmentVariables" type:"map" required:"true"`
3918
3919	// Framework for a branch, part of an Amplify App.
3920	//
3921	// Framework is a required field
3922	Framework *string `locationName:"framework" type:"string" required:"true"`
3923
3924	// The Amplify Environment name for the pull request.
3925	PullRequestEnvironmentName *string `locationName:"pullRequestEnvironmentName" type:"string"`
3926
3927	// The source branch if the branch is a pull request branch.
3928	SourceBranch *string `locationName:"sourceBranch" min:"1" type:"string"`
3929
3930	// Stage for a branch, part of an Amplify App.
3931	//
3932	// Stage is a required field
3933	Stage *string `locationName:"stage" type:"string" required:"true" enum:"Stage"`
3934
3935	// Tag for branch for Amplify App.
3936	Tags map[string]*string `locationName:"tags" min:"1" type:"map"`
3937
3938	// Thumbnail URL for the branch.
3939	ThumbnailUrl *string `locationName:"thumbnailUrl" min:"1" type:"string"`
3940
3941	// Total number of Jobs part of an Amplify App.
3942	//
3943	// TotalNumberOfJobs is a required field
3944	TotalNumberOfJobs *string `locationName:"totalNumberOfJobs" type:"string" required:"true"`
3945
3946	// The content TTL for the website in seconds.
3947	//
3948	// Ttl is a required field
3949	Ttl *string `locationName:"ttl" type:"string" required:"true"`
3950
3951	// Last updated date and time for a branch, part of an Amplify App.
3952	//
3953	// UpdateTime is a required field
3954	UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" required:"true"`
3955}
3956
3957// String returns the string representation
3958func (s Branch) String() string {
3959	return awsutil.Prettify(s)
3960}
3961
3962// GoString returns the string representation
3963func (s Branch) GoString() string {
3964	return s.String()
3965}
3966
3967// SetActiveJobId sets the ActiveJobId field's value.
3968func (s *Branch) SetActiveJobId(v string) *Branch {
3969	s.ActiveJobId = &v
3970	return s
3971}
3972
3973// SetAssociatedResources sets the AssociatedResources field's value.
3974func (s *Branch) SetAssociatedResources(v []*string) *Branch {
3975	s.AssociatedResources = v
3976	return s
3977}
3978
3979// SetBackendEnvironmentArn sets the BackendEnvironmentArn field's value.
3980func (s *Branch) SetBackendEnvironmentArn(v string) *Branch {
3981	s.BackendEnvironmentArn = &v
3982	return s
3983}
3984
3985// SetBasicAuthCredentials sets the BasicAuthCredentials field's value.
3986func (s *Branch) SetBasicAuthCredentials(v string) *Branch {
3987	s.BasicAuthCredentials = &v
3988	return s
3989}
3990
3991// SetBranchArn sets the BranchArn field's value.
3992func (s *Branch) SetBranchArn(v string) *Branch {
3993	s.BranchArn = &v
3994	return s
3995}
3996
3997// SetBranchName sets the BranchName field's value.
3998func (s *Branch) SetBranchName(v string) *Branch {
3999	s.BranchName = &v
4000	return s
4001}
4002
4003// SetBuildSpec sets the BuildSpec field's value.
4004func (s *Branch) SetBuildSpec(v string) *Branch {
4005	s.BuildSpec = &v
4006	return s
4007}
4008
4009// SetCreateTime sets the CreateTime field's value.
4010func (s *Branch) SetCreateTime(v time.Time) *Branch {
4011	s.CreateTime = &v
4012	return s
4013}
4014
4015// SetCustomDomains sets the CustomDomains field's value.
4016func (s *Branch) SetCustomDomains(v []*string) *Branch {
4017	s.CustomDomains = v
4018	return s
4019}
4020
4021// SetDescription sets the Description field's value.
4022func (s *Branch) SetDescription(v string) *Branch {
4023	s.Description = &v
4024	return s
4025}
4026
4027// SetDestinationBranch sets the DestinationBranch field's value.
4028func (s *Branch) SetDestinationBranch(v string) *Branch {
4029	s.DestinationBranch = &v
4030	return s
4031}
4032
4033// SetDisplayName sets the DisplayName field's value.
4034func (s *Branch) SetDisplayName(v string) *Branch {
4035	s.DisplayName = &v
4036	return s
4037}
4038
4039// SetEnableAutoBuild sets the EnableAutoBuild field's value.
4040func (s *Branch) SetEnableAutoBuild(v bool) *Branch {
4041	s.EnableAutoBuild = &v
4042	return s
4043}
4044
4045// SetEnableBasicAuth sets the EnableBasicAuth field's value.
4046func (s *Branch) SetEnableBasicAuth(v bool) *Branch {
4047	s.EnableBasicAuth = &v
4048	return s
4049}
4050
4051// SetEnableNotification sets the EnableNotification field's value.
4052func (s *Branch) SetEnableNotification(v bool) *Branch {
4053	s.EnableNotification = &v
4054	return s
4055}
4056
4057// SetEnablePullRequestPreview sets the EnablePullRequestPreview field's value.
4058func (s *Branch) SetEnablePullRequestPreview(v bool) *Branch {
4059	s.EnablePullRequestPreview = &v
4060	return s
4061}
4062
4063// SetEnvironmentVariables sets the EnvironmentVariables field's value.
4064func (s *Branch) SetEnvironmentVariables(v map[string]*string) *Branch {
4065	s.EnvironmentVariables = v
4066	return s
4067}
4068
4069// SetFramework sets the Framework field's value.
4070func (s *Branch) SetFramework(v string) *Branch {
4071	s.Framework = &v
4072	return s
4073}
4074
4075// SetPullRequestEnvironmentName sets the PullRequestEnvironmentName field's value.
4076func (s *Branch) SetPullRequestEnvironmentName(v string) *Branch {
4077	s.PullRequestEnvironmentName = &v
4078	return s
4079}
4080
4081// SetSourceBranch sets the SourceBranch field's value.
4082func (s *Branch) SetSourceBranch(v string) *Branch {
4083	s.SourceBranch = &v
4084	return s
4085}
4086
4087// SetStage sets the Stage field's value.
4088func (s *Branch) SetStage(v string) *Branch {
4089	s.Stage = &v
4090	return s
4091}
4092
4093// SetTags sets the Tags field's value.
4094func (s *Branch) SetTags(v map[string]*string) *Branch {
4095	s.Tags = v
4096	return s
4097}
4098
4099// SetThumbnailUrl sets the ThumbnailUrl field's value.
4100func (s *Branch) SetThumbnailUrl(v string) *Branch {
4101	s.ThumbnailUrl = &v
4102	return s
4103}
4104
4105// SetTotalNumberOfJobs sets the TotalNumberOfJobs field's value.
4106func (s *Branch) SetTotalNumberOfJobs(v string) *Branch {
4107	s.TotalNumberOfJobs = &v
4108	return s
4109}
4110
4111// SetTtl sets the Ttl field's value.
4112func (s *Branch) SetTtl(v string) *Branch {
4113	s.Ttl = &v
4114	return s
4115}
4116
4117// SetUpdateTime sets the UpdateTime field's value.
4118func (s *Branch) SetUpdateTime(v time.Time) *Branch {
4119	s.UpdateTime = &v
4120	return s
4121}
4122
4123// Request structure used to create Apps in Amplify.
4124type CreateAppInput struct {
4125	_ struct{} `type:"structure"`
4126
4127	// Personal Access token for 3rd party source control system for an Amplify
4128	// App, used to create webhook and read-only deploy key. Token is not stored.
4129	AccessToken *string `locationName:"accessToken" min:"1" type:"string"`
4130
4131	// Automated branch creation config for the Amplify App.
4132	AutoBranchCreationConfig *AutoBranchCreationConfig `locationName:"autoBranchCreationConfig" type:"structure"`
4133
4134	// Automated branch creation glob patterns for the Amplify App.
4135	AutoBranchCreationPatterns []*string `locationName:"autoBranchCreationPatterns" type:"list"`
4136
4137	// Credentials for Basic Authorization for an Amplify App.
4138	BasicAuthCredentials *string `locationName:"basicAuthCredentials" type:"string"`
4139
4140	// BuildSpec for an Amplify App
4141	BuildSpec *string `locationName:"buildSpec" min:"1" type:"string"`
4142
4143	// Custom rewrite / redirect rules for an Amplify App.
4144	CustomRules []*CustomRule `locationName:"customRules" type:"list"`
4145
4146	// Description for an Amplify App
4147	Description *string `locationName:"description" type:"string"`
4148
4149	// Enables automated branch creation for the Amplify App.
4150	EnableAutoBranchCreation *bool `locationName:"enableAutoBranchCreation" type:"boolean"`
4151
4152	// Enable Basic Authorization for an Amplify App, this will apply to all branches
4153	// part of this App.
4154	EnableBasicAuth *bool `locationName:"enableBasicAuth" type:"boolean"`
4155
4156	// Enable the auto building of branches for an Amplify App.
4157	EnableBranchAutoBuild *bool `locationName:"enableBranchAutoBuild" type:"boolean"`
4158
4159	// Environment variables map for an Amplify App.
4160	EnvironmentVariables map[string]*string `locationName:"environmentVariables" type:"map"`
4161
4162	// AWS IAM service role for an Amplify App
4163	IamServiceRoleArn *string `locationName:"iamServiceRoleArn" min:"1" type:"string"`
4164
4165	// Name for the Amplify App
4166	//
4167	// Name is a required field
4168	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
4169
4170	// OAuth token for 3rd party source control system for an Amplify App, used
4171	// to create webhook and read-only deploy key. OAuth token is not stored.
4172	OauthToken *string `locationName:"oauthToken" type:"string"`
4173
4174	// Platform / framework for an Amplify App
4175	Platform *string `locationName:"platform" type:"string" enum:"Platform"`
4176
4177	// Repository for an Amplify App
4178	Repository *string `locationName:"repository" type:"string"`
4179
4180	// Tag for an Amplify App
4181	Tags map[string]*string `locationName:"tags" min:"1" type:"map"`
4182}
4183
4184// String returns the string representation
4185func (s CreateAppInput) String() string {
4186	return awsutil.Prettify(s)
4187}
4188
4189// GoString returns the string representation
4190func (s CreateAppInput) GoString() string {
4191	return s.String()
4192}
4193
4194// Validate inspects the fields of the type to determine if they are valid.
4195func (s *CreateAppInput) Validate() error {
4196	invalidParams := request.ErrInvalidParams{Context: "CreateAppInput"}
4197	if s.AccessToken != nil && len(*s.AccessToken) < 1 {
4198		invalidParams.Add(request.NewErrParamMinLen("AccessToken", 1))
4199	}
4200	if s.BuildSpec != nil && len(*s.BuildSpec) < 1 {
4201		invalidParams.Add(request.NewErrParamMinLen("BuildSpec", 1))
4202	}
4203	if s.IamServiceRoleArn != nil && len(*s.IamServiceRoleArn) < 1 {
4204		invalidParams.Add(request.NewErrParamMinLen("IamServiceRoleArn", 1))
4205	}
4206	if s.Name == nil {
4207		invalidParams.Add(request.NewErrParamRequired("Name"))
4208	}
4209	if s.Name != nil && len(*s.Name) < 1 {
4210		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
4211	}
4212	if s.Tags != nil && len(s.Tags) < 1 {
4213		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
4214	}
4215	if s.AutoBranchCreationConfig != nil {
4216		if err := s.AutoBranchCreationConfig.Validate(); err != nil {
4217			invalidParams.AddNested("AutoBranchCreationConfig", err.(request.ErrInvalidParams))
4218		}
4219	}
4220	if s.CustomRules != nil {
4221		for i, v := range s.CustomRules {
4222			if v == nil {
4223				continue
4224			}
4225			if err := v.Validate(); err != nil {
4226				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CustomRules", i), err.(request.ErrInvalidParams))
4227			}
4228		}
4229	}
4230
4231	if invalidParams.Len() > 0 {
4232		return invalidParams
4233	}
4234	return nil
4235}
4236
4237// SetAccessToken sets the AccessToken field's value.
4238func (s *CreateAppInput) SetAccessToken(v string) *CreateAppInput {
4239	s.AccessToken = &v
4240	return s
4241}
4242
4243// SetAutoBranchCreationConfig sets the AutoBranchCreationConfig field's value.
4244func (s *CreateAppInput) SetAutoBranchCreationConfig(v *AutoBranchCreationConfig) *CreateAppInput {
4245	s.AutoBranchCreationConfig = v
4246	return s
4247}
4248
4249// SetAutoBranchCreationPatterns sets the AutoBranchCreationPatterns field's value.
4250func (s *CreateAppInput) SetAutoBranchCreationPatterns(v []*string) *CreateAppInput {
4251	s.AutoBranchCreationPatterns = v
4252	return s
4253}
4254
4255// SetBasicAuthCredentials sets the BasicAuthCredentials field's value.
4256func (s *CreateAppInput) SetBasicAuthCredentials(v string) *CreateAppInput {
4257	s.BasicAuthCredentials = &v
4258	return s
4259}
4260
4261// SetBuildSpec sets the BuildSpec field's value.
4262func (s *CreateAppInput) SetBuildSpec(v string) *CreateAppInput {
4263	s.BuildSpec = &v
4264	return s
4265}
4266
4267// SetCustomRules sets the CustomRules field's value.
4268func (s *CreateAppInput) SetCustomRules(v []*CustomRule) *CreateAppInput {
4269	s.CustomRules = v
4270	return s
4271}
4272
4273// SetDescription sets the Description field's value.
4274func (s *CreateAppInput) SetDescription(v string) *CreateAppInput {
4275	s.Description = &v
4276	return s
4277}
4278
4279// SetEnableAutoBranchCreation sets the EnableAutoBranchCreation field's value.
4280func (s *CreateAppInput) SetEnableAutoBranchCreation(v bool) *CreateAppInput {
4281	s.EnableAutoBranchCreation = &v
4282	return s
4283}
4284
4285// SetEnableBasicAuth sets the EnableBasicAuth field's value.
4286func (s *CreateAppInput) SetEnableBasicAuth(v bool) *CreateAppInput {
4287	s.EnableBasicAuth = &v
4288	return s
4289}
4290
4291// SetEnableBranchAutoBuild sets the EnableBranchAutoBuild field's value.
4292func (s *CreateAppInput) SetEnableBranchAutoBuild(v bool) *CreateAppInput {
4293	s.EnableBranchAutoBuild = &v
4294	return s
4295}
4296
4297// SetEnvironmentVariables sets the EnvironmentVariables field's value.
4298func (s *CreateAppInput) SetEnvironmentVariables(v map[string]*string) *CreateAppInput {
4299	s.EnvironmentVariables = v
4300	return s
4301}
4302
4303// SetIamServiceRoleArn sets the IamServiceRoleArn field's value.
4304func (s *CreateAppInput) SetIamServiceRoleArn(v string) *CreateAppInput {
4305	s.IamServiceRoleArn = &v
4306	return s
4307}
4308
4309// SetName sets the Name field's value.
4310func (s *CreateAppInput) SetName(v string) *CreateAppInput {
4311	s.Name = &v
4312	return s
4313}
4314
4315// SetOauthToken sets the OauthToken field's value.
4316func (s *CreateAppInput) SetOauthToken(v string) *CreateAppInput {
4317	s.OauthToken = &v
4318	return s
4319}
4320
4321// SetPlatform sets the Platform field's value.
4322func (s *CreateAppInput) SetPlatform(v string) *CreateAppInput {
4323	s.Platform = &v
4324	return s
4325}
4326
4327// SetRepository sets the Repository field's value.
4328func (s *CreateAppInput) SetRepository(v string) *CreateAppInput {
4329	s.Repository = &v
4330	return s
4331}
4332
4333// SetTags sets the Tags field's value.
4334func (s *CreateAppInput) SetTags(v map[string]*string) *CreateAppInput {
4335	s.Tags = v
4336	return s
4337}
4338
4339type CreateAppOutput struct {
4340	_ struct{} `type:"structure"`
4341
4342	// Amplify App represents different branches of a repository for building, deploying,
4343	// and hosting.
4344	//
4345	// App is a required field
4346	App *App `locationName:"app" type:"structure" required:"true"`
4347}
4348
4349// String returns the string representation
4350func (s CreateAppOutput) String() string {
4351	return awsutil.Prettify(s)
4352}
4353
4354// GoString returns the string representation
4355func (s CreateAppOutput) GoString() string {
4356	return s.String()
4357}
4358
4359// SetApp sets the App field's value.
4360func (s *CreateAppOutput) SetApp(v *App) *CreateAppOutput {
4361	s.App = v
4362	return s
4363}
4364
4365// Request structure for a backend environment create request.
4366type CreateBackendEnvironmentInput struct {
4367	_ struct{} `type:"structure"`
4368
4369	// Unique Id for an Amplify App.
4370	//
4371	// AppId is a required field
4372	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
4373
4374	// Name of deployment artifacts.
4375	DeploymentArtifacts *string `locationName:"deploymentArtifacts" min:"1" type:"string"`
4376
4377	// Name for the backend environment.
4378	//
4379	// EnvironmentName is a required field
4380	EnvironmentName *string `locationName:"environmentName" min:"1" type:"string" required:"true"`
4381
4382	// CloudFormation stack name of backend environment.
4383	StackName *string `locationName:"stackName" min:"1" type:"string"`
4384}
4385
4386// String returns the string representation
4387func (s CreateBackendEnvironmentInput) String() string {
4388	return awsutil.Prettify(s)
4389}
4390
4391// GoString returns the string representation
4392func (s CreateBackendEnvironmentInput) GoString() string {
4393	return s.String()
4394}
4395
4396// Validate inspects the fields of the type to determine if they are valid.
4397func (s *CreateBackendEnvironmentInput) Validate() error {
4398	invalidParams := request.ErrInvalidParams{Context: "CreateBackendEnvironmentInput"}
4399	if s.AppId == nil {
4400		invalidParams.Add(request.NewErrParamRequired("AppId"))
4401	}
4402	if s.AppId != nil && len(*s.AppId) < 1 {
4403		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
4404	}
4405	if s.DeploymentArtifacts != nil && len(*s.DeploymentArtifacts) < 1 {
4406		invalidParams.Add(request.NewErrParamMinLen("DeploymentArtifacts", 1))
4407	}
4408	if s.EnvironmentName == nil {
4409		invalidParams.Add(request.NewErrParamRequired("EnvironmentName"))
4410	}
4411	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 1 {
4412		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 1))
4413	}
4414	if s.StackName != nil && len(*s.StackName) < 1 {
4415		invalidParams.Add(request.NewErrParamMinLen("StackName", 1))
4416	}
4417
4418	if invalidParams.Len() > 0 {
4419		return invalidParams
4420	}
4421	return nil
4422}
4423
4424// SetAppId sets the AppId field's value.
4425func (s *CreateBackendEnvironmentInput) SetAppId(v string) *CreateBackendEnvironmentInput {
4426	s.AppId = &v
4427	return s
4428}
4429
4430// SetDeploymentArtifacts sets the DeploymentArtifacts field's value.
4431func (s *CreateBackendEnvironmentInput) SetDeploymentArtifacts(v string) *CreateBackendEnvironmentInput {
4432	s.DeploymentArtifacts = &v
4433	return s
4434}
4435
4436// SetEnvironmentName sets the EnvironmentName field's value.
4437func (s *CreateBackendEnvironmentInput) SetEnvironmentName(v string) *CreateBackendEnvironmentInput {
4438	s.EnvironmentName = &v
4439	return s
4440}
4441
4442// SetStackName sets the StackName field's value.
4443func (s *CreateBackendEnvironmentInput) SetStackName(v string) *CreateBackendEnvironmentInput {
4444	s.StackName = &v
4445	return s
4446}
4447
4448// Result structure for create backend environment.
4449type CreateBackendEnvironmentOutput struct {
4450	_ struct{} `type:"structure"`
4451
4452	// Backend environment structure for an amplify App.
4453	//
4454	// BackendEnvironment is a required field
4455	BackendEnvironment *BackendEnvironment `locationName:"backendEnvironment" type:"structure" required:"true"`
4456}
4457
4458// String returns the string representation
4459func (s CreateBackendEnvironmentOutput) String() string {
4460	return awsutil.Prettify(s)
4461}
4462
4463// GoString returns the string representation
4464func (s CreateBackendEnvironmentOutput) GoString() string {
4465	return s.String()
4466}
4467
4468// SetBackendEnvironment sets the BackendEnvironment field's value.
4469func (s *CreateBackendEnvironmentOutput) SetBackendEnvironment(v *BackendEnvironment) *CreateBackendEnvironmentOutput {
4470	s.BackendEnvironment = v
4471	return s
4472}
4473
4474// Request structure for a branch create request.
4475type CreateBranchInput struct {
4476	_ struct{} `type:"structure"`
4477
4478	// Unique Id for an Amplify App.
4479	//
4480	// AppId is a required field
4481	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
4482
4483	// ARN for a Backend Environment, part of an Amplify App.
4484	BackendEnvironmentArn *string `locationName:"backendEnvironmentArn" min:"1" type:"string"`
4485
4486	// Basic Authorization credentials for the branch.
4487	BasicAuthCredentials *string `locationName:"basicAuthCredentials" type:"string"`
4488
4489	// Name for the branch.
4490	//
4491	// BranchName is a required field
4492	BranchName *string `locationName:"branchName" min:"1" type:"string" required:"true"`
4493
4494	// BuildSpec for the branch.
4495	BuildSpec *string `locationName:"buildSpec" min:"1" type:"string"`
4496
4497	// Description for the branch.
4498	Description *string `locationName:"description" type:"string"`
4499
4500	// Display name for a branch, will use as the default domain prefix.
4501	DisplayName *string `locationName:"displayName" type:"string"`
4502
4503	// Enables auto building for the branch.
4504	EnableAutoBuild *bool `locationName:"enableAutoBuild" type:"boolean"`
4505
4506	// Enables Basic Auth for the branch.
4507	EnableBasicAuth *bool `locationName:"enableBasicAuth" type:"boolean"`
4508
4509	// Enables notifications for the branch.
4510	EnableNotification *bool `locationName:"enableNotification" type:"boolean"`
4511
4512	// Enables Pull Request Preview for this branch.
4513	EnablePullRequestPreview *bool `locationName:"enablePullRequestPreview" type:"boolean"`
4514
4515	// Environment Variables for the branch.
4516	EnvironmentVariables map[string]*string `locationName:"environmentVariables" type:"map"`
4517
4518	// Framework for the branch.
4519	Framework *string `locationName:"framework" type:"string"`
4520
4521	// The Amplify Environment name for the pull request.
4522	PullRequestEnvironmentName *string `locationName:"pullRequestEnvironmentName" type:"string"`
4523
4524	// Stage for the branch.
4525	Stage *string `locationName:"stage" type:"string" enum:"Stage"`
4526
4527	// Tag for the branch.
4528	Tags map[string]*string `locationName:"tags" min:"1" type:"map"`
4529
4530	// The content TTL for the website in seconds.
4531	Ttl *string `locationName:"ttl" type:"string"`
4532}
4533
4534// String returns the string representation
4535func (s CreateBranchInput) String() string {
4536	return awsutil.Prettify(s)
4537}
4538
4539// GoString returns the string representation
4540func (s CreateBranchInput) GoString() string {
4541	return s.String()
4542}
4543
4544// Validate inspects the fields of the type to determine if they are valid.
4545func (s *CreateBranchInput) Validate() error {
4546	invalidParams := request.ErrInvalidParams{Context: "CreateBranchInput"}
4547	if s.AppId == nil {
4548		invalidParams.Add(request.NewErrParamRequired("AppId"))
4549	}
4550	if s.AppId != nil && len(*s.AppId) < 1 {
4551		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
4552	}
4553	if s.BackendEnvironmentArn != nil && len(*s.BackendEnvironmentArn) < 1 {
4554		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentArn", 1))
4555	}
4556	if s.BranchName == nil {
4557		invalidParams.Add(request.NewErrParamRequired("BranchName"))
4558	}
4559	if s.BranchName != nil && len(*s.BranchName) < 1 {
4560		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
4561	}
4562	if s.BuildSpec != nil && len(*s.BuildSpec) < 1 {
4563		invalidParams.Add(request.NewErrParamMinLen("BuildSpec", 1))
4564	}
4565	if s.Tags != nil && len(s.Tags) < 1 {
4566		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
4567	}
4568
4569	if invalidParams.Len() > 0 {
4570		return invalidParams
4571	}
4572	return nil
4573}
4574
4575// SetAppId sets the AppId field's value.
4576func (s *CreateBranchInput) SetAppId(v string) *CreateBranchInput {
4577	s.AppId = &v
4578	return s
4579}
4580
4581// SetBackendEnvironmentArn sets the BackendEnvironmentArn field's value.
4582func (s *CreateBranchInput) SetBackendEnvironmentArn(v string) *CreateBranchInput {
4583	s.BackendEnvironmentArn = &v
4584	return s
4585}
4586
4587// SetBasicAuthCredentials sets the BasicAuthCredentials field's value.
4588func (s *CreateBranchInput) SetBasicAuthCredentials(v string) *CreateBranchInput {
4589	s.BasicAuthCredentials = &v
4590	return s
4591}
4592
4593// SetBranchName sets the BranchName field's value.
4594func (s *CreateBranchInput) SetBranchName(v string) *CreateBranchInput {
4595	s.BranchName = &v
4596	return s
4597}
4598
4599// SetBuildSpec sets the BuildSpec field's value.
4600func (s *CreateBranchInput) SetBuildSpec(v string) *CreateBranchInput {
4601	s.BuildSpec = &v
4602	return s
4603}
4604
4605// SetDescription sets the Description field's value.
4606func (s *CreateBranchInput) SetDescription(v string) *CreateBranchInput {
4607	s.Description = &v
4608	return s
4609}
4610
4611// SetDisplayName sets the DisplayName field's value.
4612func (s *CreateBranchInput) SetDisplayName(v string) *CreateBranchInput {
4613	s.DisplayName = &v
4614	return s
4615}
4616
4617// SetEnableAutoBuild sets the EnableAutoBuild field's value.
4618func (s *CreateBranchInput) SetEnableAutoBuild(v bool) *CreateBranchInput {
4619	s.EnableAutoBuild = &v
4620	return s
4621}
4622
4623// SetEnableBasicAuth sets the EnableBasicAuth field's value.
4624func (s *CreateBranchInput) SetEnableBasicAuth(v bool) *CreateBranchInput {
4625	s.EnableBasicAuth = &v
4626	return s
4627}
4628
4629// SetEnableNotification sets the EnableNotification field's value.
4630func (s *CreateBranchInput) SetEnableNotification(v bool) *CreateBranchInput {
4631	s.EnableNotification = &v
4632	return s
4633}
4634
4635// SetEnablePullRequestPreview sets the EnablePullRequestPreview field's value.
4636func (s *CreateBranchInput) SetEnablePullRequestPreview(v bool) *CreateBranchInput {
4637	s.EnablePullRequestPreview = &v
4638	return s
4639}
4640
4641// SetEnvironmentVariables sets the EnvironmentVariables field's value.
4642func (s *CreateBranchInput) SetEnvironmentVariables(v map[string]*string) *CreateBranchInput {
4643	s.EnvironmentVariables = v
4644	return s
4645}
4646
4647// SetFramework sets the Framework field's value.
4648func (s *CreateBranchInput) SetFramework(v string) *CreateBranchInput {
4649	s.Framework = &v
4650	return s
4651}
4652
4653// SetPullRequestEnvironmentName sets the PullRequestEnvironmentName field's value.
4654func (s *CreateBranchInput) SetPullRequestEnvironmentName(v string) *CreateBranchInput {
4655	s.PullRequestEnvironmentName = &v
4656	return s
4657}
4658
4659// SetStage sets the Stage field's value.
4660func (s *CreateBranchInput) SetStage(v string) *CreateBranchInput {
4661	s.Stage = &v
4662	return s
4663}
4664
4665// SetTags sets the Tags field's value.
4666func (s *CreateBranchInput) SetTags(v map[string]*string) *CreateBranchInput {
4667	s.Tags = v
4668	return s
4669}
4670
4671// SetTtl sets the Ttl field's value.
4672func (s *CreateBranchInput) SetTtl(v string) *CreateBranchInput {
4673	s.Ttl = &v
4674	return s
4675}
4676
4677// Result structure for create branch request.
4678type CreateBranchOutput struct {
4679	_ struct{} `type:"structure"`
4680
4681	// Branch structure for an Amplify App.
4682	//
4683	// Branch is a required field
4684	Branch *Branch `locationName:"branch" type:"structure" required:"true"`
4685}
4686
4687// String returns the string representation
4688func (s CreateBranchOutput) String() string {
4689	return awsutil.Prettify(s)
4690}
4691
4692// GoString returns the string representation
4693func (s CreateBranchOutput) GoString() string {
4694	return s.String()
4695}
4696
4697// SetBranch sets the Branch field's value.
4698func (s *CreateBranchOutput) SetBranch(v *Branch) *CreateBranchOutput {
4699	s.Branch = v
4700	return s
4701}
4702
4703// Request structure for create a new deployment.
4704type CreateDeploymentInput struct {
4705	_ struct{} `type:"structure"`
4706
4707	// Unique Id for an Amplify App.
4708	//
4709	// AppId is a required field
4710	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
4711
4712	// Name for the branch, for the Job.
4713	//
4714	// BranchName is a required field
4715	BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"`
4716
4717	// Optional file map that contains file name as the key and file content md5
4718	// hash as the value. If this argument is provided, the service will generate
4719	// different upload url per file. Otherwise, the service will only generate
4720	// a single upload url for the zipped files.
4721	FileMap map[string]*string `locationName:"fileMap" type:"map"`
4722}
4723
4724// String returns the string representation
4725func (s CreateDeploymentInput) String() string {
4726	return awsutil.Prettify(s)
4727}
4728
4729// GoString returns the string representation
4730func (s CreateDeploymentInput) GoString() string {
4731	return s.String()
4732}
4733
4734// Validate inspects the fields of the type to determine if they are valid.
4735func (s *CreateDeploymentInput) Validate() error {
4736	invalidParams := request.ErrInvalidParams{Context: "CreateDeploymentInput"}
4737	if s.AppId == nil {
4738		invalidParams.Add(request.NewErrParamRequired("AppId"))
4739	}
4740	if s.AppId != nil && len(*s.AppId) < 1 {
4741		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
4742	}
4743	if s.BranchName == nil {
4744		invalidParams.Add(request.NewErrParamRequired("BranchName"))
4745	}
4746	if s.BranchName != nil && len(*s.BranchName) < 1 {
4747		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
4748	}
4749
4750	if invalidParams.Len() > 0 {
4751		return invalidParams
4752	}
4753	return nil
4754}
4755
4756// SetAppId sets the AppId field's value.
4757func (s *CreateDeploymentInput) SetAppId(v string) *CreateDeploymentInput {
4758	s.AppId = &v
4759	return s
4760}
4761
4762// SetBranchName sets the BranchName field's value.
4763func (s *CreateDeploymentInput) SetBranchName(v string) *CreateDeploymentInput {
4764	s.BranchName = &v
4765	return s
4766}
4767
4768// SetFileMap sets the FileMap field's value.
4769func (s *CreateDeploymentInput) SetFileMap(v map[string]*string) *CreateDeploymentInput {
4770	s.FileMap = v
4771	return s
4772}
4773
4774// Result structure for create a new deployment.
4775type CreateDeploymentOutput struct {
4776	_ struct{} `type:"structure"`
4777
4778	// When the fileMap argument is provided in the request, the fileUploadUrls
4779	// will contain a map of file names to upload url.
4780	//
4781	// FileUploadUrls is a required field
4782	FileUploadUrls map[string]*string `locationName:"fileUploadUrls" type:"map" required:"true"`
4783
4784	// The jobId for this deployment, will supply to start deployment api.
4785	JobId *string `locationName:"jobId" type:"string"`
4786
4787	// When the fileMap argument is NOT provided. This zipUploadUrl will be returned.
4788	//
4789	// ZipUploadUrl is a required field
4790	ZipUploadUrl *string `locationName:"zipUploadUrl" type:"string" required:"true"`
4791}
4792
4793// String returns the string representation
4794func (s CreateDeploymentOutput) String() string {
4795	return awsutil.Prettify(s)
4796}
4797
4798// GoString returns the string representation
4799func (s CreateDeploymentOutput) GoString() string {
4800	return s.String()
4801}
4802
4803// SetFileUploadUrls sets the FileUploadUrls field's value.
4804func (s *CreateDeploymentOutput) SetFileUploadUrls(v map[string]*string) *CreateDeploymentOutput {
4805	s.FileUploadUrls = v
4806	return s
4807}
4808
4809// SetJobId sets the JobId field's value.
4810func (s *CreateDeploymentOutput) SetJobId(v string) *CreateDeploymentOutput {
4811	s.JobId = &v
4812	return s
4813}
4814
4815// SetZipUploadUrl sets the ZipUploadUrl field's value.
4816func (s *CreateDeploymentOutput) SetZipUploadUrl(v string) *CreateDeploymentOutput {
4817	s.ZipUploadUrl = &v
4818	return s
4819}
4820
4821// Request structure for create Domain Association request.
4822type CreateDomainAssociationInput struct {
4823	_ struct{} `type:"structure"`
4824
4825	// Unique Id for an Amplify App.
4826	//
4827	// AppId is a required field
4828	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
4829
4830	// Domain name for the Domain Association.
4831	//
4832	// DomainName is a required field
4833	DomainName *string `locationName:"domainName" type:"string" required:"true"`
4834
4835	// Enables automated creation of Subdomains for branches. (Currently not supported)
4836	EnableAutoSubDomain *bool `locationName:"enableAutoSubDomain" type:"boolean"`
4837
4838	// Setting structure for the Subdomain.
4839	//
4840	// SubDomainSettings is a required field
4841	SubDomainSettings []*SubDomainSetting `locationName:"subDomainSettings" type:"list" required:"true"`
4842}
4843
4844// String returns the string representation
4845func (s CreateDomainAssociationInput) String() string {
4846	return awsutil.Prettify(s)
4847}
4848
4849// GoString returns the string representation
4850func (s CreateDomainAssociationInput) GoString() string {
4851	return s.String()
4852}
4853
4854// Validate inspects the fields of the type to determine if they are valid.
4855func (s *CreateDomainAssociationInput) Validate() error {
4856	invalidParams := request.ErrInvalidParams{Context: "CreateDomainAssociationInput"}
4857	if s.AppId == nil {
4858		invalidParams.Add(request.NewErrParamRequired("AppId"))
4859	}
4860	if s.AppId != nil && len(*s.AppId) < 1 {
4861		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
4862	}
4863	if s.DomainName == nil {
4864		invalidParams.Add(request.NewErrParamRequired("DomainName"))
4865	}
4866	if s.SubDomainSettings == nil {
4867		invalidParams.Add(request.NewErrParamRequired("SubDomainSettings"))
4868	}
4869	if s.SubDomainSettings != nil {
4870		for i, v := range s.SubDomainSettings {
4871			if v == nil {
4872				continue
4873			}
4874			if err := v.Validate(); err != nil {
4875				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SubDomainSettings", i), err.(request.ErrInvalidParams))
4876			}
4877		}
4878	}
4879
4880	if invalidParams.Len() > 0 {
4881		return invalidParams
4882	}
4883	return nil
4884}
4885
4886// SetAppId sets the AppId field's value.
4887func (s *CreateDomainAssociationInput) SetAppId(v string) *CreateDomainAssociationInput {
4888	s.AppId = &v
4889	return s
4890}
4891
4892// SetDomainName sets the DomainName field's value.
4893func (s *CreateDomainAssociationInput) SetDomainName(v string) *CreateDomainAssociationInput {
4894	s.DomainName = &v
4895	return s
4896}
4897
4898// SetEnableAutoSubDomain sets the EnableAutoSubDomain field's value.
4899func (s *CreateDomainAssociationInput) SetEnableAutoSubDomain(v bool) *CreateDomainAssociationInput {
4900	s.EnableAutoSubDomain = &v
4901	return s
4902}
4903
4904// SetSubDomainSettings sets the SubDomainSettings field's value.
4905func (s *CreateDomainAssociationInput) SetSubDomainSettings(v []*SubDomainSetting) *CreateDomainAssociationInput {
4906	s.SubDomainSettings = v
4907	return s
4908}
4909
4910// Result structure for the create Domain Association request.
4911type CreateDomainAssociationOutput struct {
4912	_ struct{} `type:"structure"`
4913
4914	// Domain Association structure.
4915	//
4916	// DomainAssociation is a required field
4917	DomainAssociation *DomainAssociation `locationName:"domainAssociation" type:"structure" required:"true"`
4918}
4919
4920// String returns the string representation
4921func (s CreateDomainAssociationOutput) String() string {
4922	return awsutil.Prettify(s)
4923}
4924
4925// GoString returns the string representation
4926func (s CreateDomainAssociationOutput) GoString() string {
4927	return s.String()
4928}
4929
4930// SetDomainAssociation sets the DomainAssociation field's value.
4931func (s *CreateDomainAssociationOutput) SetDomainAssociation(v *DomainAssociation) *CreateDomainAssociationOutput {
4932	s.DomainAssociation = v
4933	return s
4934}
4935
4936// Request structure for create webhook request.
4937type CreateWebhookInput struct {
4938	_ struct{} `type:"structure"`
4939
4940	// Unique Id for an Amplify App.
4941	//
4942	// AppId is a required field
4943	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
4944
4945	// Name for a branch, part of an Amplify App.
4946	//
4947	// BranchName is a required field
4948	BranchName *string `locationName:"branchName" min:"1" type:"string" required:"true"`
4949
4950	// Description for a webhook.
4951	Description *string `locationName:"description" type:"string"`
4952}
4953
4954// String returns the string representation
4955func (s CreateWebhookInput) String() string {
4956	return awsutil.Prettify(s)
4957}
4958
4959// GoString returns the string representation
4960func (s CreateWebhookInput) GoString() string {
4961	return s.String()
4962}
4963
4964// Validate inspects the fields of the type to determine if they are valid.
4965func (s *CreateWebhookInput) Validate() error {
4966	invalidParams := request.ErrInvalidParams{Context: "CreateWebhookInput"}
4967	if s.AppId == nil {
4968		invalidParams.Add(request.NewErrParamRequired("AppId"))
4969	}
4970	if s.AppId != nil && len(*s.AppId) < 1 {
4971		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
4972	}
4973	if s.BranchName == nil {
4974		invalidParams.Add(request.NewErrParamRequired("BranchName"))
4975	}
4976	if s.BranchName != nil && len(*s.BranchName) < 1 {
4977		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
4978	}
4979
4980	if invalidParams.Len() > 0 {
4981		return invalidParams
4982	}
4983	return nil
4984}
4985
4986// SetAppId sets the AppId field's value.
4987func (s *CreateWebhookInput) SetAppId(v string) *CreateWebhookInput {
4988	s.AppId = &v
4989	return s
4990}
4991
4992// SetBranchName sets the BranchName field's value.
4993func (s *CreateWebhookInput) SetBranchName(v string) *CreateWebhookInput {
4994	s.BranchName = &v
4995	return s
4996}
4997
4998// SetDescription sets the Description field's value.
4999func (s *CreateWebhookInput) SetDescription(v string) *CreateWebhookInput {
5000	s.Description = &v
5001	return s
5002}
5003
5004// Result structure for the create webhook request.
5005type CreateWebhookOutput struct {
5006	_ struct{} `type:"structure"`
5007
5008	// Webhook structure.
5009	//
5010	// Webhook is a required field
5011	Webhook *Webhook `locationName:"webhook" type:"structure" required:"true"`
5012}
5013
5014// String returns the string representation
5015func (s CreateWebhookOutput) String() string {
5016	return awsutil.Prettify(s)
5017}
5018
5019// GoString returns the string representation
5020func (s CreateWebhookOutput) GoString() string {
5021	return s.String()
5022}
5023
5024// SetWebhook sets the Webhook field's value.
5025func (s *CreateWebhookOutput) SetWebhook(v *Webhook) *CreateWebhookOutput {
5026	s.Webhook = v
5027	return s
5028}
5029
5030// Custom rewrite / redirect rule.
5031type CustomRule struct {
5032	_ struct{} `type:"structure"`
5033
5034	// The condition for a URL rewrite or redirect rule, e.g. country code.
5035	Condition *string `locationName:"condition" min:"1" type:"string"`
5036
5037	// The source pattern for a URL rewrite or redirect rule.
5038	//
5039	// Source is a required field
5040	Source *string `locationName:"source" min:"1" type:"string" required:"true"`
5041
5042	// The status code for a URL rewrite or redirect rule.
5043	Status *string `locationName:"status" min:"3" type:"string"`
5044
5045	// The target pattern for a URL rewrite or redirect rule.
5046	//
5047	// Target is a required field
5048	Target *string `locationName:"target" min:"1" type:"string" required:"true"`
5049}
5050
5051// String returns the string representation
5052func (s CustomRule) String() string {
5053	return awsutil.Prettify(s)
5054}
5055
5056// GoString returns the string representation
5057func (s CustomRule) GoString() string {
5058	return s.String()
5059}
5060
5061// Validate inspects the fields of the type to determine if they are valid.
5062func (s *CustomRule) Validate() error {
5063	invalidParams := request.ErrInvalidParams{Context: "CustomRule"}
5064	if s.Condition != nil && len(*s.Condition) < 1 {
5065		invalidParams.Add(request.NewErrParamMinLen("Condition", 1))
5066	}
5067	if s.Source == nil {
5068		invalidParams.Add(request.NewErrParamRequired("Source"))
5069	}
5070	if s.Source != nil && len(*s.Source) < 1 {
5071		invalidParams.Add(request.NewErrParamMinLen("Source", 1))
5072	}
5073	if s.Status != nil && len(*s.Status) < 3 {
5074		invalidParams.Add(request.NewErrParamMinLen("Status", 3))
5075	}
5076	if s.Target == nil {
5077		invalidParams.Add(request.NewErrParamRequired("Target"))
5078	}
5079	if s.Target != nil && len(*s.Target) < 1 {
5080		invalidParams.Add(request.NewErrParamMinLen("Target", 1))
5081	}
5082
5083	if invalidParams.Len() > 0 {
5084		return invalidParams
5085	}
5086	return nil
5087}
5088
5089// SetCondition sets the Condition field's value.
5090func (s *CustomRule) SetCondition(v string) *CustomRule {
5091	s.Condition = &v
5092	return s
5093}
5094
5095// SetSource sets the Source field's value.
5096func (s *CustomRule) SetSource(v string) *CustomRule {
5097	s.Source = &v
5098	return s
5099}
5100
5101// SetStatus sets the Status field's value.
5102func (s *CustomRule) SetStatus(v string) *CustomRule {
5103	s.Status = &v
5104	return s
5105}
5106
5107// SetTarget sets the Target field's value.
5108func (s *CustomRule) SetTarget(v string) *CustomRule {
5109	s.Target = &v
5110	return s
5111}
5112
5113// Request structure for an Amplify App delete request.
5114type DeleteAppInput struct {
5115	_ struct{} `type:"structure"`
5116
5117	// Unique Id for an Amplify App.
5118	//
5119	// AppId is a required field
5120	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
5121}
5122
5123// String returns the string representation
5124func (s DeleteAppInput) String() string {
5125	return awsutil.Prettify(s)
5126}
5127
5128// GoString returns the string representation
5129func (s DeleteAppInput) GoString() string {
5130	return s.String()
5131}
5132
5133// Validate inspects the fields of the type to determine if they are valid.
5134func (s *DeleteAppInput) Validate() error {
5135	invalidParams := request.ErrInvalidParams{Context: "DeleteAppInput"}
5136	if s.AppId == nil {
5137		invalidParams.Add(request.NewErrParamRequired("AppId"))
5138	}
5139	if s.AppId != nil && len(*s.AppId) < 1 {
5140		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
5141	}
5142
5143	if invalidParams.Len() > 0 {
5144		return invalidParams
5145	}
5146	return nil
5147}
5148
5149// SetAppId sets the AppId field's value.
5150func (s *DeleteAppInput) SetAppId(v string) *DeleteAppInput {
5151	s.AppId = &v
5152	return s
5153}
5154
5155// Result structure for an Amplify App delete request.
5156type DeleteAppOutput struct {
5157	_ struct{} `type:"structure"`
5158
5159	// Amplify App represents different branches of a repository for building, deploying,
5160	// and hosting.
5161	//
5162	// App is a required field
5163	App *App `locationName:"app" type:"structure" required:"true"`
5164}
5165
5166// String returns the string representation
5167func (s DeleteAppOutput) String() string {
5168	return awsutil.Prettify(s)
5169}
5170
5171// GoString returns the string representation
5172func (s DeleteAppOutput) GoString() string {
5173	return s.String()
5174}
5175
5176// SetApp sets the App field's value.
5177func (s *DeleteAppOutput) SetApp(v *App) *DeleteAppOutput {
5178	s.App = v
5179	return s
5180}
5181
5182// Request structure for delete backend environment request.
5183type DeleteBackendEnvironmentInput struct {
5184	_ struct{} `type:"structure"`
5185
5186	// Unique Id of an Amplify App.
5187	//
5188	// AppId is a required field
5189	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
5190
5191	// Name of a backend environment of an Amplify App.
5192	//
5193	// EnvironmentName is a required field
5194	EnvironmentName *string `location:"uri" locationName:"environmentName" min:"1" type:"string" required:"true"`
5195}
5196
5197// String returns the string representation
5198func (s DeleteBackendEnvironmentInput) String() string {
5199	return awsutil.Prettify(s)
5200}
5201
5202// GoString returns the string representation
5203func (s DeleteBackendEnvironmentInput) GoString() string {
5204	return s.String()
5205}
5206
5207// Validate inspects the fields of the type to determine if they are valid.
5208func (s *DeleteBackendEnvironmentInput) Validate() error {
5209	invalidParams := request.ErrInvalidParams{Context: "DeleteBackendEnvironmentInput"}
5210	if s.AppId == nil {
5211		invalidParams.Add(request.NewErrParamRequired("AppId"))
5212	}
5213	if s.AppId != nil && len(*s.AppId) < 1 {
5214		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
5215	}
5216	if s.EnvironmentName == nil {
5217		invalidParams.Add(request.NewErrParamRequired("EnvironmentName"))
5218	}
5219	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 1 {
5220		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 1))
5221	}
5222
5223	if invalidParams.Len() > 0 {
5224		return invalidParams
5225	}
5226	return nil
5227}
5228
5229// SetAppId sets the AppId field's value.
5230func (s *DeleteBackendEnvironmentInput) SetAppId(v string) *DeleteBackendEnvironmentInput {
5231	s.AppId = &v
5232	return s
5233}
5234
5235// SetEnvironmentName sets the EnvironmentName field's value.
5236func (s *DeleteBackendEnvironmentInput) SetEnvironmentName(v string) *DeleteBackendEnvironmentInput {
5237	s.EnvironmentName = &v
5238	return s
5239}
5240
5241// Result structure of a delete backend environment result.
5242type DeleteBackendEnvironmentOutput struct {
5243	_ struct{} `type:"structure"`
5244
5245	// Backend environment structure for an Amplify App.
5246	//
5247	// BackendEnvironment is a required field
5248	BackendEnvironment *BackendEnvironment `locationName:"backendEnvironment" type:"structure" required:"true"`
5249}
5250
5251// String returns the string representation
5252func (s DeleteBackendEnvironmentOutput) String() string {
5253	return awsutil.Prettify(s)
5254}
5255
5256// GoString returns the string representation
5257func (s DeleteBackendEnvironmentOutput) GoString() string {
5258	return s.String()
5259}
5260
5261// SetBackendEnvironment sets the BackendEnvironment field's value.
5262func (s *DeleteBackendEnvironmentOutput) SetBackendEnvironment(v *BackendEnvironment) *DeleteBackendEnvironmentOutput {
5263	s.BackendEnvironment = v
5264	return s
5265}
5266
5267// Request structure for delete branch request.
5268type DeleteBranchInput struct {
5269	_ struct{} `type:"structure"`
5270
5271	// Unique Id for an Amplify App.
5272	//
5273	// AppId is a required field
5274	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
5275
5276	// Name for the branch.
5277	//
5278	// BranchName is a required field
5279	BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"`
5280}
5281
5282// String returns the string representation
5283func (s DeleteBranchInput) String() string {
5284	return awsutil.Prettify(s)
5285}
5286
5287// GoString returns the string representation
5288func (s DeleteBranchInput) GoString() string {
5289	return s.String()
5290}
5291
5292// Validate inspects the fields of the type to determine if they are valid.
5293func (s *DeleteBranchInput) Validate() error {
5294	invalidParams := request.ErrInvalidParams{Context: "DeleteBranchInput"}
5295	if s.AppId == nil {
5296		invalidParams.Add(request.NewErrParamRequired("AppId"))
5297	}
5298	if s.AppId != nil && len(*s.AppId) < 1 {
5299		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
5300	}
5301	if s.BranchName == nil {
5302		invalidParams.Add(request.NewErrParamRequired("BranchName"))
5303	}
5304	if s.BranchName != nil && len(*s.BranchName) < 1 {
5305		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
5306	}
5307
5308	if invalidParams.Len() > 0 {
5309		return invalidParams
5310	}
5311	return nil
5312}
5313
5314// SetAppId sets the AppId field's value.
5315func (s *DeleteBranchInput) SetAppId(v string) *DeleteBranchInput {
5316	s.AppId = &v
5317	return s
5318}
5319
5320// SetBranchName sets the BranchName field's value.
5321func (s *DeleteBranchInput) SetBranchName(v string) *DeleteBranchInput {
5322	s.BranchName = &v
5323	return s
5324}
5325
5326// Result structure for delete branch request.
5327type DeleteBranchOutput struct {
5328	_ struct{} `type:"structure"`
5329
5330	// Branch structure for an Amplify App.
5331	//
5332	// Branch is a required field
5333	Branch *Branch `locationName:"branch" type:"structure" required:"true"`
5334}
5335
5336// String returns the string representation
5337func (s DeleteBranchOutput) String() string {
5338	return awsutil.Prettify(s)
5339}
5340
5341// GoString returns the string representation
5342func (s DeleteBranchOutput) GoString() string {
5343	return s.String()
5344}
5345
5346// SetBranch sets the Branch field's value.
5347func (s *DeleteBranchOutput) SetBranch(v *Branch) *DeleteBranchOutput {
5348	s.Branch = v
5349	return s
5350}
5351
5352// Request structure for the delete Domain Association request.
5353type DeleteDomainAssociationInput struct {
5354	_ struct{} `type:"structure"`
5355
5356	// Unique Id for an Amplify App.
5357	//
5358	// AppId is a required field
5359	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
5360
5361	// Name of the domain.
5362	//
5363	// DomainName is a required field
5364	DomainName *string `location:"uri" locationName:"domainName" type:"string" required:"true"`
5365}
5366
5367// String returns the string representation
5368func (s DeleteDomainAssociationInput) String() string {
5369	return awsutil.Prettify(s)
5370}
5371
5372// GoString returns the string representation
5373func (s DeleteDomainAssociationInput) GoString() string {
5374	return s.String()
5375}
5376
5377// Validate inspects the fields of the type to determine if they are valid.
5378func (s *DeleteDomainAssociationInput) Validate() error {
5379	invalidParams := request.ErrInvalidParams{Context: "DeleteDomainAssociationInput"}
5380	if s.AppId == nil {
5381		invalidParams.Add(request.NewErrParamRequired("AppId"))
5382	}
5383	if s.AppId != nil && len(*s.AppId) < 1 {
5384		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
5385	}
5386	if s.DomainName == nil {
5387		invalidParams.Add(request.NewErrParamRequired("DomainName"))
5388	}
5389	if s.DomainName != nil && len(*s.DomainName) < 1 {
5390		invalidParams.Add(request.NewErrParamMinLen("DomainName", 1))
5391	}
5392
5393	if invalidParams.Len() > 0 {
5394		return invalidParams
5395	}
5396	return nil
5397}
5398
5399// SetAppId sets the AppId field's value.
5400func (s *DeleteDomainAssociationInput) SetAppId(v string) *DeleteDomainAssociationInput {
5401	s.AppId = &v
5402	return s
5403}
5404
5405// SetDomainName sets the DomainName field's value.
5406func (s *DeleteDomainAssociationInput) SetDomainName(v string) *DeleteDomainAssociationInput {
5407	s.DomainName = &v
5408	return s
5409}
5410
5411type DeleteDomainAssociationOutput struct {
5412	_ struct{} `type:"structure"`
5413
5414	// Structure for Domain Association, which associates a custom domain with an
5415	// Amplify App.
5416	//
5417	// DomainAssociation is a required field
5418	DomainAssociation *DomainAssociation `locationName:"domainAssociation" type:"structure" required:"true"`
5419}
5420
5421// String returns the string representation
5422func (s DeleteDomainAssociationOutput) String() string {
5423	return awsutil.Prettify(s)
5424}
5425
5426// GoString returns the string representation
5427func (s DeleteDomainAssociationOutput) GoString() string {
5428	return s.String()
5429}
5430
5431// SetDomainAssociation sets the DomainAssociation field's value.
5432func (s *DeleteDomainAssociationOutput) SetDomainAssociation(v *DomainAssociation) *DeleteDomainAssociationOutput {
5433	s.DomainAssociation = v
5434	return s
5435}
5436
5437// Request structure for delete job request.
5438type DeleteJobInput struct {
5439	_ struct{} `type:"structure"`
5440
5441	// Unique Id for an Amplify App.
5442	//
5443	// AppId is a required field
5444	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
5445
5446	// Name for the branch, for the Job.
5447	//
5448	// BranchName is a required field
5449	BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"`
5450
5451	// Unique Id for the Job.
5452	//
5453	// JobId is a required field
5454	JobId *string `location:"uri" locationName:"jobId" type:"string" required:"true"`
5455}
5456
5457// String returns the string representation
5458func (s DeleteJobInput) String() string {
5459	return awsutil.Prettify(s)
5460}
5461
5462// GoString returns the string representation
5463func (s DeleteJobInput) GoString() string {
5464	return s.String()
5465}
5466
5467// Validate inspects the fields of the type to determine if they are valid.
5468func (s *DeleteJobInput) Validate() error {
5469	invalidParams := request.ErrInvalidParams{Context: "DeleteJobInput"}
5470	if s.AppId == nil {
5471		invalidParams.Add(request.NewErrParamRequired("AppId"))
5472	}
5473	if s.AppId != nil && len(*s.AppId) < 1 {
5474		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
5475	}
5476	if s.BranchName == nil {
5477		invalidParams.Add(request.NewErrParamRequired("BranchName"))
5478	}
5479	if s.BranchName != nil && len(*s.BranchName) < 1 {
5480		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
5481	}
5482	if s.JobId == nil {
5483		invalidParams.Add(request.NewErrParamRequired("JobId"))
5484	}
5485	if s.JobId != nil && len(*s.JobId) < 1 {
5486		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
5487	}
5488
5489	if invalidParams.Len() > 0 {
5490		return invalidParams
5491	}
5492	return nil
5493}
5494
5495// SetAppId sets the AppId field's value.
5496func (s *DeleteJobInput) SetAppId(v string) *DeleteJobInput {
5497	s.AppId = &v
5498	return s
5499}
5500
5501// SetBranchName sets the BranchName field's value.
5502func (s *DeleteJobInput) SetBranchName(v string) *DeleteJobInput {
5503	s.BranchName = &v
5504	return s
5505}
5506
5507// SetJobId sets the JobId field's value.
5508func (s *DeleteJobInput) SetJobId(v string) *DeleteJobInput {
5509	s.JobId = &v
5510	return s
5511}
5512
5513// Result structure for the delete job request.
5514type DeleteJobOutput struct {
5515	_ struct{} `type:"structure"`
5516
5517	// Structure for the summary of a Job.
5518	//
5519	// JobSummary is a required field
5520	JobSummary *JobSummary `locationName:"jobSummary" type:"structure" required:"true"`
5521}
5522
5523// String returns the string representation
5524func (s DeleteJobOutput) String() string {
5525	return awsutil.Prettify(s)
5526}
5527
5528// GoString returns the string representation
5529func (s DeleteJobOutput) GoString() string {
5530	return s.String()
5531}
5532
5533// SetJobSummary sets the JobSummary field's value.
5534func (s *DeleteJobOutput) SetJobSummary(v *JobSummary) *DeleteJobOutput {
5535	s.JobSummary = v
5536	return s
5537}
5538
5539// Request structure for the delete webhook request.
5540type DeleteWebhookInput struct {
5541	_ struct{} `type:"structure"`
5542
5543	// Unique Id for a webhook.
5544	//
5545	// WebhookId is a required field
5546	WebhookId *string `location:"uri" locationName:"webhookId" type:"string" required:"true"`
5547}
5548
5549// String returns the string representation
5550func (s DeleteWebhookInput) String() string {
5551	return awsutil.Prettify(s)
5552}
5553
5554// GoString returns the string representation
5555func (s DeleteWebhookInput) GoString() string {
5556	return s.String()
5557}
5558
5559// Validate inspects the fields of the type to determine if they are valid.
5560func (s *DeleteWebhookInput) Validate() error {
5561	invalidParams := request.ErrInvalidParams{Context: "DeleteWebhookInput"}
5562	if s.WebhookId == nil {
5563		invalidParams.Add(request.NewErrParamRequired("WebhookId"))
5564	}
5565	if s.WebhookId != nil && len(*s.WebhookId) < 1 {
5566		invalidParams.Add(request.NewErrParamMinLen("WebhookId", 1))
5567	}
5568
5569	if invalidParams.Len() > 0 {
5570		return invalidParams
5571	}
5572	return nil
5573}
5574
5575// SetWebhookId sets the WebhookId field's value.
5576func (s *DeleteWebhookInput) SetWebhookId(v string) *DeleteWebhookInput {
5577	s.WebhookId = &v
5578	return s
5579}
5580
5581// Result structure for the delete webhook request.
5582type DeleteWebhookOutput struct {
5583	_ struct{} `type:"structure"`
5584
5585	// Webhook structure.
5586	//
5587	// Webhook is a required field
5588	Webhook *Webhook `locationName:"webhook" type:"structure" required:"true"`
5589}
5590
5591// String returns the string representation
5592func (s DeleteWebhookOutput) String() string {
5593	return awsutil.Prettify(s)
5594}
5595
5596// GoString returns the string representation
5597func (s DeleteWebhookOutput) GoString() string {
5598	return s.String()
5599}
5600
5601// SetWebhook sets the Webhook field's value.
5602func (s *DeleteWebhookOutput) SetWebhook(v *Webhook) *DeleteWebhookOutput {
5603	s.Webhook = v
5604	return s
5605}
5606
5607// Structure for Domain Association, which associates a custom domain with an
5608// Amplify App.
5609type DomainAssociation struct {
5610	_ struct{} `type:"structure"`
5611
5612	// DNS Record for certificate verification.
5613	CertificateVerificationDNSRecord *string `locationName:"certificateVerificationDNSRecord" type:"string"`
5614
5615	// ARN for the Domain Association.
5616	//
5617	// DomainAssociationArn is a required field
5618	DomainAssociationArn *string `locationName:"domainAssociationArn" type:"string" required:"true"`
5619
5620	// Name of the domain.
5621	//
5622	// DomainName is a required field
5623	DomainName *string `locationName:"domainName" type:"string" required:"true"`
5624
5625	// Status fo the Domain Association.
5626	//
5627	// DomainStatus is a required field
5628	DomainStatus *string `locationName:"domainStatus" type:"string" required:"true" enum:"DomainStatus"`
5629
5630	// Enables automated creation of Subdomains for branches. (Currently not supported)
5631	//
5632	// EnableAutoSubDomain is a required field
5633	EnableAutoSubDomain *bool `locationName:"enableAutoSubDomain" type:"boolean" required:"true"`
5634
5635	// Reason for the current status of the Domain Association.
5636	//
5637	// StatusReason is a required field
5638	StatusReason *string `locationName:"statusReason" type:"string" required:"true"`
5639
5640	// Subdomains for the Domain Association.
5641	//
5642	// SubDomains is a required field
5643	SubDomains []*SubDomain `locationName:"subDomains" type:"list" required:"true"`
5644}
5645
5646// String returns the string representation
5647func (s DomainAssociation) String() string {
5648	return awsutil.Prettify(s)
5649}
5650
5651// GoString returns the string representation
5652func (s DomainAssociation) GoString() string {
5653	return s.String()
5654}
5655
5656// SetCertificateVerificationDNSRecord sets the CertificateVerificationDNSRecord field's value.
5657func (s *DomainAssociation) SetCertificateVerificationDNSRecord(v string) *DomainAssociation {
5658	s.CertificateVerificationDNSRecord = &v
5659	return s
5660}
5661
5662// SetDomainAssociationArn sets the DomainAssociationArn field's value.
5663func (s *DomainAssociation) SetDomainAssociationArn(v string) *DomainAssociation {
5664	s.DomainAssociationArn = &v
5665	return s
5666}
5667
5668// SetDomainName sets the DomainName field's value.
5669func (s *DomainAssociation) SetDomainName(v string) *DomainAssociation {
5670	s.DomainName = &v
5671	return s
5672}
5673
5674// SetDomainStatus sets the DomainStatus field's value.
5675func (s *DomainAssociation) SetDomainStatus(v string) *DomainAssociation {
5676	s.DomainStatus = &v
5677	return s
5678}
5679
5680// SetEnableAutoSubDomain sets the EnableAutoSubDomain field's value.
5681func (s *DomainAssociation) SetEnableAutoSubDomain(v bool) *DomainAssociation {
5682	s.EnableAutoSubDomain = &v
5683	return s
5684}
5685
5686// SetStatusReason sets the StatusReason field's value.
5687func (s *DomainAssociation) SetStatusReason(v string) *DomainAssociation {
5688	s.StatusReason = &v
5689	return s
5690}
5691
5692// SetSubDomains sets the SubDomains field's value.
5693func (s *DomainAssociation) SetSubDomains(v []*SubDomain) *DomainAssociation {
5694	s.SubDomains = v
5695	return s
5696}
5697
5698// Request structure for the generate access logs request.
5699type GenerateAccessLogsInput struct {
5700	_ struct{} `type:"structure"`
5701
5702	// Unique Id for an Amplify App.
5703	//
5704	// AppId is a required field
5705	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
5706
5707	// Name of the domain.
5708	//
5709	// DomainName is a required field
5710	DomainName *string `locationName:"domainName" type:"string" required:"true"`
5711
5712	// The time at which the logs should end, inclusive.
5713	EndTime *time.Time `locationName:"endTime" type:"timestamp"`
5714
5715	// The time at which the logs should start, inclusive.
5716	StartTime *time.Time `locationName:"startTime" type:"timestamp"`
5717}
5718
5719// String returns the string representation
5720func (s GenerateAccessLogsInput) String() string {
5721	return awsutil.Prettify(s)
5722}
5723
5724// GoString returns the string representation
5725func (s GenerateAccessLogsInput) GoString() string {
5726	return s.String()
5727}
5728
5729// Validate inspects the fields of the type to determine if they are valid.
5730func (s *GenerateAccessLogsInput) Validate() error {
5731	invalidParams := request.ErrInvalidParams{Context: "GenerateAccessLogsInput"}
5732	if s.AppId == nil {
5733		invalidParams.Add(request.NewErrParamRequired("AppId"))
5734	}
5735	if s.AppId != nil && len(*s.AppId) < 1 {
5736		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
5737	}
5738	if s.DomainName == nil {
5739		invalidParams.Add(request.NewErrParamRequired("DomainName"))
5740	}
5741
5742	if invalidParams.Len() > 0 {
5743		return invalidParams
5744	}
5745	return nil
5746}
5747
5748// SetAppId sets the AppId field's value.
5749func (s *GenerateAccessLogsInput) SetAppId(v string) *GenerateAccessLogsInput {
5750	s.AppId = &v
5751	return s
5752}
5753
5754// SetDomainName sets the DomainName field's value.
5755func (s *GenerateAccessLogsInput) SetDomainName(v string) *GenerateAccessLogsInput {
5756	s.DomainName = &v
5757	return s
5758}
5759
5760// SetEndTime sets the EndTime field's value.
5761func (s *GenerateAccessLogsInput) SetEndTime(v time.Time) *GenerateAccessLogsInput {
5762	s.EndTime = &v
5763	return s
5764}
5765
5766// SetStartTime sets the StartTime field's value.
5767func (s *GenerateAccessLogsInput) SetStartTime(v time.Time) *GenerateAccessLogsInput {
5768	s.StartTime = &v
5769	return s
5770}
5771
5772// Result structure for the generate access logs request.
5773type GenerateAccessLogsOutput struct {
5774	_ struct{} `type:"structure"`
5775
5776	// Pre-signed URL for the requested access logs.
5777	LogUrl *string `locationName:"logUrl" type:"string"`
5778}
5779
5780// String returns the string representation
5781func (s GenerateAccessLogsOutput) String() string {
5782	return awsutil.Prettify(s)
5783}
5784
5785// GoString returns the string representation
5786func (s GenerateAccessLogsOutput) GoString() string {
5787	return s.String()
5788}
5789
5790// SetLogUrl sets the LogUrl field's value.
5791func (s *GenerateAccessLogsOutput) SetLogUrl(v string) *GenerateAccessLogsOutput {
5792	s.LogUrl = &v
5793	return s
5794}
5795
5796// Request structure for get App request.
5797type GetAppInput struct {
5798	_ struct{} `type:"structure"`
5799
5800	// Unique Id for an Amplify App.
5801	//
5802	// AppId is a required field
5803	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
5804}
5805
5806// String returns the string representation
5807func (s GetAppInput) String() string {
5808	return awsutil.Prettify(s)
5809}
5810
5811// GoString returns the string representation
5812func (s GetAppInput) GoString() string {
5813	return s.String()
5814}
5815
5816// Validate inspects the fields of the type to determine if they are valid.
5817func (s *GetAppInput) Validate() error {
5818	invalidParams := request.ErrInvalidParams{Context: "GetAppInput"}
5819	if s.AppId == nil {
5820		invalidParams.Add(request.NewErrParamRequired("AppId"))
5821	}
5822	if s.AppId != nil && len(*s.AppId) < 1 {
5823		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
5824	}
5825
5826	if invalidParams.Len() > 0 {
5827		return invalidParams
5828	}
5829	return nil
5830}
5831
5832// SetAppId sets the AppId field's value.
5833func (s *GetAppInput) SetAppId(v string) *GetAppInput {
5834	s.AppId = &v
5835	return s
5836}
5837
5838type GetAppOutput struct {
5839	_ struct{} `type:"structure"`
5840
5841	// Amplify App represents different branches of a repository for building, deploying,
5842	// and hosting.
5843	//
5844	// App is a required field
5845	App *App `locationName:"app" type:"structure" required:"true"`
5846}
5847
5848// String returns the string representation
5849func (s GetAppOutput) String() string {
5850	return awsutil.Prettify(s)
5851}
5852
5853// GoString returns the string representation
5854func (s GetAppOutput) GoString() string {
5855	return s.String()
5856}
5857
5858// SetApp sets the App field's value.
5859func (s *GetAppOutput) SetApp(v *App) *GetAppOutput {
5860	s.App = v
5861	return s
5862}
5863
5864// Request structure for the get artifact request.
5865type GetArtifactUrlInput struct {
5866	_ struct{} `type:"structure"`
5867
5868	// Unique Id for a artifact.
5869	//
5870	// ArtifactId is a required field
5871	ArtifactId *string `location:"uri" locationName:"artifactId" type:"string" required:"true"`
5872}
5873
5874// String returns the string representation
5875func (s GetArtifactUrlInput) String() string {
5876	return awsutil.Prettify(s)
5877}
5878
5879// GoString returns the string representation
5880func (s GetArtifactUrlInput) GoString() string {
5881	return s.String()
5882}
5883
5884// Validate inspects the fields of the type to determine if they are valid.
5885func (s *GetArtifactUrlInput) Validate() error {
5886	invalidParams := request.ErrInvalidParams{Context: "GetArtifactUrlInput"}
5887	if s.ArtifactId == nil {
5888		invalidParams.Add(request.NewErrParamRequired("ArtifactId"))
5889	}
5890	if s.ArtifactId != nil && len(*s.ArtifactId) < 1 {
5891		invalidParams.Add(request.NewErrParamMinLen("ArtifactId", 1))
5892	}
5893
5894	if invalidParams.Len() > 0 {
5895		return invalidParams
5896	}
5897	return nil
5898}
5899
5900// SetArtifactId sets the ArtifactId field's value.
5901func (s *GetArtifactUrlInput) SetArtifactId(v string) *GetArtifactUrlInput {
5902	s.ArtifactId = &v
5903	return s
5904}
5905
5906// Result structure for the get artifact request.
5907type GetArtifactUrlOutput struct {
5908	_ struct{} `type:"structure"`
5909
5910	// Unique Id for a artifact.
5911	//
5912	// ArtifactId is a required field
5913	ArtifactId *string `locationName:"artifactId" type:"string" required:"true"`
5914
5915	// Presigned url for the artifact.
5916	//
5917	// ArtifactUrl is a required field
5918	ArtifactUrl *string `locationName:"artifactUrl" type:"string" required:"true"`
5919}
5920
5921// String returns the string representation
5922func (s GetArtifactUrlOutput) String() string {
5923	return awsutil.Prettify(s)
5924}
5925
5926// GoString returns the string representation
5927func (s GetArtifactUrlOutput) GoString() string {
5928	return s.String()
5929}
5930
5931// SetArtifactId sets the ArtifactId field's value.
5932func (s *GetArtifactUrlOutput) SetArtifactId(v string) *GetArtifactUrlOutput {
5933	s.ArtifactId = &v
5934	return s
5935}
5936
5937// SetArtifactUrl sets the ArtifactUrl field's value.
5938func (s *GetArtifactUrlOutput) SetArtifactUrl(v string) *GetArtifactUrlOutput {
5939	s.ArtifactUrl = &v
5940	return s
5941}
5942
5943// Request structure for get backend environment request.
5944type GetBackendEnvironmentInput struct {
5945	_ struct{} `type:"structure"`
5946
5947	// Unique Id for an Amplify App.
5948	//
5949	// AppId is a required field
5950	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
5951
5952	// Name for the backend environment.
5953	//
5954	// EnvironmentName is a required field
5955	EnvironmentName *string `location:"uri" locationName:"environmentName" min:"1" type:"string" required:"true"`
5956}
5957
5958// String returns the string representation
5959func (s GetBackendEnvironmentInput) String() string {
5960	return awsutil.Prettify(s)
5961}
5962
5963// GoString returns the string representation
5964func (s GetBackendEnvironmentInput) GoString() string {
5965	return s.String()
5966}
5967
5968// Validate inspects the fields of the type to determine if they are valid.
5969func (s *GetBackendEnvironmentInput) Validate() error {
5970	invalidParams := request.ErrInvalidParams{Context: "GetBackendEnvironmentInput"}
5971	if s.AppId == nil {
5972		invalidParams.Add(request.NewErrParamRequired("AppId"))
5973	}
5974	if s.AppId != nil && len(*s.AppId) < 1 {
5975		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
5976	}
5977	if s.EnvironmentName == nil {
5978		invalidParams.Add(request.NewErrParamRequired("EnvironmentName"))
5979	}
5980	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 1 {
5981		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 1))
5982	}
5983
5984	if invalidParams.Len() > 0 {
5985		return invalidParams
5986	}
5987	return nil
5988}
5989
5990// SetAppId sets the AppId field's value.
5991func (s *GetBackendEnvironmentInput) SetAppId(v string) *GetBackendEnvironmentInput {
5992	s.AppId = &v
5993	return s
5994}
5995
5996// SetEnvironmentName sets the EnvironmentName field's value.
5997func (s *GetBackendEnvironmentInput) SetEnvironmentName(v string) *GetBackendEnvironmentInput {
5998	s.EnvironmentName = &v
5999	return s
6000}
6001
6002// Result structure for get backend environment result.
6003type GetBackendEnvironmentOutput struct {
6004	_ struct{} `type:"structure"`
6005
6006	// Backend environment structure for an an Amplify App.
6007	//
6008	// BackendEnvironment is a required field
6009	BackendEnvironment *BackendEnvironment `locationName:"backendEnvironment" type:"structure" required:"true"`
6010}
6011
6012// String returns the string representation
6013func (s GetBackendEnvironmentOutput) String() string {
6014	return awsutil.Prettify(s)
6015}
6016
6017// GoString returns the string representation
6018func (s GetBackendEnvironmentOutput) GoString() string {
6019	return s.String()
6020}
6021
6022// SetBackendEnvironment sets the BackendEnvironment field's value.
6023func (s *GetBackendEnvironmentOutput) SetBackendEnvironment(v *BackendEnvironment) *GetBackendEnvironmentOutput {
6024	s.BackendEnvironment = v
6025	return s
6026}
6027
6028// Request structure for get branch request.
6029type GetBranchInput struct {
6030	_ struct{} `type:"structure"`
6031
6032	// Unique Id for an Amplify App.
6033	//
6034	// AppId is a required field
6035	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
6036
6037	// Name for the branch.
6038	//
6039	// BranchName is a required field
6040	BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"`
6041}
6042
6043// String returns the string representation
6044func (s GetBranchInput) String() string {
6045	return awsutil.Prettify(s)
6046}
6047
6048// GoString returns the string representation
6049func (s GetBranchInput) GoString() string {
6050	return s.String()
6051}
6052
6053// Validate inspects the fields of the type to determine if they are valid.
6054func (s *GetBranchInput) Validate() error {
6055	invalidParams := request.ErrInvalidParams{Context: "GetBranchInput"}
6056	if s.AppId == nil {
6057		invalidParams.Add(request.NewErrParamRequired("AppId"))
6058	}
6059	if s.AppId != nil && len(*s.AppId) < 1 {
6060		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
6061	}
6062	if s.BranchName == nil {
6063		invalidParams.Add(request.NewErrParamRequired("BranchName"))
6064	}
6065	if s.BranchName != nil && len(*s.BranchName) < 1 {
6066		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
6067	}
6068
6069	if invalidParams.Len() > 0 {
6070		return invalidParams
6071	}
6072	return nil
6073}
6074
6075// SetAppId sets the AppId field's value.
6076func (s *GetBranchInput) SetAppId(v string) *GetBranchInput {
6077	s.AppId = &v
6078	return s
6079}
6080
6081// SetBranchName sets the BranchName field's value.
6082func (s *GetBranchInput) SetBranchName(v string) *GetBranchInput {
6083	s.BranchName = &v
6084	return s
6085}
6086
6087type GetBranchOutput struct {
6088	_ struct{} `type:"structure"`
6089
6090	// Branch for an Amplify App, which maps to a 3rd party repository branch.
6091	//
6092	// Branch is a required field
6093	Branch *Branch `locationName:"branch" type:"structure" required:"true"`
6094}
6095
6096// String returns the string representation
6097func (s GetBranchOutput) String() string {
6098	return awsutil.Prettify(s)
6099}
6100
6101// GoString returns the string representation
6102func (s GetBranchOutput) GoString() string {
6103	return s.String()
6104}
6105
6106// SetBranch sets the Branch field's value.
6107func (s *GetBranchOutput) SetBranch(v *Branch) *GetBranchOutput {
6108	s.Branch = v
6109	return s
6110}
6111
6112// Request structure for the get Domain Association request.
6113type GetDomainAssociationInput struct {
6114	_ struct{} `type:"structure"`
6115
6116	// Unique Id for an Amplify App.
6117	//
6118	// AppId is a required field
6119	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
6120
6121	// Name of the domain.
6122	//
6123	// DomainName is a required field
6124	DomainName *string `location:"uri" locationName:"domainName" type:"string" required:"true"`
6125}
6126
6127// String returns the string representation
6128func (s GetDomainAssociationInput) String() string {
6129	return awsutil.Prettify(s)
6130}
6131
6132// GoString returns the string representation
6133func (s GetDomainAssociationInput) GoString() string {
6134	return s.String()
6135}
6136
6137// Validate inspects the fields of the type to determine if they are valid.
6138func (s *GetDomainAssociationInput) Validate() error {
6139	invalidParams := request.ErrInvalidParams{Context: "GetDomainAssociationInput"}
6140	if s.AppId == nil {
6141		invalidParams.Add(request.NewErrParamRequired("AppId"))
6142	}
6143	if s.AppId != nil && len(*s.AppId) < 1 {
6144		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
6145	}
6146	if s.DomainName == nil {
6147		invalidParams.Add(request.NewErrParamRequired("DomainName"))
6148	}
6149	if s.DomainName != nil && len(*s.DomainName) < 1 {
6150		invalidParams.Add(request.NewErrParamMinLen("DomainName", 1))
6151	}
6152
6153	if invalidParams.Len() > 0 {
6154		return invalidParams
6155	}
6156	return nil
6157}
6158
6159// SetAppId sets the AppId field's value.
6160func (s *GetDomainAssociationInput) SetAppId(v string) *GetDomainAssociationInput {
6161	s.AppId = &v
6162	return s
6163}
6164
6165// SetDomainName sets the DomainName field's value.
6166func (s *GetDomainAssociationInput) SetDomainName(v string) *GetDomainAssociationInput {
6167	s.DomainName = &v
6168	return s
6169}
6170
6171// Result structure for the get Domain Association request.
6172type GetDomainAssociationOutput struct {
6173	_ struct{} `type:"structure"`
6174
6175	// Domain Association structure.
6176	//
6177	// DomainAssociation is a required field
6178	DomainAssociation *DomainAssociation `locationName:"domainAssociation" type:"structure" required:"true"`
6179}
6180
6181// String returns the string representation
6182func (s GetDomainAssociationOutput) String() string {
6183	return awsutil.Prettify(s)
6184}
6185
6186// GoString returns the string representation
6187func (s GetDomainAssociationOutput) GoString() string {
6188	return s.String()
6189}
6190
6191// SetDomainAssociation sets the DomainAssociation field's value.
6192func (s *GetDomainAssociationOutput) SetDomainAssociation(v *DomainAssociation) *GetDomainAssociationOutput {
6193	s.DomainAssociation = v
6194	return s
6195}
6196
6197// Request structure for get job request.
6198type GetJobInput struct {
6199	_ struct{} `type:"structure"`
6200
6201	// Unique Id for an Amplify App.
6202	//
6203	// AppId is a required field
6204	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
6205
6206	// Name for the branch, for the Job.
6207	//
6208	// BranchName is a required field
6209	BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"`
6210
6211	// Unique Id for the Job.
6212	//
6213	// JobId is a required field
6214	JobId *string `location:"uri" locationName:"jobId" type:"string" required:"true"`
6215}
6216
6217// String returns the string representation
6218func (s GetJobInput) String() string {
6219	return awsutil.Prettify(s)
6220}
6221
6222// GoString returns the string representation
6223func (s GetJobInput) GoString() string {
6224	return s.String()
6225}
6226
6227// Validate inspects the fields of the type to determine if they are valid.
6228func (s *GetJobInput) Validate() error {
6229	invalidParams := request.ErrInvalidParams{Context: "GetJobInput"}
6230	if s.AppId == nil {
6231		invalidParams.Add(request.NewErrParamRequired("AppId"))
6232	}
6233	if s.AppId != nil && len(*s.AppId) < 1 {
6234		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
6235	}
6236	if s.BranchName == nil {
6237		invalidParams.Add(request.NewErrParamRequired("BranchName"))
6238	}
6239	if s.BranchName != nil && len(*s.BranchName) < 1 {
6240		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
6241	}
6242	if s.JobId == nil {
6243		invalidParams.Add(request.NewErrParamRequired("JobId"))
6244	}
6245	if s.JobId != nil && len(*s.JobId) < 1 {
6246		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
6247	}
6248
6249	if invalidParams.Len() > 0 {
6250		return invalidParams
6251	}
6252	return nil
6253}
6254
6255// SetAppId sets the AppId field's value.
6256func (s *GetJobInput) SetAppId(v string) *GetJobInput {
6257	s.AppId = &v
6258	return s
6259}
6260
6261// SetBranchName sets the BranchName field's value.
6262func (s *GetJobInput) SetBranchName(v string) *GetJobInput {
6263	s.BranchName = &v
6264	return s
6265}
6266
6267// SetJobId sets the JobId field's value.
6268func (s *GetJobInput) SetJobId(v string) *GetJobInput {
6269	s.JobId = &v
6270	return s
6271}
6272
6273type GetJobOutput struct {
6274	_ struct{} `type:"structure"`
6275
6276	// Structure for an execution job for an Amplify App.
6277	//
6278	// Job is a required field
6279	Job *Job `locationName:"job" type:"structure" required:"true"`
6280}
6281
6282// String returns the string representation
6283func (s GetJobOutput) String() string {
6284	return awsutil.Prettify(s)
6285}
6286
6287// GoString returns the string representation
6288func (s GetJobOutput) GoString() string {
6289	return s.String()
6290}
6291
6292// SetJob sets the Job field's value.
6293func (s *GetJobOutput) SetJob(v *Job) *GetJobOutput {
6294	s.Job = v
6295	return s
6296}
6297
6298// Request structure for the get webhook request.
6299type GetWebhookInput struct {
6300	_ struct{} `type:"structure"`
6301
6302	// Unique Id for a webhook.
6303	//
6304	// WebhookId is a required field
6305	WebhookId *string `location:"uri" locationName:"webhookId" type:"string" required:"true"`
6306}
6307
6308// String returns the string representation
6309func (s GetWebhookInput) String() string {
6310	return awsutil.Prettify(s)
6311}
6312
6313// GoString returns the string representation
6314func (s GetWebhookInput) GoString() string {
6315	return s.String()
6316}
6317
6318// Validate inspects the fields of the type to determine if they are valid.
6319func (s *GetWebhookInput) Validate() error {
6320	invalidParams := request.ErrInvalidParams{Context: "GetWebhookInput"}
6321	if s.WebhookId == nil {
6322		invalidParams.Add(request.NewErrParamRequired("WebhookId"))
6323	}
6324	if s.WebhookId != nil && len(*s.WebhookId) < 1 {
6325		invalidParams.Add(request.NewErrParamMinLen("WebhookId", 1))
6326	}
6327
6328	if invalidParams.Len() > 0 {
6329		return invalidParams
6330	}
6331	return nil
6332}
6333
6334// SetWebhookId sets the WebhookId field's value.
6335func (s *GetWebhookInput) SetWebhookId(v string) *GetWebhookInput {
6336	s.WebhookId = &v
6337	return s
6338}
6339
6340// Result structure for the get webhook request.
6341type GetWebhookOutput struct {
6342	_ struct{} `type:"structure"`
6343
6344	// Webhook structure.
6345	//
6346	// Webhook is a required field
6347	Webhook *Webhook `locationName:"webhook" type:"structure" required:"true"`
6348}
6349
6350// String returns the string representation
6351func (s GetWebhookOutput) String() string {
6352	return awsutil.Prettify(s)
6353}
6354
6355// GoString returns the string representation
6356func (s GetWebhookOutput) GoString() string {
6357	return s.String()
6358}
6359
6360// SetWebhook sets the Webhook field's value.
6361func (s *GetWebhookOutput) SetWebhook(v *Webhook) *GetWebhookOutput {
6362	s.Webhook = v
6363	return s
6364}
6365
6366// Structure for an execution job for an Amplify App.
6367type Job struct {
6368	_ struct{} `type:"structure"`
6369
6370	// Execution steps for an execution job, for an Amplify App.
6371	//
6372	// Steps is a required field
6373	Steps []*Step `locationName:"steps" type:"list" required:"true"`
6374
6375	// Summary for an execution job for an Amplify App.
6376	//
6377	// Summary is a required field
6378	Summary *JobSummary `locationName:"summary" type:"structure" required:"true"`
6379}
6380
6381// String returns the string representation
6382func (s Job) String() string {
6383	return awsutil.Prettify(s)
6384}
6385
6386// GoString returns the string representation
6387func (s Job) GoString() string {
6388	return s.String()
6389}
6390
6391// SetSteps sets the Steps field's value.
6392func (s *Job) SetSteps(v []*Step) *Job {
6393	s.Steps = v
6394	return s
6395}
6396
6397// SetSummary sets the Summary field's value.
6398func (s *Job) SetSummary(v *JobSummary) *Job {
6399	s.Summary = v
6400	return s
6401}
6402
6403// Structure for the summary of a Job.
6404type JobSummary struct {
6405	_ struct{} `type:"structure"`
6406
6407	// Commit Id from 3rd party repository provider for the Job.
6408	//
6409	// CommitId is a required field
6410	CommitId *string `locationName:"commitId" type:"string" required:"true"`
6411
6412	// Commit message from 3rd party repository provider for the Job.
6413	//
6414	// CommitMessage is a required field
6415	CommitMessage *string `locationName:"commitMessage" type:"string" required:"true"`
6416
6417	// Commit date / time for the Job.
6418	//
6419	// CommitTime is a required field
6420	CommitTime *time.Time `locationName:"commitTime" type:"timestamp" required:"true"`
6421
6422	// End date / time for the Job.
6423	EndTime *time.Time `locationName:"endTime" type:"timestamp"`
6424
6425	// Arn for the Job.
6426	//
6427	// JobArn is a required field
6428	JobArn *string `locationName:"jobArn" type:"string" required:"true"`
6429
6430	// Unique Id for the Job.
6431	//
6432	// JobId is a required field
6433	JobId *string `locationName:"jobId" type:"string" required:"true"`
6434
6435	// Type for the Job. \n "RELEASE": Manually released from source by using StartJob
6436	// API. "RETRY": Manually retried by using StartJob API. "WEB_HOOK": Automatically
6437	// triggered by WebHooks.
6438	//
6439	// JobType is a required field
6440	JobType *string `locationName:"jobType" type:"string" required:"true" enum:"JobType"`
6441
6442	// Start date / time for the Job.
6443	//
6444	// StartTime is a required field
6445	StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"`
6446
6447	// Status for the Job.
6448	//
6449	// Status is a required field
6450	Status *string `locationName:"status" type:"string" required:"true" enum:"JobStatus"`
6451}
6452
6453// String returns the string representation
6454func (s JobSummary) String() string {
6455	return awsutil.Prettify(s)
6456}
6457
6458// GoString returns the string representation
6459func (s JobSummary) GoString() string {
6460	return s.String()
6461}
6462
6463// SetCommitId sets the CommitId field's value.
6464func (s *JobSummary) SetCommitId(v string) *JobSummary {
6465	s.CommitId = &v
6466	return s
6467}
6468
6469// SetCommitMessage sets the CommitMessage field's value.
6470func (s *JobSummary) SetCommitMessage(v string) *JobSummary {
6471	s.CommitMessage = &v
6472	return s
6473}
6474
6475// SetCommitTime sets the CommitTime field's value.
6476func (s *JobSummary) SetCommitTime(v time.Time) *JobSummary {
6477	s.CommitTime = &v
6478	return s
6479}
6480
6481// SetEndTime sets the EndTime field's value.
6482func (s *JobSummary) SetEndTime(v time.Time) *JobSummary {
6483	s.EndTime = &v
6484	return s
6485}
6486
6487// SetJobArn sets the JobArn field's value.
6488func (s *JobSummary) SetJobArn(v string) *JobSummary {
6489	s.JobArn = &v
6490	return s
6491}
6492
6493// SetJobId sets the JobId field's value.
6494func (s *JobSummary) SetJobId(v string) *JobSummary {
6495	s.JobId = &v
6496	return s
6497}
6498
6499// SetJobType sets the JobType field's value.
6500func (s *JobSummary) SetJobType(v string) *JobSummary {
6501	s.JobType = &v
6502	return s
6503}
6504
6505// SetStartTime sets the StartTime field's value.
6506func (s *JobSummary) SetStartTime(v time.Time) *JobSummary {
6507	s.StartTime = &v
6508	return s
6509}
6510
6511// SetStatus sets the Status field's value.
6512func (s *JobSummary) SetStatus(v string) *JobSummary {
6513	s.Status = &v
6514	return s
6515}
6516
6517// Request structure for an Amplify App list request.
6518type ListAppsInput struct {
6519	_ struct{} `type:"structure"`
6520
6521	// Maximum number of records to list in a single response.
6522	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
6523
6524	// Pagination token. If non-null pagination token is returned in a result, then
6525	// pass its value in another request to fetch more entries.
6526	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
6527}
6528
6529// String returns the string representation
6530func (s ListAppsInput) String() string {
6531	return awsutil.Prettify(s)
6532}
6533
6534// GoString returns the string representation
6535func (s ListAppsInput) GoString() string {
6536	return s.String()
6537}
6538
6539// Validate inspects the fields of the type to determine if they are valid.
6540func (s *ListAppsInput) Validate() error {
6541	invalidParams := request.ErrInvalidParams{Context: "ListAppsInput"}
6542	if s.MaxResults != nil && *s.MaxResults < 1 {
6543		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
6544	}
6545
6546	if invalidParams.Len() > 0 {
6547		return invalidParams
6548	}
6549	return nil
6550}
6551
6552// SetMaxResults sets the MaxResults field's value.
6553func (s *ListAppsInput) SetMaxResults(v int64) *ListAppsInput {
6554	s.MaxResults = &v
6555	return s
6556}
6557
6558// SetNextToken sets the NextToken field's value.
6559func (s *ListAppsInput) SetNextToken(v string) *ListAppsInput {
6560	s.NextToken = &v
6561	return s
6562}
6563
6564// Result structure for an Amplify App list request.
6565type ListAppsOutput struct {
6566	_ struct{} `type:"structure"`
6567
6568	// List of Amplify Apps.
6569	//
6570	// Apps is a required field
6571	Apps []*App `locationName:"apps" type:"list" required:"true"`
6572
6573	// Pagination token. Set to null to start listing Apps from start. If non-null
6574	// pagination token is returned in a result, then pass its value in here to
6575	// list more projects.
6576	NextToken *string `locationName:"nextToken" type:"string"`
6577}
6578
6579// String returns the string representation
6580func (s ListAppsOutput) String() string {
6581	return awsutil.Prettify(s)
6582}
6583
6584// GoString returns the string representation
6585func (s ListAppsOutput) GoString() string {
6586	return s.String()
6587}
6588
6589// SetApps sets the Apps field's value.
6590func (s *ListAppsOutput) SetApps(v []*App) *ListAppsOutput {
6591	s.Apps = v
6592	return s
6593}
6594
6595// SetNextToken sets the NextToken field's value.
6596func (s *ListAppsOutput) SetNextToken(v string) *ListAppsOutput {
6597	s.NextToken = &v
6598	return s
6599}
6600
6601// Request structure for the list artifacts request.
6602type ListArtifactsInput struct {
6603	_ struct{} `type:"structure"`
6604
6605	// Unique Id for an Amplify App.
6606	//
6607	// AppId is a required field
6608	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
6609
6610	// Name for a branch, part of an Amplify App.
6611	//
6612	// BranchName is a required field
6613	BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"`
6614
6615	// Unique Id for an Job.
6616	//
6617	// JobId is a required field
6618	JobId *string `location:"uri" locationName:"jobId" type:"string" required:"true"`
6619
6620	// Maximum number of records to list in a single response.
6621	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
6622
6623	// Pagination token. Set to null to start listing artifacts from start. If non-null
6624	// pagination token is returned in a result, then pass its value in here to
6625	// list more artifacts.
6626	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
6627}
6628
6629// String returns the string representation
6630func (s ListArtifactsInput) String() string {
6631	return awsutil.Prettify(s)
6632}
6633
6634// GoString returns the string representation
6635func (s ListArtifactsInput) GoString() string {
6636	return s.String()
6637}
6638
6639// Validate inspects the fields of the type to determine if they are valid.
6640func (s *ListArtifactsInput) Validate() error {
6641	invalidParams := request.ErrInvalidParams{Context: "ListArtifactsInput"}
6642	if s.AppId == nil {
6643		invalidParams.Add(request.NewErrParamRequired("AppId"))
6644	}
6645	if s.AppId != nil && len(*s.AppId) < 1 {
6646		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
6647	}
6648	if s.BranchName == nil {
6649		invalidParams.Add(request.NewErrParamRequired("BranchName"))
6650	}
6651	if s.BranchName != nil && len(*s.BranchName) < 1 {
6652		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
6653	}
6654	if s.JobId == nil {
6655		invalidParams.Add(request.NewErrParamRequired("JobId"))
6656	}
6657	if s.JobId != nil && len(*s.JobId) < 1 {
6658		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
6659	}
6660	if s.MaxResults != nil && *s.MaxResults < 1 {
6661		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
6662	}
6663
6664	if invalidParams.Len() > 0 {
6665		return invalidParams
6666	}
6667	return nil
6668}
6669
6670// SetAppId sets the AppId field's value.
6671func (s *ListArtifactsInput) SetAppId(v string) *ListArtifactsInput {
6672	s.AppId = &v
6673	return s
6674}
6675
6676// SetBranchName sets the BranchName field's value.
6677func (s *ListArtifactsInput) SetBranchName(v string) *ListArtifactsInput {
6678	s.BranchName = &v
6679	return s
6680}
6681
6682// SetJobId sets the JobId field's value.
6683func (s *ListArtifactsInput) SetJobId(v string) *ListArtifactsInput {
6684	s.JobId = &v
6685	return s
6686}
6687
6688// SetMaxResults sets the MaxResults field's value.
6689func (s *ListArtifactsInput) SetMaxResults(v int64) *ListArtifactsInput {
6690	s.MaxResults = &v
6691	return s
6692}
6693
6694// SetNextToken sets the NextToken field's value.
6695func (s *ListArtifactsInput) SetNextToken(v string) *ListArtifactsInput {
6696	s.NextToken = &v
6697	return s
6698}
6699
6700// Result structure for the list artifacts request.
6701type ListArtifactsOutput struct {
6702	_ struct{} `type:"structure"`
6703
6704	// List of artifacts.
6705	//
6706	// Artifacts is a required field
6707	Artifacts []*Artifact `locationName:"artifacts" type:"list" required:"true"`
6708
6709	// Pagination token. If non-null pagination token is returned in a result, then
6710	// pass its value in another request to fetch more entries.
6711	NextToken *string `locationName:"nextToken" type:"string"`
6712}
6713
6714// String returns the string representation
6715func (s ListArtifactsOutput) String() string {
6716	return awsutil.Prettify(s)
6717}
6718
6719// GoString returns the string representation
6720func (s ListArtifactsOutput) GoString() string {
6721	return s.String()
6722}
6723
6724// SetArtifacts sets the Artifacts field's value.
6725func (s *ListArtifactsOutput) SetArtifacts(v []*Artifact) *ListArtifactsOutput {
6726	s.Artifacts = v
6727	return s
6728}
6729
6730// SetNextToken sets the NextToken field's value.
6731func (s *ListArtifactsOutput) SetNextToken(v string) *ListArtifactsOutput {
6732	s.NextToken = &v
6733	return s
6734}
6735
6736// Request structure for list backend environments request.
6737type ListBackendEnvironmentsInput struct {
6738	_ struct{} `type:"structure"`
6739
6740	// Unique Id for an amplify App.
6741	//
6742	// AppId is a required field
6743	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
6744
6745	// Name of the backend environment
6746	EnvironmentName *string `locationName:"environmentName" min:"1" type:"string"`
6747
6748	// Maximum number of records to list in a single response.
6749	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
6750
6751	// Pagination token. Set to null to start listing backen environments from start.
6752	// If a non-null pagination token is returned in a result, then pass its value
6753	// in here to list more backend environments.
6754	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
6755}
6756
6757// String returns the string representation
6758func (s ListBackendEnvironmentsInput) String() string {
6759	return awsutil.Prettify(s)
6760}
6761
6762// GoString returns the string representation
6763func (s ListBackendEnvironmentsInput) GoString() string {
6764	return s.String()
6765}
6766
6767// Validate inspects the fields of the type to determine if they are valid.
6768func (s *ListBackendEnvironmentsInput) Validate() error {
6769	invalidParams := request.ErrInvalidParams{Context: "ListBackendEnvironmentsInput"}
6770	if s.AppId == nil {
6771		invalidParams.Add(request.NewErrParamRequired("AppId"))
6772	}
6773	if s.AppId != nil && len(*s.AppId) < 1 {
6774		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
6775	}
6776	if s.EnvironmentName != nil && len(*s.EnvironmentName) < 1 {
6777		invalidParams.Add(request.NewErrParamMinLen("EnvironmentName", 1))
6778	}
6779	if s.MaxResults != nil && *s.MaxResults < 1 {
6780		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
6781	}
6782
6783	if invalidParams.Len() > 0 {
6784		return invalidParams
6785	}
6786	return nil
6787}
6788
6789// SetAppId sets the AppId field's value.
6790func (s *ListBackendEnvironmentsInput) SetAppId(v string) *ListBackendEnvironmentsInput {
6791	s.AppId = &v
6792	return s
6793}
6794
6795// SetEnvironmentName sets the EnvironmentName field's value.
6796func (s *ListBackendEnvironmentsInput) SetEnvironmentName(v string) *ListBackendEnvironmentsInput {
6797	s.EnvironmentName = &v
6798	return s
6799}
6800
6801// SetMaxResults sets the MaxResults field's value.
6802func (s *ListBackendEnvironmentsInput) SetMaxResults(v int64) *ListBackendEnvironmentsInput {
6803	s.MaxResults = &v
6804	return s
6805}
6806
6807// SetNextToken sets the NextToken field's value.
6808func (s *ListBackendEnvironmentsInput) SetNextToken(v string) *ListBackendEnvironmentsInput {
6809	s.NextToken = &v
6810	return s
6811}
6812
6813// Result structure for list backend environments result.
6814type ListBackendEnvironmentsOutput struct {
6815	_ struct{} `type:"structure"`
6816
6817	// List of backend environments for an Amplify App.
6818	//
6819	// BackendEnvironments is a required field
6820	BackendEnvironments []*BackendEnvironment `locationName:"backendEnvironments" type:"list" required:"true"`
6821
6822	// Pagination token. If non-null pagination token is returned in a result, then
6823	// pass its value in another request to fetch more entries.
6824	NextToken *string `locationName:"nextToken" type:"string"`
6825}
6826
6827// String returns the string representation
6828func (s ListBackendEnvironmentsOutput) String() string {
6829	return awsutil.Prettify(s)
6830}
6831
6832// GoString returns the string representation
6833func (s ListBackendEnvironmentsOutput) GoString() string {
6834	return s.String()
6835}
6836
6837// SetBackendEnvironments sets the BackendEnvironments field's value.
6838func (s *ListBackendEnvironmentsOutput) SetBackendEnvironments(v []*BackendEnvironment) *ListBackendEnvironmentsOutput {
6839	s.BackendEnvironments = v
6840	return s
6841}
6842
6843// SetNextToken sets the NextToken field's value.
6844func (s *ListBackendEnvironmentsOutput) SetNextToken(v string) *ListBackendEnvironmentsOutput {
6845	s.NextToken = &v
6846	return s
6847}
6848
6849// Request structure for list branches request.
6850type ListBranchesInput struct {
6851	_ struct{} `type:"structure"`
6852
6853	// Unique Id for an Amplify App.
6854	//
6855	// AppId is a required field
6856	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
6857
6858	// Maximum number of records to list in a single response.
6859	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
6860
6861	// Pagination token. Set to null to start listing branches from start. If a
6862	// non-null pagination token is returned in a result, then pass its value in
6863	// here to list more branches.
6864	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
6865}
6866
6867// String returns the string representation
6868func (s ListBranchesInput) String() string {
6869	return awsutil.Prettify(s)
6870}
6871
6872// GoString returns the string representation
6873func (s ListBranchesInput) GoString() string {
6874	return s.String()
6875}
6876
6877// Validate inspects the fields of the type to determine if they are valid.
6878func (s *ListBranchesInput) Validate() error {
6879	invalidParams := request.ErrInvalidParams{Context: "ListBranchesInput"}
6880	if s.AppId == nil {
6881		invalidParams.Add(request.NewErrParamRequired("AppId"))
6882	}
6883	if s.AppId != nil && len(*s.AppId) < 1 {
6884		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
6885	}
6886	if s.MaxResults != nil && *s.MaxResults < 1 {
6887		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
6888	}
6889
6890	if invalidParams.Len() > 0 {
6891		return invalidParams
6892	}
6893	return nil
6894}
6895
6896// SetAppId sets the AppId field's value.
6897func (s *ListBranchesInput) SetAppId(v string) *ListBranchesInput {
6898	s.AppId = &v
6899	return s
6900}
6901
6902// SetMaxResults sets the MaxResults field's value.
6903func (s *ListBranchesInput) SetMaxResults(v int64) *ListBranchesInput {
6904	s.MaxResults = &v
6905	return s
6906}
6907
6908// SetNextToken sets the NextToken field's value.
6909func (s *ListBranchesInput) SetNextToken(v string) *ListBranchesInput {
6910	s.NextToken = &v
6911	return s
6912}
6913
6914// Result structure for list branches request.
6915type ListBranchesOutput struct {
6916	_ struct{} `type:"structure"`
6917
6918	// List of branches for an Amplify App.
6919	//
6920	// Branches is a required field
6921	Branches []*Branch `locationName:"branches" type:"list" required:"true"`
6922
6923	// Pagination token. If non-null pagination token is returned in a result, then
6924	// pass its value in another request to fetch more entries.
6925	NextToken *string `locationName:"nextToken" type:"string"`
6926}
6927
6928// String returns the string representation
6929func (s ListBranchesOutput) String() string {
6930	return awsutil.Prettify(s)
6931}
6932
6933// GoString returns the string representation
6934func (s ListBranchesOutput) GoString() string {
6935	return s.String()
6936}
6937
6938// SetBranches sets the Branches field's value.
6939func (s *ListBranchesOutput) SetBranches(v []*Branch) *ListBranchesOutput {
6940	s.Branches = v
6941	return s
6942}
6943
6944// SetNextToken sets the NextToken field's value.
6945func (s *ListBranchesOutput) SetNextToken(v string) *ListBranchesOutput {
6946	s.NextToken = &v
6947	return s
6948}
6949
6950// Request structure for the list Domain Associations request.
6951type ListDomainAssociationsInput struct {
6952	_ struct{} `type:"structure"`
6953
6954	// Unique Id for an Amplify App.
6955	//
6956	// AppId is a required field
6957	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
6958
6959	// Maximum number of records to list in a single response.
6960	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
6961
6962	// Pagination token. Set to null to start listing Apps from start. If non-null
6963	// pagination token is returned in a result, then pass its value in here to
6964	// list more projects.
6965	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
6966}
6967
6968// String returns the string representation
6969func (s ListDomainAssociationsInput) String() string {
6970	return awsutil.Prettify(s)
6971}
6972
6973// GoString returns the string representation
6974func (s ListDomainAssociationsInput) GoString() string {
6975	return s.String()
6976}
6977
6978// Validate inspects the fields of the type to determine if they are valid.
6979func (s *ListDomainAssociationsInput) Validate() error {
6980	invalidParams := request.ErrInvalidParams{Context: "ListDomainAssociationsInput"}
6981	if s.AppId == nil {
6982		invalidParams.Add(request.NewErrParamRequired("AppId"))
6983	}
6984	if s.AppId != nil && len(*s.AppId) < 1 {
6985		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
6986	}
6987	if s.MaxResults != nil && *s.MaxResults < 1 {
6988		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
6989	}
6990
6991	if invalidParams.Len() > 0 {
6992		return invalidParams
6993	}
6994	return nil
6995}
6996
6997// SetAppId sets the AppId field's value.
6998func (s *ListDomainAssociationsInput) SetAppId(v string) *ListDomainAssociationsInput {
6999	s.AppId = &v
7000	return s
7001}
7002
7003// SetMaxResults sets the MaxResults field's value.
7004func (s *ListDomainAssociationsInput) SetMaxResults(v int64) *ListDomainAssociationsInput {
7005	s.MaxResults = &v
7006	return s
7007}
7008
7009// SetNextToken sets the NextToken field's value.
7010func (s *ListDomainAssociationsInput) SetNextToken(v string) *ListDomainAssociationsInput {
7011	s.NextToken = &v
7012	return s
7013}
7014
7015// Result structure for the list Domain Association request.
7016type ListDomainAssociationsOutput struct {
7017	_ struct{} `type:"structure"`
7018
7019	// List of Domain Associations.
7020	//
7021	// DomainAssociations is a required field
7022	DomainAssociations []*DomainAssociation `locationName:"domainAssociations" type:"list" required:"true"`
7023
7024	// Pagination token. If non-null pagination token is returned in a result, then
7025	// pass its value in another request to fetch more entries.
7026	NextToken *string `locationName:"nextToken" type:"string"`
7027}
7028
7029// String returns the string representation
7030func (s ListDomainAssociationsOutput) String() string {
7031	return awsutil.Prettify(s)
7032}
7033
7034// GoString returns the string representation
7035func (s ListDomainAssociationsOutput) GoString() string {
7036	return s.String()
7037}
7038
7039// SetDomainAssociations sets the DomainAssociations field's value.
7040func (s *ListDomainAssociationsOutput) SetDomainAssociations(v []*DomainAssociation) *ListDomainAssociationsOutput {
7041	s.DomainAssociations = v
7042	return s
7043}
7044
7045// SetNextToken sets the NextToken field's value.
7046func (s *ListDomainAssociationsOutput) SetNextToken(v string) *ListDomainAssociationsOutput {
7047	s.NextToken = &v
7048	return s
7049}
7050
7051// Request structure for list job request.
7052type ListJobsInput struct {
7053	_ struct{} `type:"structure"`
7054
7055	// Unique Id for an Amplify App.
7056	//
7057	// AppId is a required field
7058	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
7059
7060	// Name for a branch.
7061	//
7062	// BranchName is a required field
7063	BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"`
7064
7065	// Maximum number of records to list in a single response.
7066	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
7067
7068	// Pagination token. Set to null to start listing steps from start. If a non-null
7069	// pagination token is returned in a result, then pass its value in here to
7070	// list more steps.
7071	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
7072}
7073
7074// String returns the string representation
7075func (s ListJobsInput) String() string {
7076	return awsutil.Prettify(s)
7077}
7078
7079// GoString returns the string representation
7080func (s ListJobsInput) GoString() string {
7081	return s.String()
7082}
7083
7084// Validate inspects the fields of the type to determine if they are valid.
7085func (s *ListJobsInput) Validate() error {
7086	invalidParams := request.ErrInvalidParams{Context: "ListJobsInput"}
7087	if s.AppId == nil {
7088		invalidParams.Add(request.NewErrParamRequired("AppId"))
7089	}
7090	if s.AppId != nil && len(*s.AppId) < 1 {
7091		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
7092	}
7093	if s.BranchName == nil {
7094		invalidParams.Add(request.NewErrParamRequired("BranchName"))
7095	}
7096	if s.BranchName != nil && len(*s.BranchName) < 1 {
7097		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
7098	}
7099	if s.MaxResults != nil && *s.MaxResults < 1 {
7100		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
7101	}
7102
7103	if invalidParams.Len() > 0 {
7104		return invalidParams
7105	}
7106	return nil
7107}
7108
7109// SetAppId sets the AppId field's value.
7110func (s *ListJobsInput) SetAppId(v string) *ListJobsInput {
7111	s.AppId = &v
7112	return s
7113}
7114
7115// SetBranchName sets the BranchName field's value.
7116func (s *ListJobsInput) SetBranchName(v string) *ListJobsInput {
7117	s.BranchName = &v
7118	return s
7119}
7120
7121// SetMaxResults sets the MaxResults field's value.
7122func (s *ListJobsInput) SetMaxResults(v int64) *ListJobsInput {
7123	s.MaxResults = &v
7124	return s
7125}
7126
7127// SetNextToken sets the NextToken field's value.
7128func (s *ListJobsInput) SetNextToken(v string) *ListJobsInput {
7129	s.NextToken = &v
7130	return s
7131}
7132
7133// Maximum number of records to list in a single response.
7134type ListJobsOutput struct {
7135	_ struct{} `type:"structure"`
7136
7137	// Result structure for list job result request.
7138	//
7139	// JobSummaries is a required field
7140	JobSummaries []*JobSummary `locationName:"jobSummaries" type:"list" required:"true"`
7141
7142	// Pagination token. If non-null pagination token is returned in a result, then
7143	// pass its value in another request to fetch more entries.
7144	NextToken *string `locationName:"nextToken" type:"string"`
7145}
7146
7147// String returns the string representation
7148func (s ListJobsOutput) String() string {
7149	return awsutil.Prettify(s)
7150}
7151
7152// GoString returns the string representation
7153func (s ListJobsOutput) GoString() string {
7154	return s.String()
7155}
7156
7157// SetJobSummaries sets the JobSummaries field's value.
7158func (s *ListJobsOutput) SetJobSummaries(v []*JobSummary) *ListJobsOutput {
7159	s.JobSummaries = v
7160	return s
7161}
7162
7163// SetNextToken sets the NextToken field's value.
7164func (s *ListJobsOutput) SetNextToken(v string) *ListJobsOutput {
7165	s.NextToken = &v
7166	return s
7167}
7168
7169// Request structure used to list tags for resource.
7170type ListTagsForResourceInput struct {
7171	_ struct{} `type:"structure"`
7172
7173	// Resource arn used to list tags.
7174	//
7175	// ResourceArn is a required field
7176	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
7177}
7178
7179// String returns the string representation
7180func (s ListTagsForResourceInput) String() string {
7181	return awsutil.Prettify(s)
7182}
7183
7184// GoString returns the string representation
7185func (s ListTagsForResourceInput) GoString() string {
7186	return s.String()
7187}
7188
7189// Validate inspects the fields of the type to determine if they are valid.
7190func (s *ListTagsForResourceInput) Validate() error {
7191	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
7192	if s.ResourceArn == nil {
7193		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
7194	}
7195	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
7196		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
7197	}
7198
7199	if invalidParams.Len() > 0 {
7200		return invalidParams
7201	}
7202	return nil
7203}
7204
7205// SetResourceArn sets the ResourceArn field's value.
7206func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
7207	s.ResourceArn = &v
7208	return s
7209}
7210
7211// Response for list tags.
7212type ListTagsForResourceOutput struct {
7213	_ struct{} `type:"structure"`
7214
7215	// Tags result for response.
7216	Tags map[string]*string `locationName:"tags" min:"1" type:"map"`
7217}
7218
7219// String returns the string representation
7220func (s ListTagsForResourceOutput) String() string {
7221	return awsutil.Prettify(s)
7222}
7223
7224// GoString returns the string representation
7225func (s ListTagsForResourceOutput) GoString() string {
7226	return s.String()
7227}
7228
7229// SetTags sets the Tags field's value.
7230func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
7231	s.Tags = v
7232	return s
7233}
7234
7235// Request structure for the list webhooks request.
7236type ListWebhooksInput struct {
7237	_ struct{} `type:"structure"`
7238
7239	// Unique Id for an Amplify App.
7240	//
7241	// AppId is a required field
7242	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
7243
7244	// Maximum number of records to list in a single response.
7245	MaxResults *int64 `location:"querystring" locationName:"maxResults" min:"1" type:"integer"`
7246
7247	// Pagination token. Set to null to start listing webhooks from start. If non-null
7248	// pagination token is returned in a result, then pass its value in here to
7249	// list more webhooks.
7250	NextToken *string `location:"querystring" locationName:"nextToken" type:"string"`
7251}
7252
7253// String returns the string representation
7254func (s ListWebhooksInput) String() string {
7255	return awsutil.Prettify(s)
7256}
7257
7258// GoString returns the string representation
7259func (s ListWebhooksInput) GoString() string {
7260	return s.String()
7261}
7262
7263// Validate inspects the fields of the type to determine if they are valid.
7264func (s *ListWebhooksInput) Validate() error {
7265	invalidParams := request.ErrInvalidParams{Context: "ListWebhooksInput"}
7266	if s.AppId == nil {
7267		invalidParams.Add(request.NewErrParamRequired("AppId"))
7268	}
7269	if s.AppId != nil && len(*s.AppId) < 1 {
7270		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
7271	}
7272	if s.MaxResults != nil && *s.MaxResults < 1 {
7273		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
7274	}
7275
7276	if invalidParams.Len() > 0 {
7277		return invalidParams
7278	}
7279	return nil
7280}
7281
7282// SetAppId sets the AppId field's value.
7283func (s *ListWebhooksInput) SetAppId(v string) *ListWebhooksInput {
7284	s.AppId = &v
7285	return s
7286}
7287
7288// SetMaxResults sets the MaxResults field's value.
7289func (s *ListWebhooksInput) SetMaxResults(v int64) *ListWebhooksInput {
7290	s.MaxResults = &v
7291	return s
7292}
7293
7294// SetNextToken sets the NextToken field's value.
7295func (s *ListWebhooksInput) SetNextToken(v string) *ListWebhooksInput {
7296	s.NextToken = &v
7297	return s
7298}
7299
7300// Result structure for the list webhooks request.
7301type ListWebhooksOutput struct {
7302	_ struct{} `type:"structure"`
7303
7304	// Pagination token. If non-null pagination token is returned in a result, then
7305	// pass its value in another request to fetch more entries.
7306	NextToken *string `locationName:"nextToken" type:"string"`
7307
7308	// List of webhooks.
7309	//
7310	// Webhooks is a required field
7311	Webhooks []*Webhook `locationName:"webhooks" type:"list" required:"true"`
7312}
7313
7314// String returns the string representation
7315func (s ListWebhooksOutput) String() string {
7316	return awsutil.Prettify(s)
7317}
7318
7319// GoString returns the string representation
7320func (s ListWebhooksOutput) GoString() string {
7321	return s.String()
7322}
7323
7324// SetNextToken sets the NextToken field's value.
7325func (s *ListWebhooksOutput) SetNextToken(v string) *ListWebhooksOutput {
7326	s.NextToken = &v
7327	return s
7328}
7329
7330// SetWebhooks sets the Webhooks field's value.
7331func (s *ListWebhooksOutput) SetWebhooks(v []*Webhook) *ListWebhooksOutput {
7332	s.Webhooks = v
7333	return s
7334}
7335
7336// Structure with Production Branch information.
7337type ProductionBranch struct {
7338	_ struct{} `type:"structure"`
7339
7340	// Branch Name for Production Branch.
7341	BranchName *string `locationName:"branchName" min:"1" type:"string"`
7342
7343	// Last Deploy Time of Production Branch.
7344	LastDeployTime *time.Time `locationName:"lastDeployTime" type:"timestamp"`
7345
7346	// Status of Production Branch.
7347	Status *string `locationName:"status" min:"3" type:"string"`
7348
7349	// Thumbnail URL for Production Branch.
7350	ThumbnailUrl *string `locationName:"thumbnailUrl" min:"1" type:"string"`
7351}
7352
7353// String returns the string representation
7354func (s ProductionBranch) String() string {
7355	return awsutil.Prettify(s)
7356}
7357
7358// GoString returns the string representation
7359func (s ProductionBranch) GoString() string {
7360	return s.String()
7361}
7362
7363// SetBranchName sets the BranchName field's value.
7364func (s *ProductionBranch) SetBranchName(v string) *ProductionBranch {
7365	s.BranchName = &v
7366	return s
7367}
7368
7369// SetLastDeployTime sets the LastDeployTime field's value.
7370func (s *ProductionBranch) SetLastDeployTime(v time.Time) *ProductionBranch {
7371	s.LastDeployTime = &v
7372	return s
7373}
7374
7375// SetStatus sets the Status field's value.
7376func (s *ProductionBranch) SetStatus(v string) *ProductionBranch {
7377	s.Status = &v
7378	return s
7379}
7380
7381// SetThumbnailUrl sets the ThumbnailUrl field's value.
7382func (s *ProductionBranch) SetThumbnailUrl(v string) *ProductionBranch {
7383	s.ThumbnailUrl = &v
7384	return s
7385}
7386
7387// Request structure for start a deployment.
7388type StartDeploymentInput struct {
7389	_ struct{} `type:"structure"`
7390
7391	// Unique Id for an Amplify App.
7392	//
7393	// AppId is a required field
7394	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
7395
7396	// Name for the branch, for the Job.
7397	//
7398	// BranchName is a required field
7399	BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"`
7400
7401	// The job id for this deployment, generated by create deployment request.
7402	JobId *string `locationName:"jobId" type:"string"`
7403
7404	// The sourceUrl for this deployment, used when calling start deployment without
7405	// create deployment. SourceUrl can be any HTTP GET url that is public accessible
7406	// and downloads a single zip.
7407	SourceUrl *string `locationName:"sourceUrl" type:"string"`
7408}
7409
7410// String returns the string representation
7411func (s StartDeploymentInput) String() string {
7412	return awsutil.Prettify(s)
7413}
7414
7415// GoString returns the string representation
7416func (s StartDeploymentInput) GoString() string {
7417	return s.String()
7418}
7419
7420// Validate inspects the fields of the type to determine if they are valid.
7421func (s *StartDeploymentInput) Validate() error {
7422	invalidParams := request.ErrInvalidParams{Context: "StartDeploymentInput"}
7423	if s.AppId == nil {
7424		invalidParams.Add(request.NewErrParamRequired("AppId"))
7425	}
7426	if s.AppId != nil && len(*s.AppId) < 1 {
7427		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
7428	}
7429	if s.BranchName == nil {
7430		invalidParams.Add(request.NewErrParamRequired("BranchName"))
7431	}
7432	if s.BranchName != nil && len(*s.BranchName) < 1 {
7433		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
7434	}
7435
7436	if invalidParams.Len() > 0 {
7437		return invalidParams
7438	}
7439	return nil
7440}
7441
7442// SetAppId sets the AppId field's value.
7443func (s *StartDeploymentInput) SetAppId(v string) *StartDeploymentInput {
7444	s.AppId = &v
7445	return s
7446}
7447
7448// SetBranchName sets the BranchName field's value.
7449func (s *StartDeploymentInput) SetBranchName(v string) *StartDeploymentInput {
7450	s.BranchName = &v
7451	return s
7452}
7453
7454// SetJobId sets the JobId field's value.
7455func (s *StartDeploymentInput) SetJobId(v string) *StartDeploymentInput {
7456	s.JobId = &v
7457	return s
7458}
7459
7460// SetSourceUrl sets the SourceUrl field's value.
7461func (s *StartDeploymentInput) SetSourceUrl(v string) *StartDeploymentInput {
7462	s.SourceUrl = &v
7463	return s
7464}
7465
7466// Result structure for start a deployment.
7467type StartDeploymentOutput struct {
7468	_ struct{} `type:"structure"`
7469
7470	// Summary for the Job.
7471	//
7472	// JobSummary is a required field
7473	JobSummary *JobSummary `locationName:"jobSummary" type:"structure" required:"true"`
7474}
7475
7476// String returns the string representation
7477func (s StartDeploymentOutput) String() string {
7478	return awsutil.Prettify(s)
7479}
7480
7481// GoString returns the string representation
7482func (s StartDeploymentOutput) GoString() string {
7483	return s.String()
7484}
7485
7486// SetJobSummary sets the JobSummary field's value.
7487func (s *StartDeploymentOutput) SetJobSummary(v *JobSummary) *StartDeploymentOutput {
7488	s.JobSummary = v
7489	return s
7490}
7491
7492// Request structure for Start job request.
7493type StartJobInput struct {
7494	_ struct{} `type:"structure"`
7495
7496	// Unique Id for an Amplify App.
7497	//
7498	// AppId is a required field
7499	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
7500
7501	// Name for the branch, for the Job.
7502	//
7503	// BranchName is a required field
7504	BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"`
7505
7506	// Commit Id from 3rd party repository provider for the Job.
7507	CommitId *string `locationName:"commitId" type:"string"`
7508
7509	// Commit message from 3rd party repository provider for the Job.
7510	CommitMessage *string `locationName:"commitMessage" type:"string"`
7511
7512	// Commit date / time for the Job.
7513	CommitTime *time.Time `locationName:"commitTime" type:"timestamp"`
7514
7515	// Unique Id for an existing job. Required for "RETRY" JobType.
7516	JobId *string `locationName:"jobId" type:"string"`
7517
7518	// Descriptive reason for starting this job.
7519	JobReason *string `locationName:"jobReason" type:"string"`
7520
7521	// Type for the Job. Available JobTypes are: \n "RELEASE": Start a new job with
7522	// the latest change from the specified branch. Only available for apps that
7523	// have connected to a repository. "RETRY": Retry an existing job. JobId is
7524	// required for this type of job.
7525	//
7526	// JobType is a required field
7527	JobType *string `locationName:"jobType" type:"string" required:"true" enum:"JobType"`
7528}
7529
7530// String returns the string representation
7531func (s StartJobInput) String() string {
7532	return awsutil.Prettify(s)
7533}
7534
7535// GoString returns the string representation
7536func (s StartJobInput) GoString() string {
7537	return s.String()
7538}
7539
7540// Validate inspects the fields of the type to determine if they are valid.
7541func (s *StartJobInput) Validate() error {
7542	invalidParams := request.ErrInvalidParams{Context: "StartJobInput"}
7543	if s.AppId == nil {
7544		invalidParams.Add(request.NewErrParamRequired("AppId"))
7545	}
7546	if s.AppId != nil && len(*s.AppId) < 1 {
7547		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
7548	}
7549	if s.BranchName == nil {
7550		invalidParams.Add(request.NewErrParamRequired("BranchName"))
7551	}
7552	if s.BranchName != nil && len(*s.BranchName) < 1 {
7553		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
7554	}
7555	if s.JobType == nil {
7556		invalidParams.Add(request.NewErrParamRequired("JobType"))
7557	}
7558
7559	if invalidParams.Len() > 0 {
7560		return invalidParams
7561	}
7562	return nil
7563}
7564
7565// SetAppId sets the AppId field's value.
7566func (s *StartJobInput) SetAppId(v string) *StartJobInput {
7567	s.AppId = &v
7568	return s
7569}
7570
7571// SetBranchName sets the BranchName field's value.
7572func (s *StartJobInput) SetBranchName(v string) *StartJobInput {
7573	s.BranchName = &v
7574	return s
7575}
7576
7577// SetCommitId sets the CommitId field's value.
7578func (s *StartJobInput) SetCommitId(v string) *StartJobInput {
7579	s.CommitId = &v
7580	return s
7581}
7582
7583// SetCommitMessage sets the CommitMessage field's value.
7584func (s *StartJobInput) SetCommitMessage(v string) *StartJobInput {
7585	s.CommitMessage = &v
7586	return s
7587}
7588
7589// SetCommitTime sets the CommitTime field's value.
7590func (s *StartJobInput) SetCommitTime(v time.Time) *StartJobInput {
7591	s.CommitTime = &v
7592	return s
7593}
7594
7595// SetJobId sets the JobId field's value.
7596func (s *StartJobInput) SetJobId(v string) *StartJobInput {
7597	s.JobId = &v
7598	return s
7599}
7600
7601// SetJobReason sets the JobReason field's value.
7602func (s *StartJobInput) SetJobReason(v string) *StartJobInput {
7603	s.JobReason = &v
7604	return s
7605}
7606
7607// SetJobType sets the JobType field's value.
7608func (s *StartJobInput) SetJobType(v string) *StartJobInput {
7609	s.JobType = &v
7610	return s
7611}
7612
7613// Result structure for run job request.
7614type StartJobOutput struct {
7615	_ struct{} `type:"structure"`
7616
7617	// Summary for the Job.
7618	//
7619	// JobSummary is a required field
7620	JobSummary *JobSummary `locationName:"jobSummary" type:"structure" required:"true"`
7621}
7622
7623// String returns the string representation
7624func (s StartJobOutput) String() string {
7625	return awsutil.Prettify(s)
7626}
7627
7628// GoString returns the string representation
7629func (s StartJobOutput) GoString() string {
7630	return s.String()
7631}
7632
7633// SetJobSummary sets the JobSummary field's value.
7634func (s *StartJobOutput) SetJobSummary(v *JobSummary) *StartJobOutput {
7635	s.JobSummary = v
7636	return s
7637}
7638
7639// Structure for an execution step for an execution job, for an Amplify App.
7640type Step struct {
7641	_ struct{} `type:"structure"`
7642
7643	// URL to the artifact for the execution step.
7644	ArtifactsUrl *string `locationName:"artifactsUrl" type:"string"`
7645
7646	// The context for current step, will include build image if step is build.
7647	Context *string `locationName:"context" type:"string"`
7648
7649	// End date/ time of the execution step.
7650	//
7651	// EndTime is a required field
7652	EndTime *time.Time `locationName:"endTime" type:"timestamp" required:"true"`
7653
7654	// URL to the logs for the execution step.
7655	LogUrl *string `locationName:"logUrl" type:"string"`
7656
7657	// List of screenshot URLs for the execution step, if relevant.
7658	Screenshots map[string]*string `locationName:"screenshots" type:"map"`
7659
7660	// Start date/ time of the execution step.
7661	//
7662	// StartTime is a required field
7663	StartTime *time.Time `locationName:"startTime" type:"timestamp" required:"true"`
7664
7665	// Status of the execution step.
7666	//
7667	// Status is a required field
7668	Status *string `locationName:"status" type:"string" required:"true" enum:"JobStatus"`
7669
7670	// The reason for current step status.
7671	StatusReason *string `locationName:"statusReason" type:"string"`
7672
7673	// Name of the execution step.
7674	//
7675	// StepName is a required field
7676	StepName *string `locationName:"stepName" type:"string" required:"true"`
7677
7678	// URL to the test artifact for the execution step.
7679	TestArtifactsUrl *string `locationName:"testArtifactsUrl" type:"string"`
7680
7681	// URL to the test config for the execution step.
7682	TestConfigUrl *string `locationName:"testConfigUrl" type:"string"`
7683}
7684
7685// String returns the string representation
7686func (s Step) String() string {
7687	return awsutil.Prettify(s)
7688}
7689
7690// GoString returns the string representation
7691func (s Step) GoString() string {
7692	return s.String()
7693}
7694
7695// SetArtifactsUrl sets the ArtifactsUrl field's value.
7696func (s *Step) SetArtifactsUrl(v string) *Step {
7697	s.ArtifactsUrl = &v
7698	return s
7699}
7700
7701// SetContext sets the Context field's value.
7702func (s *Step) SetContext(v string) *Step {
7703	s.Context = &v
7704	return s
7705}
7706
7707// SetEndTime sets the EndTime field's value.
7708func (s *Step) SetEndTime(v time.Time) *Step {
7709	s.EndTime = &v
7710	return s
7711}
7712
7713// SetLogUrl sets the LogUrl field's value.
7714func (s *Step) SetLogUrl(v string) *Step {
7715	s.LogUrl = &v
7716	return s
7717}
7718
7719// SetScreenshots sets the Screenshots field's value.
7720func (s *Step) SetScreenshots(v map[string]*string) *Step {
7721	s.Screenshots = v
7722	return s
7723}
7724
7725// SetStartTime sets the StartTime field's value.
7726func (s *Step) SetStartTime(v time.Time) *Step {
7727	s.StartTime = &v
7728	return s
7729}
7730
7731// SetStatus sets the Status field's value.
7732func (s *Step) SetStatus(v string) *Step {
7733	s.Status = &v
7734	return s
7735}
7736
7737// SetStatusReason sets the StatusReason field's value.
7738func (s *Step) SetStatusReason(v string) *Step {
7739	s.StatusReason = &v
7740	return s
7741}
7742
7743// SetStepName sets the StepName field's value.
7744func (s *Step) SetStepName(v string) *Step {
7745	s.StepName = &v
7746	return s
7747}
7748
7749// SetTestArtifactsUrl sets the TestArtifactsUrl field's value.
7750func (s *Step) SetTestArtifactsUrl(v string) *Step {
7751	s.TestArtifactsUrl = &v
7752	return s
7753}
7754
7755// SetTestConfigUrl sets the TestConfigUrl field's value.
7756func (s *Step) SetTestConfigUrl(v string) *Step {
7757	s.TestConfigUrl = &v
7758	return s
7759}
7760
7761// Request structure for stop job request.
7762type StopJobInput struct {
7763	_ struct{} `type:"structure"`
7764
7765	// Unique Id for an Amplify App.
7766	//
7767	// AppId is a required field
7768	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
7769
7770	// Name for the branch, for the Job.
7771	//
7772	// BranchName is a required field
7773	BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"`
7774
7775	// Unique Id for the Job.
7776	//
7777	// JobId is a required field
7778	JobId *string `location:"uri" locationName:"jobId" type:"string" required:"true"`
7779}
7780
7781// String returns the string representation
7782func (s StopJobInput) String() string {
7783	return awsutil.Prettify(s)
7784}
7785
7786// GoString returns the string representation
7787func (s StopJobInput) GoString() string {
7788	return s.String()
7789}
7790
7791// Validate inspects the fields of the type to determine if they are valid.
7792func (s *StopJobInput) Validate() error {
7793	invalidParams := request.ErrInvalidParams{Context: "StopJobInput"}
7794	if s.AppId == nil {
7795		invalidParams.Add(request.NewErrParamRequired("AppId"))
7796	}
7797	if s.AppId != nil && len(*s.AppId) < 1 {
7798		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
7799	}
7800	if s.BranchName == nil {
7801		invalidParams.Add(request.NewErrParamRequired("BranchName"))
7802	}
7803	if s.BranchName != nil && len(*s.BranchName) < 1 {
7804		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
7805	}
7806	if s.JobId == nil {
7807		invalidParams.Add(request.NewErrParamRequired("JobId"))
7808	}
7809	if s.JobId != nil && len(*s.JobId) < 1 {
7810		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
7811	}
7812
7813	if invalidParams.Len() > 0 {
7814		return invalidParams
7815	}
7816	return nil
7817}
7818
7819// SetAppId sets the AppId field's value.
7820func (s *StopJobInput) SetAppId(v string) *StopJobInput {
7821	s.AppId = &v
7822	return s
7823}
7824
7825// SetBranchName sets the BranchName field's value.
7826func (s *StopJobInput) SetBranchName(v string) *StopJobInput {
7827	s.BranchName = &v
7828	return s
7829}
7830
7831// SetJobId sets the JobId field's value.
7832func (s *StopJobInput) SetJobId(v string) *StopJobInput {
7833	s.JobId = &v
7834	return s
7835}
7836
7837// Result structure for the stop job request.
7838type StopJobOutput struct {
7839	_ struct{} `type:"structure"`
7840
7841	// Summary for the Job.
7842	//
7843	// JobSummary is a required field
7844	JobSummary *JobSummary `locationName:"jobSummary" type:"structure" required:"true"`
7845}
7846
7847// String returns the string representation
7848func (s StopJobOutput) String() string {
7849	return awsutil.Prettify(s)
7850}
7851
7852// GoString returns the string representation
7853func (s StopJobOutput) GoString() string {
7854	return s.String()
7855}
7856
7857// SetJobSummary sets the JobSummary field's value.
7858func (s *StopJobOutput) SetJobSummary(v *JobSummary) *StopJobOutput {
7859	s.JobSummary = v
7860	return s
7861}
7862
7863// Subdomain for the Domain Association.
7864type SubDomain struct {
7865	_ struct{} `type:"structure"`
7866
7867	// DNS record for the Subdomain.
7868	//
7869	// DnsRecord is a required field
7870	DnsRecord *string `locationName:"dnsRecord" type:"string" required:"true"`
7871
7872	// Setting structure for the Subdomain.
7873	//
7874	// SubDomainSetting is a required field
7875	SubDomainSetting *SubDomainSetting `locationName:"subDomainSetting" type:"structure" required:"true"`
7876
7877	// Verified status of the Subdomain
7878	//
7879	// Verified is a required field
7880	Verified *bool `locationName:"verified" type:"boolean" required:"true"`
7881}
7882
7883// String returns the string representation
7884func (s SubDomain) String() string {
7885	return awsutil.Prettify(s)
7886}
7887
7888// GoString returns the string representation
7889func (s SubDomain) GoString() string {
7890	return s.String()
7891}
7892
7893// SetDnsRecord sets the DnsRecord field's value.
7894func (s *SubDomain) SetDnsRecord(v string) *SubDomain {
7895	s.DnsRecord = &v
7896	return s
7897}
7898
7899// SetSubDomainSetting sets the SubDomainSetting field's value.
7900func (s *SubDomain) SetSubDomainSetting(v *SubDomainSetting) *SubDomain {
7901	s.SubDomainSetting = v
7902	return s
7903}
7904
7905// SetVerified sets the Verified field's value.
7906func (s *SubDomain) SetVerified(v bool) *SubDomain {
7907	s.Verified = &v
7908	return s
7909}
7910
7911// Setting for the Subdomain.
7912type SubDomainSetting struct {
7913	_ struct{} `type:"structure"`
7914
7915	// Branch name setting for the Subdomain.
7916	//
7917	// BranchName is a required field
7918	BranchName *string `locationName:"branchName" min:"1" type:"string" required:"true"`
7919
7920	// Prefix setting for the Subdomain.
7921	//
7922	// Prefix is a required field
7923	Prefix *string `locationName:"prefix" type:"string" required:"true"`
7924}
7925
7926// String returns the string representation
7927func (s SubDomainSetting) String() string {
7928	return awsutil.Prettify(s)
7929}
7930
7931// GoString returns the string representation
7932func (s SubDomainSetting) GoString() string {
7933	return s.String()
7934}
7935
7936// Validate inspects the fields of the type to determine if they are valid.
7937func (s *SubDomainSetting) Validate() error {
7938	invalidParams := request.ErrInvalidParams{Context: "SubDomainSetting"}
7939	if s.BranchName == nil {
7940		invalidParams.Add(request.NewErrParamRequired("BranchName"))
7941	}
7942	if s.BranchName != nil && len(*s.BranchName) < 1 {
7943		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
7944	}
7945	if s.Prefix == nil {
7946		invalidParams.Add(request.NewErrParamRequired("Prefix"))
7947	}
7948
7949	if invalidParams.Len() > 0 {
7950		return invalidParams
7951	}
7952	return nil
7953}
7954
7955// SetBranchName sets the BranchName field's value.
7956func (s *SubDomainSetting) SetBranchName(v string) *SubDomainSetting {
7957	s.BranchName = &v
7958	return s
7959}
7960
7961// SetPrefix sets the Prefix field's value.
7962func (s *SubDomainSetting) SetPrefix(v string) *SubDomainSetting {
7963	s.Prefix = &v
7964	return s
7965}
7966
7967// Request structure used to tag resource.
7968type TagResourceInput struct {
7969	_ struct{} `type:"structure"`
7970
7971	// Resource arn used to tag resource.
7972	//
7973	// ResourceArn is a required field
7974	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
7975
7976	// Tags used to tag resource.
7977	//
7978	// Tags is a required field
7979	Tags map[string]*string `locationName:"tags" min:"1" type:"map" required:"true"`
7980}
7981
7982// String returns the string representation
7983func (s TagResourceInput) String() string {
7984	return awsutil.Prettify(s)
7985}
7986
7987// GoString returns the string representation
7988func (s TagResourceInput) GoString() string {
7989	return s.String()
7990}
7991
7992// Validate inspects the fields of the type to determine if they are valid.
7993func (s *TagResourceInput) Validate() error {
7994	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
7995	if s.ResourceArn == nil {
7996		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
7997	}
7998	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
7999		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
8000	}
8001	if s.Tags == nil {
8002		invalidParams.Add(request.NewErrParamRequired("Tags"))
8003	}
8004	if s.Tags != nil && len(s.Tags) < 1 {
8005		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
8006	}
8007
8008	if invalidParams.Len() > 0 {
8009		return invalidParams
8010	}
8011	return nil
8012}
8013
8014// SetResourceArn sets the ResourceArn field's value.
8015func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
8016	s.ResourceArn = &v
8017	return s
8018}
8019
8020// SetTags sets the Tags field's value.
8021func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
8022	s.Tags = v
8023	return s
8024}
8025
8026// Response for tag resource.
8027type TagResourceOutput struct {
8028	_ struct{} `type:"structure"`
8029}
8030
8031// String returns the string representation
8032func (s TagResourceOutput) String() string {
8033	return awsutil.Prettify(s)
8034}
8035
8036// GoString returns the string representation
8037func (s TagResourceOutput) GoString() string {
8038	return s.String()
8039}
8040
8041// Request structure used to untag resource.
8042type UntagResourceInput struct {
8043	_ struct{} `type:"structure"`
8044
8045	// Resource arn used to untag resource.
8046	//
8047	// ResourceArn is a required field
8048	ResourceArn *string `location:"uri" locationName:"resourceArn" type:"string" required:"true"`
8049
8050	// Tag keys used to untag resource.
8051	//
8052	// TagKeys is a required field
8053	TagKeys []*string `location:"querystring" locationName:"tagKeys" min:"1" type:"list" required:"true"`
8054}
8055
8056// String returns the string representation
8057func (s UntagResourceInput) String() string {
8058	return awsutil.Prettify(s)
8059}
8060
8061// GoString returns the string representation
8062func (s UntagResourceInput) GoString() string {
8063	return s.String()
8064}
8065
8066// Validate inspects the fields of the type to determine if they are valid.
8067func (s *UntagResourceInput) Validate() error {
8068	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
8069	if s.ResourceArn == nil {
8070		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
8071	}
8072	if s.ResourceArn != nil && len(*s.ResourceArn) < 1 {
8073		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 1))
8074	}
8075	if s.TagKeys == nil {
8076		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
8077	}
8078	if s.TagKeys != nil && len(s.TagKeys) < 1 {
8079		invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1))
8080	}
8081
8082	if invalidParams.Len() > 0 {
8083		return invalidParams
8084	}
8085	return nil
8086}
8087
8088// SetResourceArn sets the ResourceArn field's value.
8089func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
8090	s.ResourceArn = &v
8091	return s
8092}
8093
8094// SetTagKeys sets the TagKeys field's value.
8095func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
8096	s.TagKeys = v
8097	return s
8098}
8099
8100// Response for untag resource.
8101type UntagResourceOutput struct {
8102	_ struct{} `type:"structure"`
8103}
8104
8105// String returns the string representation
8106func (s UntagResourceOutput) String() string {
8107	return awsutil.Prettify(s)
8108}
8109
8110// GoString returns the string representation
8111func (s UntagResourceOutput) GoString() string {
8112	return s.String()
8113}
8114
8115// Request structure for update App request.
8116type UpdateAppInput struct {
8117	_ struct{} `type:"structure"`
8118
8119	// Personal Access token for 3rd party source control system for an Amplify
8120	// App, used to create webhook and read-only deploy key. Token is not stored.
8121	AccessToken *string `locationName:"accessToken" min:"1" type:"string"`
8122
8123	// Unique Id for an Amplify App.
8124	//
8125	// AppId is a required field
8126	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
8127
8128	// Automated branch creation branchConfig for the Amplify App.
8129	AutoBranchCreationConfig *AutoBranchCreationConfig `locationName:"autoBranchCreationConfig" type:"structure"`
8130
8131	// Automated branch creation glob patterns for the Amplify App.
8132	AutoBranchCreationPatterns []*string `locationName:"autoBranchCreationPatterns" type:"list"`
8133
8134	// Basic Authorization credentials for an Amplify App.
8135	BasicAuthCredentials *string `locationName:"basicAuthCredentials" type:"string"`
8136
8137	// BuildSpec for an Amplify App.
8138	BuildSpec *string `locationName:"buildSpec" min:"1" type:"string"`
8139
8140	// Custom redirect / rewrite rules for an Amplify App.
8141	CustomRules []*CustomRule `locationName:"customRules" type:"list"`
8142
8143	// Description for an Amplify App.
8144	Description *string `locationName:"description" type:"string"`
8145
8146	// Enables automated branch creation for the Amplify App.
8147	EnableAutoBranchCreation *bool `locationName:"enableAutoBranchCreation" type:"boolean"`
8148
8149	// Enables Basic Authorization for an Amplify App.
8150	EnableBasicAuth *bool `locationName:"enableBasicAuth" type:"boolean"`
8151
8152	// Enables branch auto-building for an Amplify App.
8153	EnableBranchAutoBuild *bool `locationName:"enableBranchAutoBuild" type:"boolean"`
8154
8155	// Environment Variables for an Amplify App.
8156	EnvironmentVariables map[string]*string `locationName:"environmentVariables" type:"map"`
8157
8158	// IAM service role for an Amplify App.
8159	IamServiceRoleArn *string `locationName:"iamServiceRoleArn" min:"1" type:"string"`
8160
8161	// Name for an Amplify App.
8162	Name *string `locationName:"name" min:"1" type:"string"`
8163
8164	// OAuth token for 3rd party source control system for an Amplify App, used
8165	// to create webhook and read-only deploy key. OAuth token is not stored.
8166	OauthToken *string `locationName:"oauthToken" type:"string"`
8167
8168	// Platform for an Amplify App.
8169	Platform *string `locationName:"platform" type:"string" enum:"Platform"`
8170
8171	// Repository for an Amplify App
8172	Repository *string `locationName:"repository" type:"string"`
8173}
8174
8175// String returns the string representation
8176func (s UpdateAppInput) String() string {
8177	return awsutil.Prettify(s)
8178}
8179
8180// GoString returns the string representation
8181func (s UpdateAppInput) GoString() string {
8182	return s.String()
8183}
8184
8185// Validate inspects the fields of the type to determine if they are valid.
8186func (s *UpdateAppInput) Validate() error {
8187	invalidParams := request.ErrInvalidParams{Context: "UpdateAppInput"}
8188	if s.AccessToken != nil && len(*s.AccessToken) < 1 {
8189		invalidParams.Add(request.NewErrParamMinLen("AccessToken", 1))
8190	}
8191	if s.AppId == nil {
8192		invalidParams.Add(request.NewErrParamRequired("AppId"))
8193	}
8194	if s.AppId != nil && len(*s.AppId) < 1 {
8195		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
8196	}
8197	if s.BuildSpec != nil && len(*s.BuildSpec) < 1 {
8198		invalidParams.Add(request.NewErrParamMinLen("BuildSpec", 1))
8199	}
8200	if s.IamServiceRoleArn != nil && len(*s.IamServiceRoleArn) < 1 {
8201		invalidParams.Add(request.NewErrParamMinLen("IamServiceRoleArn", 1))
8202	}
8203	if s.Name != nil && len(*s.Name) < 1 {
8204		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
8205	}
8206	if s.AutoBranchCreationConfig != nil {
8207		if err := s.AutoBranchCreationConfig.Validate(); err != nil {
8208			invalidParams.AddNested("AutoBranchCreationConfig", err.(request.ErrInvalidParams))
8209		}
8210	}
8211	if s.CustomRules != nil {
8212		for i, v := range s.CustomRules {
8213			if v == nil {
8214				continue
8215			}
8216			if err := v.Validate(); err != nil {
8217				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "CustomRules", i), err.(request.ErrInvalidParams))
8218			}
8219		}
8220	}
8221
8222	if invalidParams.Len() > 0 {
8223		return invalidParams
8224	}
8225	return nil
8226}
8227
8228// SetAccessToken sets the AccessToken field's value.
8229func (s *UpdateAppInput) SetAccessToken(v string) *UpdateAppInput {
8230	s.AccessToken = &v
8231	return s
8232}
8233
8234// SetAppId sets the AppId field's value.
8235func (s *UpdateAppInput) SetAppId(v string) *UpdateAppInput {
8236	s.AppId = &v
8237	return s
8238}
8239
8240// SetAutoBranchCreationConfig sets the AutoBranchCreationConfig field's value.
8241func (s *UpdateAppInput) SetAutoBranchCreationConfig(v *AutoBranchCreationConfig) *UpdateAppInput {
8242	s.AutoBranchCreationConfig = v
8243	return s
8244}
8245
8246// SetAutoBranchCreationPatterns sets the AutoBranchCreationPatterns field's value.
8247func (s *UpdateAppInput) SetAutoBranchCreationPatterns(v []*string) *UpdateAppInput {
8248	s.AutoBranchCreationPatterns = v
8249	return s
8250}
8251
8252// SetBasicAuthCredentials sets the BasicAuthCredentials field's value.
8253func (s *UpdateAppInput) SetBasicAuthCredentials(v string) *UpdateAppInput {
8254	s.BasicAuthCredentials = &v
8255	return s
8256}
8257
8258// SetBuildSpec sets the BuildSpec field's value.
8259func (s *UpdateAppInput) SetBuildSpec(v string) *UpdateAppInput {
8260	s.BuildSpec = &v
8261	return s
8262}
8263
8264// SetCustomRules sets the CustomRules field's value.
8265func (s *UpdateAppInput) SetCustomRules(v []*CustomRule) *UpdateAppInput {
8266	s.CustomRules = v
8267	return s
8268}
8269
8270// SetDescription sets the Description field's value.
8271func (s *UpdateAppInput) SetDescription(v string) *UpdateAppInput {
8272	s.Description = &v
8273	return s
8274}
8275
8276// SetEnableAutoBranchCreation sets the EnableAutoBranchCreation field's value.
8277func (s *UpdateAppInput) SetEnableAutoBranchCreation(v bool) *UpdateAppInput {
8278	s.EnableAutoBranchCreation = &v
8279	return s
8280}
8281
8282// SetEnableBasicAuth sets the EnableBasicAuth field's value.
8283func (s *UpdateAppInput) SetEnableBasicAuth(v bool) *UpdateAppInput {
8284	s.EnableBasicAuth = &v
8285	return s
8286}
8287
8288// SetEnableBranchAutoBuild sets the EnableBranchAutoBuild field's value.
8289func (s *UpdateAppInput) SetEnableBranchAutoBuild(v bool) *UpdateAppInput {
8290	s.EnableBranchAutoBuild = &v
8291	return s
8292}
8293
8294// SetEnvironmentVariables sets the EnvironmentVariables field's value.
8295func (s *UpdateAppInput) SetEnvironmentVariables(v map[string]*string) *UpdateAppInput {
8296	s.EnvironmentVariables = v
8297	return s
8298}
8299
8300// SetIamServiceRoleArn sets the IamServiceRoleArn field's value.
8301func (s *UpdateAppInput) SetIamServiceRoleArn(v string) *UpdateAppInput {
8302	s.IamServiceRoleArn = &v
8303	return s
8304}
8305
8306// SetName sets the Name field's value.
8307func (s *UpdateAppInput) SetName(v string) *UpdateAppInput {
8308	s.Name = &v
8309	return s
8310}
8311
8312// SetOauthToken sets the OauthToken field's value.
8313func (s *UpdateAppInput) SetOauthToken(v string) *UpdateAppInput {
8314	s.OauthToken = &v
8315	return s
8316}
8317
8318// SetPlatform sets the Platform field's value.
8319func (s *UpdateAppInput) SetPlatform(v string) *UpdateAppInput {
8320	s.Platform = &v
8321	return s
8322}
8323
8324// SetRepository sets the Repository field's value.
8325func (s *UpdateAppInput) SetRepository(v string) *UpdateAppInput {
8326	s.Repository = &v
8327	return s
8328}
8329
8330// Result structure for an Amplify App update request.
8331type UpdateAppOutput struct {
8332	_ struct{} `type:"structure"`
8333
8334	// App structure for the updated App.
8335	//
8336	// App is a required field
8337	App *App `locationName:"app" type:"structure" required:"true"`
8338}
8339
8340// String returns the string representation
8341func (s UpdateAppOutput) String() string {
8342	return awsutil.Prettify(s)
8343}
8344
8345// GoString returns the string representation
8346func (s UpdateAppOutput) GoString() string {
8347	return s.String()
8348}
8349
8350// SetApp sets the App field's value.
8351func (s *UpdateAppOutput) SetApp(v *App) *UpdateAppOutput {
8352	s.App = v
8353	return s
8354}
8355
8356// Request structure for update branch request.
8357type UpdateBranchInput struct {
8358	_ struct{} `type:"structure"`
8359
8360	// Unique Id for an Amplify App.
8361	//
8362	// AppId is a required field
8363	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
8364
8365	// ARN for a Backend Environment, part of an Amplify App.
8366	BackendEnvironmentArn *string `locationName:"backendEnvironmentArn" min:"1" type:"string"`
8367
8368	// Basic Authorization credentials for the branch.
8369	BasicAuthCredentials *string `locationName:"basicAuthCredentials" type:"string"`
8370
8371	// Name for the branch.
8372	//
8373	// BranchName is a required field
8374	BranchName *string `location:"uri" locationName:"branchName" min:"1" type:"string" required:"true"`
8375
8376	// BuildSpec for the branch.
8377	BuildSpec *string `locationName:"buildSpec" min:"1" type:"string"`
8378
8379	// Description for the branch.
8380	Description *string `locationName:"description" type:"string"`
8381
8382	// Display name for a branch, will use as the default domain prefix.
8383	DisplayName *string `locationName:"displayName" type:"string"`
8384
8385	// Enables auto building for the branch.
8386	EnableAutoBuild *bool `locationName:"enableAutoBuild" type:"boolean"`
8387
8388	// Enables Basic Auth for the branch.
8389	EnableBasicAuth *bool `locationName:"enableBasicAuth" type:"boolean"`
8390
8391	// Enables notifications for the branch.
8392	EnableNotification *bool `locationName:"enableNotification" type:"boolean"`
8393
8394	// Enables Pull Request Preview for this branch.
8395	EnablePullRequestPreview *bool `locationName:"enablePullRequestPreview" type:"boolean"`
8396
8397	// Environment Variables for the branch.
8398	EnvironmentVariables map[string]*string `locationName:"environmentVariables" type:"map"`
8399
8400	// Framework for the branch.
8401	Framework *string `locationName:"framework" type:"string"`
8402
8403	// The Amplify Environment name for the pull request.
8404	PullRequestEnvironmentName *string `locationName:"pullRequestEnvironmentName" type:"string"`
8405
8406	// Stage for the branch.
8407	Stage *string `locationName:"stage" type:"string" enum:"Stage"`
8408
8409	// The content TTL for the website in seconds.
8410	Ttl *string `locationName:"ttl" type:"string"`
8411}
8412
8413// String returns the string representation
8414func (s UpdateBranchInput) String() string {
8415	return awsutil.Prettify(s)
8416}
8417
8418// GoString returns the string representation
8419func (s UpdateBranchInput) GoString() string {
8420	return s.String()
8421}
8422
8423// Validate inspects the fields of the type to determine if they are valid.
8424func (s *UpdateBranchInput) Validate() error {
8425	invalidParams := request.ErrInvalidParams{Context: "UpdateBranchInput"}
8426	if s.AppId == nil {
8427		invalidParams.Add(request.NewErrParamRequired("AppId"))
8428	}
8429	if s.AppId != nil && len(*s.AppId) < 1 {
8430		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
8431	}
8432	if s.BackendEnvironmentArn != nil && len(*s.BackendEnvironmentArn) < 1 {
8433		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentArn", 1))
8434	}
8435	if s.BranchName == nil {
8436		invalidParams.Add(request.NewErrParamRequired("BranchName"))
8437	}
8438	if s.BranchName != nil && len(*s.BranchName) < 1 {
8439		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
8440	}
8441	if s.BuildSpec != nil && len(*s.BuildSpec) < 1 {
8442		invalidParams.Add(request.NewErrParamMinLen("BuildSpec", 1))
8443	}
8444
8445	if invalidParams.Len() > 0 {
8446		return invalidParams
8447	}
8448	return nil
8449}
8450
8451// SetAppId sets the AppId field's value.
8452func (s *UpdateBranchInput) SetAppId(v string) *UpdateBranchInput {
8453	s.AppId = &v
8454	return s
8455}
8456
8457// SetBackendEnvironmentArn sets the BackendEnvironmentArn field's value.
8458func (s *UpdateBranchInput) SetBackendEnvironmentArn(v string) *UpdateBranchInput {
8459	s.BackendEnvironmentArn = &v
8460	return s
8461}
8462
8463// SetBasicAuthCredentials sets the BasicAuthCredentials field's value.
8464func (s *UpdateBranchInput) SetBasicAuthCredentials(v string) *UpdateBranchInput {
8465	s.BasicAuthCredentials = &v
8466	return s
8467}
8468
8469// SetBranchName sets the BranchName field's value.
8470func (s *UpdateBranchInput) SetBranchName(v string) *UpdateBranchInput {
8471	s.BranchName = &v
8472	return s
8473}
8474
8475// SetBuildSpec sets the BuildSpec field's value.
8476func (s *UpdateBranchInput) SetBuildSpec(v string) *UpdateBranchInput {
8477	s.BuildSpec = &v
8478	return s
8479}
8480
8481// SetDescription sets the Description field's value.
8482func (s *UpdateBranchInput) SetDescription(v string) *UpdateBranchInput {
8483	s.Description = &v
8484	return s
8485}
8486
8487// SetDisplayName sets the DisplayName field's value.
8488func (s *UpdateBranchInput) SetDisplayName(v string) *UpdateBranchInput {
8489	s.DisplayName = &v
8490	return s
8491}
8492
8493// SetEnableAutoBuild sets the EnableAutoBuild field's value.
8494func (s *UpdateBranchInput) SetEnableAutoBuild(v bool) *UpdateBranchInput {
8495	s.EnableAutoBuild = &v
8496	return s
8497}
8498
8499// SetEnableBasicAuth sets the EnableBasicAuth field's value.
8500func (s *UpdateBranchInput) SetEnableBasicAuth(v bool) *UpdateBranchInput {
8501	s.EnableBasicAuth = &v
8502	return s
8503}
8504
8505// SetEnableNotification sets the EnableNotification field's value.
8506func (s *UpdateBranchInput) SetEnableNotification(v bool) *UpdateBranchInput {
8507	s.EnableNotification = &v
8508	return s
8509}
8510
8511// SetEnablePullRequestPreview sets the EnablePullRequestPreview field's value.
8512func (s *UpdateBranchInput) SetEnablePullRequestPreview(v bool) *UpdateBranchInput {
8513	s.EnablePullRequestPreview = &v
8514	return s
8515}
8516
8517// SetEnvironmentVariables sets the EnvironmentVariables field's value.
8518func (s *UpdateBranchInput) SetEnvironmentVariables(v map[string]*string) *UpdateBranchInput {
8519	s.EnvironmentVariables = v
8520	return s
8521}
8522
8523// SetFramework sets the Framework field's value.
8524func (s *UpdateBranchInput) SetFramework(v string) *UpdateBranchInput {
8525	s.Framework = &v
8526	return s
8527}
8528
8529// SetPullRequestEnvironmentName sets the PullRequestEnvironmentName field's value.
8530func (s *UpdateBranchInput) SetPullRequestEnvironmentName(v string) *UpdateBranchInput {
8531	s.PullRequestEnvironmentName = &v
8532	return s
8533}
8534
8535// SetStage sets the Stage field's value.
8536func (s *UpdateBranchInput) SetStage(v string) *UpdateBranchInput {
8537	s.Stage = &v
8538	return s
8539}
8540
8541// SetTtl sets the Ttl field's value.
8542func (s *UpdateBranchInput) SetTtl(v string) *UpdateBranchInput {
8543	s.Ttl = &v
8544	return s
8545}
8546
8547// Result structure for update branch request.
8548type UpdateBranchOutput struct {
8549	_ struct{} `type:"structure"`
8550
8551	// Branch structure for an Amplify App.
8552	//
8553	// Branch is a required field
8554	Branch *Branch `locationName:"branch" type:"structure" required:"true"`
8555}
8556
8557// String returns the string representation
8558func (s UpdateBranchOutput) String() string {
8559	return awsutil.Prettify(s)
8560}
8561
8562// GoString returns the string representation
8563func (s UpdateBranchOutput) GoString() string {
8564	return s.String()
8565}
8566
8567// SetBranch sets the Branch field's value.
8568func (s *UpdateBranchOutput) SetBranch(v *Branch) *UpdateBranchOutput {
8569	s.Branch = v
8570	return s
8571}
8572
8573// Request structure for update Domain Association request.
8574type UpdateDomainAssociationInput struct {
8575	_ struct{} `type:"structure"`
8576
8577	// Unique Id for an Amplify App.
8578	//
8579	// AppId is a required field
8580	AppId *string `location:"uri" locationName:"appId" min:"1" type:"string" required:"true"`
8581
8582	// Name of the domain.
8583	//
8584	// DomainName is a required field
8585	DomainName *string `location:"uri" locationName:"domainName" type:"string" required:"true"`
8586
8587	// Enables automated creation of Subdomains for branches. (Currently not supported)
8588	EnableAutoSubDomain *bool `locationName:"enableAutoSubDomain" type:"boolean"`
8589
8590	// Setting structure for the Subdomain.
8591	//
8592	// SubDomainSettings is a required field
8593	SubDomainSettings []*SubDomainSetting `locationName:"subDomainSettings" type:"list" required:"true"`
8594}
8595
8596// String returns the string representation
8597func (s UpdateDomainAssociationInput) String() string {
8598	return awsutil.Prettify(s)
8599}
8600
8601// GoString returns the string representation
8602func (s UpdateDomainAssociationInput) GoString() string {
8603	return s.String()
8604}
8605
8606// Validate inspects the fields of the type to determine if they are valid.
8607func (s *UpdateDomainAssociationInput) Validate() error {
8608	invalidParams := request.ErrInvalidParams{Context: "UpdateDomainAssociationInput"}
8609	if s.AppId == nil {
8610		invalidParams.Add(request.NewErrParamRequired("AppId"))
8611	}
8612	if s.AppId != nil && len(*s.AppId) < 1 {
8613		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
8614	}
8615	if s.DomainName == nil {
8616		invalidParams.Add(request.NewErrParamRequired("DomainName"))
8617	}
8618	if s.DomainName != nil && len(*s.DomainName) < 1 {
8619		invalidParams.Add(request.NewErrParamMinLen("DomainName", 1))
8620	}
8621	if s.SubDomainSettings == nil {
8622		invalidParams.Add(request.NewErrParamRequired("SubDomainSettings"))
8623	}
8624	if s.SubDomainSettings != nil {
8625		for i, v := range s.SubDomainSettings {
8626			if v == nil {
8627				continue
8628			}
8629			if err := v.Validate(); err != nil {
8630				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "SubDomainSettings", i), err.(request.ErrInvalidParams))
8631			}
8632		}
8633	}
8634
8635	if invalidParams.Len() > 0 {
8636		return invalidParams
8637	}
8638	return nil
8639}
8640
8641// SetAppId sets the AppId field's value.
8642func (s *UpdateDomainAssociationInput) SetAppId(v string) *UpdateDomainAssociationInput {
8643	s.AppId = &v
8644	return s
8645}
8646
8647// SetDomainName sets the DomainName field's value.
8648func (s *UpdateDomainAssociationInput) SetDomainName(v string) *UpdateDomainAssociationInput {
8649	s.DomainName = &v
8650	return s
8651}
8652
8653// SetEnableAutoSubDomain sets the EnableAutoSubDomain field's value.
8654func (s *UpdateDomainAssociationInput) SetEnableAutoSubDomain(v bool) *UpdateDomainAssociationInput {
8655	s.EnableAutoSubDomain = &v
8656	return s
8657}
8658
8659// SetSubDomainSettings sets the SubDomainSettings field's value.
8660func (s *UpdateDomainAssociationInput) SetSubDomainSettings(v []*SubDomainSetting) *UpdateDomainAssociationInput {
8661	s.SubDomainSettings = v
8662	return s
8663}
8664
8665// Result structure for the update Domain Association request.
8666type UpdateDomainAssociationOutput struct {
8667	_ struct{} `type:"structure"`
8668
8669	// Domain Association structure.
8670	//
8671	// DomainAssociation is a required field
8672	DomainAssociation *DomainAssociation `locationName:"domainAssociation" type:"structure" required:"true"`
8673}
8674
8675// String returns the string representation
8676func (s UpdateDomainAssociationOutput) String() string {
8677	return awsutil.Prettify(s)
8678}
8679
8680// GoString returns the string representation
8681func (s UpdateDomainAssociationOutput) GoString() string {
8682	return s.String()
8683}
8684
8685// SetDomainAssociation sets the DomainAssociation field's value.
8686func (s *UpdateDomainAssociationOutput) SetDomainAssociation(v *DomainAssociation) *UpdateDomainAssociationOutput {
8687	s.DomainAssociation = v
8688	return s
8689}
8690
8691// Request structure for update webhook request.
8692type UpdateWebhookInput struct {
8693	_ struct{} `type:"structure"`
8694
8695	// Name for a branch, part of an Amplify App.
8696	BranchName *string `locationName:"branchName" min:"1" type:"string"`
8697
8698	// Description for a webhook.
8699	Description *string `locationName:"description" type:"string"`
8700
8701	// Unique Id for a webhook.
8702	//
8703	// WebhookId is a required field
8704	WebhookId *string `location:"uri" locationName:"webhookId" type:"string" required:"true"`
8705}
8706
8707// String returns the string representation
8708func (s UpdateWebhookInput) String() string {
8709	return awsutil.Prettify(s)
8710}
8711
8712// GoString returns the string representation
8713func (s UpdateWebhookInput) GoString() string {
8714	return s.String()
8715}
8716
8717// Validate inspects the fields of the type to determine if they are valid.
8718func (s *UpdateWebhookInput) Validate() error {
8719	invalidParams := request.ErrInvalidParams{Context: "UpdateWebhookInput"}
8720	if s.BranchName != nil && len(*s.BranchName) < 1 {
8721		invalidParams.Add(request.NewErrParamMinLen("BranchName", 1))
8722	}
8723	if s.WebhookId == nil {
8724		invalidParams.Add(request.NewErrParamRequired("WebhookId"))
8725	}
8726	if s.WebhookId != nil && len(*s.WebhookId) < 1 {
8727		invalidParams.Add(request.NewErrParamMinLen("WebhookId", 1))
8728	}
8729
8730	if invalidParams.Len() > 0 {
8731		return invalidParams
8732	}
8733	return nil
8734}
8735
8736// SetBranchName sets the BranchName field's value.
8737func (s *UpdateWebhookInput) SetBranchName(v string) *UpdateWebhookInput {
8738	s.BranchName = &v
8739	return s
8740}
8741
8742// SetDescription sets the Description field's value.
8743func (s *UpdateWebhookInput) SetDescription(v string) *UpdateWebhookInput {
8744	s.Description = &v
8745	return s
8746}
8747
8748// SetWebhookId sets the WebhookId field's value.
8749func (s *UpdateWebhookInput) SetWebhookId(v string) *UpdateWebhookInput {
8750	s.WebhookId = &v
8751	return s
8752}
8753
8754// Result structure for the update webhook request.
8755type UpdateWebhookOutput struct {
8756	_ struct{} `type:"structure"`
8757
8758	// Webhook structure.
8759	//
8760	// Webhook is a required field
8761	Webhook *Webhook `locationName:"webhook" type:"structure" required:"true"`
8762}
8763
8764// String returns the string representation
8765func (s UpdateWebhookOutput) String() string {
8766	return awsutil.Prettify(s)
8767}
8768
8769// GoString returns the string representation
8770func (s UpdateWebhookOutput) GoString() string {
8771	return s.String()
8772}
8773
8774// SetWebhook sets the Webhook field's value.
8775func (s *UpdateWebhookOutput) SetWebhook(v *Webhook) *UpdateWebhookOutput {
8776	s.Webhook = v
8777	return s
8778}
8779
8780// Structure for webhook, which associates a webhook with an Amplify App.
8781type Webhook struct {
8782	_ struct{} `type:"structure"`
8783
8784	// Name for a branch, part of an Amplify App.
8785	//
8786	// BranchName is a required field
8787	BranchName *string `locationName:"branchName" min:"1" type:"string" required:"true"`
8788
8789	// Create date / time for a webhook.
8790	//
8791	// CreateTime is a required field
8792	CreateTime *time.Time `locationName:"createTime" type:"timestamp" required:"true"`
8793
8794	// Description for a webhook.
8795	//
8796	// Description is a required field
8797	Description *string `locationName:"description" type:"string" required:"true"`
8798
8799	// Update date / time for a webhook.
8800	//
8801	// UpdateTime is a required field
8802	UpdateTime *time.Time `locationName:"updateTime" type:"timestamp" required:"true"`
8803
8804	// ARN for the webhook.
8805	//
8806	// WebhookArn is a required field
8807	WebhookArn *string `locationName:"webhookArn" type:"string" required:"true"`
8808
8809	// Id of the webhook.
8810	//
8811	// WebhookId is a required field
8812	WebhookId *string `locationName:"webhookId" type:"string" required:"true"`
8813
8814	// Url of the webhook.
8815	//
8816	// WebhookUrl is a required field
8817	WebhookUrl *string `locationName:"webhookUrl" type:"string" required:"true"`
8818}
8819
8820// String returns the string representation
8821func (s Webhook) String() string {
8822	return awsutil.Prettify(s)
8823}
8824
8825// GoString returns the string representation
8826func (s Webhook) GoString() string {
8827	return s.String()
8828}
8829
8830// SetBranchName sets the BranchName field's value.
8831func (s *Webhook) SetBranchName(v string) *Webhook {
8832	s.BranchName = &v
8833	return s
8834}
8835
8836// SetCreateTime sets the CreateTime field's value.
8837func (s *Webhook) SetCreateTime(v time.Time) *Webhook {
8838	s.CreateTime = &v
8839	return s
8840}
8841
8842// SetDescription sets the Description field's value.
8843func (s *Webhook) SetDescription(v string) *Webhook {
8844	s.Description = &v
8845	return s
8846}
8847
8848// SetUpdateTime sets the UpdateTime field's value.
8849func (s *Webhook) SetUpdateTime(v time.Time) *Webhook {
8850	s.UpdateTime = &v
8851	return s
8852}
8853
8854// SetWebhookArn sets the WebhookArn field's value.
8855func (s *Webhook) SetWebhookArn(v string) *Webhook {
8856	s.WebhookArn = &v
8857	return s
8858}
8859
8860// SetWebhookId sets the WebhookId field's value.
8861func (s *Webhook) SetWebhookId(v string) *Webhook {
8862	s.WebhookId = &v
8863	return s
8864}
8865
8866// SetWebhookUrl sets the WebhookUrl field's value.
8867func (s *Webhook) SetWebhookUrl(v string) *Webhook {
8868	s.WebhookUrl = &v
8869	return s
8870}
8871
8872const (
8873	// DomainStatusPendingVerification is a DomainStatus enum value
8874	DomainStatusPendingVerification = "PENDING_VERIFICATION"
8875
8876	// DomainStatusInProgress is a DomainStatus enum value
8877	DomainStatusInProgress = "IN_PROGRESS"
8878
8879	// DomainStatusAvailable is a DomainStatus enum value
8880	DomainStatusAvailable = "AVAILABLE"
8881
8882	// DomainStatusPendingDeployment is a DomainStatus enum value
8883	DomainStatusPendingDeployment = "PENDING_DEPLOYMENT"
8884
8885	// DomainStatusFailed is a DomainStatus enum value
8886	DomainStatusFailed = "FAILED"
8887
8888	// DomainStatusCreating is a DomainStatus enum value
8889	DomainStatusCreating = "CREATING"
8890
8891	// DomainStatusRequestingCertificate is a DomainStatus enum value
8892	DomainStatusRequestingCertificate = "REQUESTING_CERTIFICATE"
8893
8894	// DomainStatusUpdating is a DomainStatus enum value
8895	DomainStatusUpdating = "UPDATING"
8896)
8897
8898const (
8899	// JobStatusPending is a JobStatus enum value
8900	JobStatusPending = "PENDING"
8901
8902	// JobStatusProvisioning is a JobStatus enum value
8903	JobStatusProvisioning = "PROVISIONING"
8904
8905	// JobStatusRunning is a JobStatus enum value
8906	JobStatusRunning = "RUNNING"
8907
8908	// JobStatusFailed is a JobStatus enum value
8909	JobStatusFailed = "FAILED"
8910
8911	// JobStatusSucceed is a JobStatus enum value
8912	JobStatusSucceed = "SUCCEED"
8913
8914	// JobStatusCancelling is a JobStatus enum value
8915	JobStatusCancelling = "CANCELLING"
8916
8917	// JobStatusCancelled is a JobStatus enum value
8918	JobStatusCancelled = "CANCELLED"
8919)
8920
8921const (
8922	// JobTypeRelease is a JobType enum value
8923	JobTypeRelease = "RELEASE"
8924
8925	// JobTypeRetry is a JobType enum value
8926	JobTypeRetry = "RETRY"
8927
8928	// JobTypeManual is a JobType enum value
8929	JobTypeManual = "MANUAL"
8930
8931	// JobTypeWebHook is a JobType enum value
8932	JobTypeWebHook = "WEB_HOOK"
8933)
8934
8935const (
8936	// PlatformWeb is a Platform enum value
8937	PlatformWeb = "WEB"
8938)
8939
8940const (
8941	// StageProduction is a Stage enum value
8942	StageProduction = "PRODUCTION"
8943
8944	// StageBeta is a Stage enum value
8945	StageBeta = "BETA"
8946
8947	// StageDevelopment is a Stage enum value
8948	StageDevelopment = "DEVELOPMENT"
8949
8950	// StageExperimental is a Stage enum value
8951	StageExperimental = "EXPERIMENTAL"
8952
8953	// StagePullRequest is a Stage enum value
8954	StagePullRequest = "PULL_REQUEST"
8955)
8956