1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package amplifybackend
4
5import (
6	"fmt"
7
8	"github.com/aws/aws-sdk-go/aws"
9	"github.com/aws/aws-sdk-go/aws/awsutil"
10	"github.com/aws/aws-sdk-go/aws/request"
11	"github.com/aws/aws-sdk-go/private/protocol"
12)
13
14const opCloneBackend = "CloneBackend"
15
16// CloneBackendRequest generates a "aws/request.Request" representing the
17// client's request for the CloneBackend operation. The "output" return
18// value will be populated with the request's response once the request completes
19// successfully.
20//
21// Use "Send" method on the returned Request to send the API call to the service.
22// the "output" return value is not valid until after Send returns without error.
23//
24// See CloneBackend for more information on using the CloneBackend
25// API call, and error handling.
26//
27// This method is useful when you want to inject custom logic or configuration
28// into the SDK's request lifecycle. Such as custom headers, or retry logic.
29//
30//
31//    // Example sending a request using the CloneBackendRequest method.
32//    req, resp := client.CloneBackendRequest(params)
33//
34//    err := req.Send()
35//    if err == nil { // resp is now filled
36//        fmt.Println(resp)
37//    }
38//
39// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/CloneBackend
40func (c *AmplifyBackend) CloneBackendRequest(input *CloneBackendInput) (req *request.Request, output *CloneBackendOutput) {
41	op := &request.Operation{
42		Name:       opCloneBackend,
43		HTTPMethod: "POST",
44		HTTPPath:   "/backend/{appId}/environments/{backendEnvironmentName}/clone",
45	}
46
47	if input == nil {
48		input = &CloneBackendInput{}
49	}
50
51	output = &CloneBackendOutput{}
52	req = c.newRequest(op, input, output)
53	return
54}
55
56// CloneBackend API operation for AmplifyBackend.
57//
58// This operation clones an existing backend.
59//
60// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
61// with awserr.Error's Code and Message methods to get detailed information about
62// the error.
63//
64// See the AWS API reference guide for AmplifyBackend's
65// API operation CloneBackend for usage and error information.
66//
67// Returned Error Types:
68//   * NotFoundException
69//   An error returned when a specific resource type is not found.
70//
71//   * GatewayTimeoutException
72//   An error returned if there's a temporary issue with the service.
73//
74//   * TooManyRequestsException
75//   An error that is returned when a limit of a specific type is exceeded.
76//
77//   * BadRequestException
78//   An error returned if a request is not formed properly.
79//
80// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/CloneBackend
81func (c *AmplifyBackend) CloneBackend(input *CloneBackendInput) (*CloneBackendOutput, error) {
82	req, out := c.CloneBackendRequest(input)
83	return out, req.Send()
84}
85
86// CloneBackendWithContext is the same as CloneBackend with the addition of
87// the ability to pass a context and additional request options.
88//
89// See CloneBackend for details on how to use this API operation.
90//
91// The context must be non-nil and will be used for request cancellation. If
92// the context is nil a panic will occur. In the future the SDK may create
93// sub-contexts for http.Requests. See https://golang.org/pkg/context/
94// for more information on using Contexts.
95func (c *AmplifyBackend) CloneBackendWithContext(ctx aws.Context, input *CloneBackendInput, opts ...request.Option) (*CloneBackendOutput, error) {
96	req, out := c.CloneBackendRequest(input)
97	req.SetContext(ctx)
98	req.ApplyOptions(opts...)
99	return out, req.Send()
100}
101
102const opCreateBackend = "CreateBackend"
103
104// CreateBackendRequest generates a "aws/request.Request" representing the
105// client's request for the CreateBackend operation. The "output" return
106// value will be populated with the request's response once the request completes
107// successfully.
108//
109// Use "Send" method on the returned Request to send the API call to the service.
110// the "output" return value is not valid until after Send returns without error.
111//
112// See CreateBackend for more information on using the CreateBackend
113// API call, and error handling.
114//
115// This method is useful when you want to inject custom logic or configuration
116// into the SDK's request lifecycle. Such as custom headers, or retry logic.
117//
118//
119//    // Example sending a request using the CreateBackendRequest method.
120//    req, resp := client.CreateBackendRequest(params)
121//
122//    err := req.Send()
123//    if err == nil { // resp is now filled
124//        fmt.Println(resp)
125//    }
126//
127// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/CreateBackend
128func (c *AmplifyBackend) CreateBackendRequest(input *CreateBackendInput) (req *request.Request, output *CreateBackendOutput) {
129	op := &request.Operation{
130		Name:       opCreateBackend,
131		HTTPMethod: "POST",
132		HTTPPath:   "/backend",
133	}
134
135	if input == nil {
136		input = &CreateBackendInput{}
137	}
138
139	output = &CreateBackendOutput{}
140	req = c.newRequest(op, input, output)
141	return
142}
143
144// CreateBackend API operation for AmplifyBackend.
145//
146// This operation creates a backend for an Amplify app. Backends are automatically
147// created at the time of app creation.
148//
149// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
150// with awserr.Error's Code and Message methods to get detailed information about
151// the error.
152//
153// See the AWS API reference guide for AmplifyBackend's
154// API operation CreateBackend for usage and error information.
155//
156// Returned Error Types:
157//   * NotFoundException
158//   An error returned when a specific resource type is not found.
159//
160//   * GatewayTimeoutException
161//   An error returned if there's a temporary issue with the service.
162//
163//   * TooManyRequestsException
164//   An error that is returned when a limit of a specific type is exceeded.
165//
166//   * BadRequestException
167//   An error returned if a request is not formed properly.
168//
169// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/CreateBackend
170func (c *AmplifyBackend) CreateBackend(input *CreateBackendInput) (*CreateBackendOutput, error) {
171	req, out := c.CreateBackendRequest(input)
172	return out, req.Send()
173}
174
175// CreateBackendWithContext is the same as CreateBackend with the addition of
176// the ability to pass a context and additional request options.
177//
178// See CreateBackend for details on how to use this API operation.
179//
180// The context must be non-nil and will be used for request cancellation. If
181// the context is nil a panic will occur. In the future the SDK may create
182// sub-contexts for http.Requests. See https://golang.org/pkg/context/
183// for more information on using Contexts.
184func (c *AmplifyBackend) CreateBackendWithContext(ctx aws.Context, input *CreateBackendInput, opts ...request.Option) (*CreateBackendOutput, error) {
185	req, out := c.CreateBackendRequest(input)
186	req.SetContext(ctx)
187	req.ApplyOptions(opts...)
188	return out, req.Send()
189}
190
191const opCreateBackendAPI = "CreateBackendAPI"
192
193// CreateBackendAPIRequest generates a "aws/request.Request" representing the
194// client's request for the CreateBackendAPI operation. The "output" return
195// value will be populated with the request's response once the request completes
196// successfully.
197//
198// Use "Send" method on the returned Request to send the API call to the service.
199// the "output" return value is not valid until after Send returns without error.
200//
201// See CreateBackendAPI for more information on using the CreateBackendAPI
202// API call, and error handling.
203//
204// This method is useful when you want to inject custom logic or configuration
205// into the SDK's request lifecycle. Such as custom headers, or retry logic.
206//
207//
208//    // Example sending a request using the CreateBackendAPIRequest method.
209//    req, resp := client.CreateBackendAPIRequest(params)
210//
211//    err := req.Send()
212//    if err == nil { // resp is now filled
213//        fmt.Println(resp)
214//    }
215//
216// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/CreateBackendAPI
217func (c *AmplifyBackend) CreateBackendAPIRequest(input *CreateBackendAPIInput) (req *request.Request, output *CreateBackendAPIOutput) {
218	op := &request.Operation{
219		Name:       opCreateBackendAPI,
220		HTTPMethod: "POST",
221		HTTPPath:   "/backend/{appId}/api",
222	}
223
224	if input == nil {
225		input = &CreateBackendAPIInput{}
226	}
227
228	output = &CreateBackendAPIOutput{}
229	req = c.newRequest(op, input, output)
230	return
231}
232
233// CreateBackendAPI API operation for AmplifyBackend.
234//
235// Creates a new backend API resource.
236//
237// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
238// with awserr.Error's Code and Message methods to get detailed information about
239// the error.
240//
241// See the AWS API reference guide for AmplifyBackend's
242// API operation CreateBackendAPI for usage and error information.
243//
244// Returned Error Types:
245//   * NotFoundException
246//   An error returned when a specific resource type is not found.
247//
248//   * GatewayTimeoutException
249//   An error returned if there's a temporary issue with the service.
250//
251//   * TooManyRequestsException
252//   An error that is returned when a limit of a specific type is exceeded.
253//
254//   * BadRequestException
255//   An error returned if a request is not formed properly.
256//
257// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/CreateBackendAPI
258func (c *AmplifyBackend) CreateBackendAPI(input *CreateBackendAPIInput) (*CreateBackendAPIOutput, error) {
259	req, out := c.CreateBackendAPIRequest(input)
260	return out, req.Send()
261}
262
263// CreateBackendAPIWithContext is the same as CreateBackendAPI with the addition of
264// the ability to pass a context and additional request options.
265//
266// See CreateBackendAPI for details on how to use this API operation.
267//
268// The context must be non-nil and will be used for request cancellation. If
269// the context is nil a panic will occur. In the future the SDK may create
270// sub-contexts for http.Requests. See https://golang.org/pkg/context/
271// for more information on using Contexts.
272func (c *AmplifyBackend) CreateBackendAPIWithContext(ctx aws.Context, input *CreateBackendAPIInput, opts ...request.Option) (*CreateBackendAPIOutput, error) {
273	req, out := c.CreateBackendAPIRequest(input)
274	req.SetContext(ctx)
275	req.ApplyOptions(opts...)
276	return out, req.Send()
277}
278
279const opCreateBackendAuth = "CreateBackendAuth"
280
281// CreateBackendAuthRequest generates a "aws/request.Request" representing the
282// client's request for the CreateBackendAuth operation. The "output" return
283// value will be populated with the request's response once the request completes
284// successfully.
285//
286// Use "Send" method on the returned Request to send the API call to the service.
287// the "output" return value is not valid until after Send returns without error.
288//
289// See CreateBackendAuth for more information on using the CreateBackendAuth
290// API call, and error handling.
291//
292// This method is useful when you want to inject custom logic or configuration
293// into the SDK's request lifecycle. Such as custom headers, or retry logic.
294//
295//
296//    // Example sending a request using the CreateBackendAuthRequest method.
297//    req, resp := client.CreateBackendAuthRequest(params)
298//
299//    err := req.Send()
300//    if err == nil { // resp is now filled
301//        fmt.Println(resp)
302//    }
303//
304// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/CreateBackendAuth
305func (c *AmplifyBackend) CreateBackendAuthRequest(input *CreateBackendAuthInput) (req *request.Request, output *CreateBackendAuthOutput) {
306	op := &request.Operation{
307		Name:       opCreateBackendAuth,
308		HTTPMethod: "POST",
309		HTTPPath:   "/backend/{appId}/auth",
310	}
311
312	if input == nil {
313		input = &CreateBackendAuthInput{}
314	}
315
316	output = &CreateBackendAuthOutput{}
317	req = c.newRequest(op, input, output)
318	return
319}
320
321// CreateBackendAuth API operation for AmplifyBackend.
322//
323// Creates a new backend authentication resource.
324//
325// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
326// with awserr.Error's Code and Message methods to get detailed information about
327// the error.
328//
329// See the AWS API reference guide for AmplifyBackend's
330// API operation CreateBackendAuth for usage and error information.
331//
332// Returned Error Types:
333//   * NotFoundException
334//   An error returned when a specific resource type is not found.
335//
336//   * GatewayTimeoutException
337//   An error returned if there's a temporary issue with the service.
338//
339//   * TooManyRequestsException
340//   An error that is returned when a limit of a specific type is exceeded.
341//
342//   * BadRequestException
343//   An error returned if a request is not formed properly.
344//
345// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/CreateBackendAuth
346func (c *AmplifyBackend) CreateBackendAuth(input *CreateBackendAuthInput) (*CreateBackendAuthOutput, error) {
347	req, out := c.CreateBackendAuthRequest(input)
348	return out, req.Send()
349}
350
351// CreateBackendAuthWithContext is the same as CreateBackendAuth with the addition of
352// the ability to pass a context and additional request options.
353//
354// See CreateBackendAuth for details on how to use this API operation.
355//
356// The context must be non-nil and will be used for request cancellation. If
357// the context is nil a panic will occur. In the future the SDK may create
358// sub-contexts for http.Requests. See https://golang.org/pkg/context/
359// for more information on using Contexts.
360func (c *AmplifyBackend) CreateBackendAuthWithContext(ctx aws.Context, input *CreateBackendAuthInput, opts ...request.Option) (*CreateBackendAuthOutput, error) {
361	req, out := c.CreateBackendAuthRequest(input)
362	req.SetContext(ctx)
363	req.ApplyOptions(opts...)
364	return out, req.Send()
365}
366
367const opCreateBackendConfig = "CreateBackendConfig"
368
369// CreateBackendConfigRequest generates a "aws/request.Request" representing the
370// client's request for the CreateBackendConfig operation. The "output" return
371// value will be populated with the request's response once the request completes
372// successfully.
373//
374// Use "Send" method on the returned Request to send the API call to the service.
375// the "output" return value is not valid until after Send returns without error.
376//
377// See CreateBackendConfig for more information on using the CreateBackendConfig
378// API call, and error handling.
379//
380// This method is useful when you want to inject custom logic or configuration
381// into the SDK's request lifecycle. Such as custom headers, or retry logic.
382//
383//
384//    // Example sending a request using the CreateBackendConfigRequest method.
385//    req, resp := client.CreateBackendConfigRequest(params)
386//
387//    err := req.Send()
388//    if err == nil { // resp is now filled
389//        fmt.Println(resp)
390//    }
391//
392// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/CreateBackendConfig
393func (c *AmplifyBackend) CreateBackendConfigRequest(input *CreateBackendConfigInput) (req *request.Request, output *CreateBackendConfigOutput) {
394	op := &request.Operation{
395		Name:       opCreateBackendConfig,
396		HTTPMethod: "POST",
397		HTTPPath:   "/backend/{appId}/config",
398	}
399
400	if input == nil {
401		input = &CreateBackendConfigInput{}
402	}
403
404	output = &CreateBackendConfigOutput{}
405	req = c.newRequest(op, input, output)
406	return
407}
408
409// CreateBackendConfig API operation for AmplifyBackend.
410//
411// Creates a config object for a backend.
412//
413// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
414// with awserr.Error's Code and Message methods to get detailed information about
415// the error.
416//
417// See the AWS API reference guide for AmplifyBackend's
418// API operation CreateBackendConfig for usage and error information.
419//
420// Returned Error Types:
421//   * NotFoundException
422//   An error returned when a specific resource type is not found.
423//
424//   * GatewayTimeoutException
425//   An error returned if there's a temporary issue with the service.
426//
427//   * TooManyRequestsException
428//   An error that is returned when a limit of a specific type is exceeded.
429//
430//   * BadRequestException
431//   An error returned if a request is not formed properly.
432//
433// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/CreateBackendConfig
434func (c *AmplifyBackend) CreateBackendConfig(input *CreateBackendConfigInput) (*CreateBackendConfigOutput, error) {
435	req, out := c.CreateBackendConfigRequest(input)
436	return out, req.Send()
437}
438
439// CreateBackendConfigWithContext is the same as CreateBackendConfig with the addition of
440// the ability to pass a context and additional request options.
441//
442// See CreateBackendConfig for details on how to use this API operation.
443//
444// The context must be non-nil and will be used for request cancellation. If
445// the context is nil a panic will occur. In the future the SDK may create
446// sub-contexts for http.Requests. See https://golang.org/pkg/context/
447// for more information on using Contexts.
448func (c *AmplifyBackend) CreateBackendConfigWithContext(ctx aws.Context, input *CreateBackendConfigInput, opts ...request.Option) (*CreateBackendConfigOutput, error) {
449	req, out := c.CreateBackendConfigRequest(input)
450	req.SetContext(ctx)
451	req.ApplyOptions(opts...)
452	return out, req.Send()
453}
454
455const opCreateToken = "CreateToken"
456
457// CreateTokenRequest generates a "aws/request.Request" representing the
458// client's request for the CreateToken operation. The "output" return
459// value will be populated with the request's response once the request completes
460// successfully.
461//
462// Use "Send" method on the returned Request to send the API call to the service.
463// the "output" return value is not valid until after Send returns without error.
464//
465// See CreateToken for more information on using the CreateToken
466// API call, and error handling.
467//
468// This method is useful when you want to inject custom logic or configuration
469// into the SDK's request lifecycle. Such as custom headers, or retry logic.
470//
471//
472//    // Example sending a request using the CreateTokenRequest method.
473//    req, resp := client.CreateTokenRequest(params)
474//
475//    err := req.Send()
476//    if err == nil { // resp is now filled
477//        fmt.Println(resp)
478//    }
479//
480// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/CreateToken
481func (c *AmplifyBackend) CreateTokenRequest(input *CreateTokenInput) (req *request.Request, output *CreateTokenOutput) {
482	op := &request.Operation{
483		Name:       opCreateToken,
484		HTTPMethod: "POST",
485		HTTPPath:   "/backend/{appId}/challenge",
486	}
487
488	if input == nil {
489		input = &CreateTokenInput{}
490	}
491
492	output = &CreateTokenOutput{}
493	req = c.newRequest(op, input, output)
494	return
495}
496
497// CreateToken API operation for AmplifyBackend.
498//
499// Generates a one-time challenge code to authenticate a user into your Amplify
500// Admin UI.
501//
502// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
503// with awserr.Error's Code and Message methods to get detailed information about
504// the error.
505//
506// See the AWS API reference guide for AmplifyBackend's
507// API operation CreateToken for usage and error information.
508//
509// Returned Error Types:
510//   * NotFoundException
511//   An error returned when a specific resource type is not found.
512//
513//   * GatewayTimeoutException
514//   An error returned if there's a temporary issue with the service.
515//
516//   * TooManyRequestsException
517//   An error that is returned when a limit of a specific type is exceeded.
518//
519//   * BadRequestException
520//   An error returned if a request is not formed properly.
521//
522// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/CreateToken
523func (c *AmplifyBackend) CreateToken(input *CreateTokenInput) (*CreateTokenOutput, error) {
524	req, out := c.CreateTokenRequest(input)
525	return out, req.Send()
526}
527
528// CreateTokenWithContext is the same as CreateToken with the addition of
529// the ability to pass a context and additional request options.
530//
531// See CreateToken for details on how to use this API operation.
532//
533// The context must be non-nil and will be used for request cancellation. If
534// the context is nil a panic will occur. In the future the SDK may create
535// sub-contexts for http.Requests. See https://golang.org/pkg/context/
536// for more information on using Contexts.
537func (c *AmplifyBackend) CreateTokenWithContext(ctx aws.Context, input *CreateTokenInput, opts ...request.Option) (*CreateTokenOutput, error) {
538	req, out := c.CreateTokenRequest(input)
539	req.SetContext(ctx)
540	req.ApplyOptions(opts...)
541	return out, req.Send()
542}
543
544const opDeleteBackend = "DeleteBackend"
545
546// DeleteBackendRequest generates a "aws/request.Request" representing the
547// client's request for the DeleteBackend operation. The "output" return
548// value will be populated with the request's response once the request completes
549// successfully.
550//
551// Use "Send" method on the returned Request to send the API call to the service.
552// the "output" return value is not valid until after Send returns without error.
553//
554// See DeleteBackend for more information on using the DeleteBackend
555// API call, and error handling.
556//
557// This method is useful when you want to inject custom logic or configuration
558// into the SDK's request lifecycle. Such as custom headers, or retry logic.
559//
560//
561//    // Example sending a request using the DeleteBackendRequest method.
562//    req, resp := client.DeleteBackendRequest(params)
563//
564//    err := req.Send()
565//    if err == nil { // resp is now filled
566//        fmt.Println(resp)
567//    }
568//
569// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/DeleteBackend
570func (c *AmplifyBackend) DeleteBackendRequest(input *DeleteBackendInput) (req *request.Request, output *DeleteBackendOutput) {
571	op := &request.Operation{
572		Name:       opDeleteBackend,
573		HTTPMethod: "POST",
574		HTTPPath:   "/backend/{appId}/environments/{backendEnvironmentName}/remove",
575	}
576
577	if input == nil {
578		input = &DeleteBackendInput{}
579	}
580
581	output = &DeleteBackendOutput{}
582	req = c.newRequest(op, input, output)
583	return
584}
585
586// DeleteBackend API operation for AmplifyBackend.
587//
588// Removes an existing environment from your Amplify project.
589//
590// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
591// with awserr.Error's Code and Message methods to get detailed information about
592// the error.
593//
594// See the AWS API reference guide for AmplifyBackend's
595// API operation DeleteBackend for usage and error information.
596//
597// Returned Error Types:
598//   * NotFoundException
599//   An error returned when a specific resource type is not found.
600//
601//   * GatewayTimeoutException
602//   An error returned if there's a temporary issue with the service.
603//
604//   * TooManyRequestsException
605//   An error that is returned when a limit of a specific type is exceeded.
606//
607//   * BadRequestException
608//   An error returned if a request is not formed properly.
609//
610// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/DeleteBackend
611func (c *AmplifyBackend) DeleteBackend(input *DeleteBackendInput) (*DeleteBackendOutput, error) {
612	req, out := c.DeleteBackendRequest(input)
613	return out, req.Send()
614}
615
616// DeleteBackendWithContext is the same as DeleteBackend with the addition of
617// the ability to pass a context and additional request options.
618//
619// See DeleteBackend for details on how to use this API operation.
620//
621// The context must be non-nil and will be used for request cancellation. If
622// the context is nil a panic will occur. In the future the SDK may create
623// sub-contexts for http.Requests. See https://golang.org/pkg/context/
624// for more information on using Contexts.
625func (c *AmplifyBackend) DeleteBackendWithContext(ctx aws.Context, input *DeleteBackendInput, opts ...request.Option) (*DeleteBackendOutput, error) {
626	req, out := c.DeleteBackendRequest(input)
627	req.SetContext(ctx)
628	req.ApplyOptions(opts...)
629	return out, req.Send()
630}
631
632const opDeleteBackendAPI = "DeleteBackendAPI"
633
634// DeleteBackendAPIRequest generates a "aws/request.Request" representing the
635// client's request for the DeleteBackendAPI operation. The "output" return
636// value will be populated with the request's response once the request completes
637// successfully.
638//
639// Use "Send" method on the returned Request to send the API call to the service.
640// the "output" return value is not valid until after Send returns without error.
641//
642// See DeleteBackendAPI for more information on using the DeleteBackendAPI
643// API call, and error handling.
644//
645// This method is useful when you want to inject custom logic or configuration
646// into the SDK's request lifecycle. Such as custom headers, or retry logic.
647//
648//
649//    // Example sending a request using the DeleteBackendAPIRequest method.
650//    req, resp := client.DeleteBackendAPIRequest(params)
651//
652//    err := req.Send()
653//    if err == nil { // resp is now filled
654//        fmt.Println(resp)
655//    }
656//
657// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/DeleteBackendAPI
658func (c *AmplifyBackend) DeleteBackendAPIRequest(input *DeleteBackendAPIInput) (req *request.Request, output *DeleteBackendAPIOutput) {
659	op := &request.Operation{
660		Name:       opDeleteBackendAPI,
661		HTTPMethod: "POST",
662		HTTPPath:   "/backend/{appId}/api/{backendEnvironmentName}/remove",
663	}
664
665	if input == nil {
666		input = &DeleteBackendAPIInput{}
667	}
668
669	output = &DeleteBackendAPIOutput{}
670	req = c.newRequest(op, input, output)
671	return
672}
673
674// DeleteBackendAPI API operation for AmplifyBackend.
675//
676// Deletes an existing backend API resource.
677//
678// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
679// with awserr.Error's Code and Message methods to get detailed information about
680// the error.
681//
682// See the AWS API reference guide for AmplifyBackend's
683// API operation DeleteBackendAPI for usage and error information.
684//
685// Returned Error Types:
686//   * NotFoundException
687//   An error returned when a specific resource type is not found.
688//
689//   * GatewayTimeoutException
690//   An error returned if there's a temporary issue with the service.
691//
692//   * TooManyRequestsException
693//   An error that is returned when a limit of a specific type is exceeded.
694//
695//   * BadRequestException
696//   An error returned if a request is not formed properly.
697//
698// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/DeleteBackendAPI
699func (c *AmplifyBackend) DeleteBackendAPI(input *DeleteBackendAPIInput) (*DeleteBackendAPIOutput, error) {
700	req, out := c.DeleteBackendAPIRequest(input)
701	return out, req.Send()
702}
703
704// DeleteBackendAPIWithContext is the same as DeleteBackendAPI with the addition of
705// the ability to pass a context and additional request options.
706//
707// See DeleteBackendAPI for details on how to use this API operation.
708//
709// The context must be non-nil and will be used for request cancellation. If
710// the context is nil a panic will occur. In the future the SDK may create
711// sub-contexts for http.Requests. See https://golang.org/pkg/context/
712// for more information on using Contexts.
713func (c *AmplifyBackend) DeleteBackendAPIWithContext(ctx aws.Context, input *DeleteBackendAPIInput, opts ...request.Option) (*DeleteBackendAPIOutput, error) {
714	req, out := c.DeleteBackendAPIRequest(input)
715	req.SetContext(ctx)
716	req.ApplyOptions(opts...)
717	return out, req.Send()
718}
719
720const opDeleteBackendAuth = "DeleteBackendAuth"
721
722// DeleteBackendAuthRequest generates a "aws/request.Request" representing the
723// client's request for the DeleteBackendAuth operation. The "output" return
724// value will be populated with the request's response once the request completes
725// successfully.
726//
727// Use "Send" method on the returned Request to send the API call to the service.
728// the "output" return value is not valid until after Send returns without error.
729//
730// See DeleteBackendAuth for more information on using the DeleteBackendAuth
731// API call, and error handling.
732//
733// This method is useful when you want to inject custom logic or configuration
734// into the SDK's request lifecycle. Such as custom headers, or retry logic.
735//
736//
737//    // Example sending a request using the DeleteBackendAuthRequest method.
738//    req, resp := client.DeleteBackendAuthRequest(params)
739//
740//    err := req.Send()
741//    if err == nil { // resp is now filled
742//        fmt.Println(resp)
743//    }
744//
745// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/DeleteBackendAuth
746func (c *AmplifyBackend) DeleteBackendAuthRequest(input *DeleteBackendAuthInput) (req *request.Request, output *DeleteBackendAuthOutput) {
747	op := &request.Operation{
748		Name:       opDeleteBackendAuth,
749		HTTPMethod: "POST",
750		HTTPPath:   "/backend/{appId}/auth/{backendEnvironmentName}/remove",
751	}
752
753	if input == nil {
754		input = &DeleteBackendAuthInput{}
755	}
756
757	output = &DeleteBackendAuthOutput{}
758	req = c.newRequest(op, input, output)
759	return
760}
761
762// DeleteBackendAuth API operation for AmplifyBackend.
763//
764// Deletes an existing backend authentication resource.
765//
766// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
767// with awserr.Error's Code and Message methods to get detailed information about
768// the error.
769//
770// See the AWS API reference guide for AmplifyBackend's
771// API operation DeleteBackendAuth for usage and error information.
772//
773// Returned Error Types:
774//   * NotFoundException
775//   An error returned when a specific resource type is not found.
776//
777//   * GatewayTimeoutException
778//   An error returned if there's a temporary issue with the service.
779//
780//   * TooManyRequestsException
781//   An error that is returned when a limit of a specific type is exceeded.
782//
783//   * BadRequestException
784//   An error returned if a request is not formed properly.
785//
786// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/DeleteBackendAuth
787func (c *AmplifyBackend) DeleteBackendAuth(input *DeleteBackendAuthInput) (*DeleteBackendAuthOutput, error) {
788	req, out := c.DeleteBackendAuthRequest(input)
789	return out, req.Send()
790}
791
792// DeleteBackendAuthWithContext is the same as DeleteBackendAuth with the addition of
793// the ability to pass a context and additional request options.
794//
795// See DeleteBackendAuth for details on how to use this API operation.
796//
797// The context must be non-nil and will be used for request cancellation. If
798// the context is nil a panic will occur. In the future the SDK may create
799// sub-contexts for http.Requests. See https://golang.org/pkg/context/
800// for more information on using Contexts.
801func (c *AmplifyBackend) DeleteBackendAuthWithContext(ctx aws.Context, input *DeleteBackendAuthInput, opts ...request.Option) (*DeleteBackendAuthOutput, error) {
802	req, out := c.DeleteBackendAuthRequest(input)
803	req.SetContext(ctx)
804	req.ApplyOptions(opts...)
805	return out, req.Send()
806}
807
808const opDeleteToken = "DeleteToken"
809
810// DeleteTokenRequest generates a "aws/request.Request" representing the
811// client's request for the DeleteToken operation. The "output" return
812// value will be populated with the request's response once the request completes
813// successfully.
814//
815// Use "Send" method on the returned Request to send the API call to the service.
816// the "output" return value is not valid until after Send returns without error.
817//
818// See DeleteToken for more information on using the DeleteToken
819// API call, and error handling.
820//
821// This method is useful when you want to inject custom logic or configuration
822// into the SDK's request lifecycle. Such as custom headers, or retry logic.
823//
824//
825//    // Example sending a request using the DeleteTokenRequest method.
826//    req, resp := client.DeleteTokenRequest(params)
827//
828//    err := req.Send()
829//    if err == nil { // resp is now filled
830//        fmt.Println(resp)
831//    }
832//
833// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/DeleteToken
834func (c *AmplifyBackend) DeleteTokenRequest(input *DeleteTokenInput) (req *request.Request, output *DeleteTokenOutput) {
835	op := &request.Operation{
836		Name:       opDeleteToken,
837		HTTPMethod: "POST",
838		HTTPPath:   "/backend/{appId}/challenge/{sessionId}/remove",
839	}
840
841	if input == nil {
842		input = &DeleteTokenInput{}
843	}
844
845	output = &DeleteTokenOutput{}
846	req = c.newRequest(op, input, output)
847	return
848}
849
850// DeleteToken API operation for AmplifyBackend.
851//
852// Deletes the challenge token based on the given appId and sessionId.
853//
854// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
855// with awserr.Error's Code and Message methods to get detailed information about
856// the error.
857//
858// See the AWS API reference guide for AmplifyBackend's
859// API operation DeleteToken for usage and error information.
860//
861// Returned Error Types:
862//   * NotFoundException
863//   An error returned when a specific resource type is not found.
864//
865//   * GatewayTimeoutException
866//   An error returned if there's a temporary issue with the service.
867//
868//   * TooManyRequestsException
869//   An error that is returned when a limit of a specific type is exceeded.
870//
871//   * BadRequestException
872//   An error returned if a request is not formed properly.
873//
874// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/DeleteToken
875func (c *AmplifyBackend) DeleteToken(input *DeleteTokenInput) (*DeleteTokenOutput, error) {
876	req, out := c.DeleteTokenRequest(input)
877	return out, req.Send()
878}
879
880// DeleteTokenWithContext is the same as DeleteToken with the addition of
881// the ability to pass a context and additional request options.
882//
883// See DeleteToken for details on how to use this API operation.
884//
885// The context must be non-nil and will be used for request cancellation. If
886// the context is nil a panic will occur. In the future the SDK may create
887// sub-contexts for http.Requests. See https://golang.org/pkg/context/
888// for more information on using Contexts.
889func (c *AmplifyBackend) DeleteTokenWithContext(ctx aws.Context, input *DeleteTokenInput, opts ...request.Option) (*DeleteTokenOutput, error) {
890	req, out := c.DeleteTokenRequest(input)
891	req.SetContext(ctx)
892	req.ApplyOptions(opts...)
893	return out, req.Send()
894}
895
896const opGenerateBackendAPIModels = "GenerateBackendAPIModels"
897
898// GenerateBackendAPIModelsRequest generates a "aws/request.Request" representing the
899// client's request for the GenerateBackendAPIModels operation. The "output" return
900// value will be populated with the request's response once the request completes
901// successfully.
902//
903// Use "Send" method on the returned Request to send the API call to the service.
904// the "output" return value is not valid until after Send returns without error.
905//
906// See GenerateBackendAPIModels for more information on using the GenerateBackendAPIModels
907// API call, and error handling.
908//
909// This method is useful when you want to inject custom logic or configuration
910// into the SDK's request lifecycle. Such as custom headers, or retry logic.
911//
912//
913//    // Example sending a request using the GenerateBackendAPIModelsRequest method.
914//    req, resp := client.GenerateBackendAPIModelsRequest(params)
915//
916//    err := req.Send()
917//    if err == nil { // resp is now filled
918//        fmt.Println(resp)
919//    }
920//
921// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GenerateBackendAPIModels
922func (c *AmplifyBackend) GenerateBackendAPIModelsRequest(input *GenerateBackendAPIModelsInput) (req *request.Request, output *GenerateBackendAPIModelsOutput) {
923	op := &request.Operation{
924		Name:       opGenerateBackendAPIModels,
925		HTTPMethod: "POST",
926		HTTPPath:   "/backend/{appId}/api/{backendEnvironmentName}/generateModels",
927	}
928
929	if input == nil {
930		input = &GenerateBackendAPIModelsInput{}
931	}
932
933	output = &GenerateBackendAPIModelsOutput{}
934	req = c.newRequest(op, input, output)
935	return
936}
937
938// GenerateBackendAPIModels API operation for AmplifyBackend.
939//
940// Generates a model schema for an existing backend API resource.
941//
942// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
943// with awserr.Error's Code and Message methods to get detailed information about
944// the error.
945//
946// See the AWS API reference guide for AmplifyBackend's
947// API operation GenerateBackendAPIModels for usage and error information.
948//
949// Returned Error Types:
950//   * NotFoundException
951//   An error returned when a specific resource type is not found.
952//
953//   * GatewayTimeoutException
954//   An error returned if there's a temporary issue with the service.
955//
956//   * TooManyRequestsException
957//   An error that is returned when a limit of a specific type is exceeded.
958//
959//   * BadRequestException
960//   An error returned if a request is not formed properly.
961//
962// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GenerateBackendAPIModels
963func (c *AmplifyBackend) GenerateBackendAPIModels(input *GenerateBackendAPIModelsInput) (*GenerateBackendAPIModelsOutput, error) {
964	req, out := c.GenerateBackendAPIModelsRequest(input)
965	return out, req.Send()
966}
967
968// GenerateBackendAPIModelsWithContext is the same as GenerateBackendAPIModels with the addition of
969// the ability to pass a context and additional request options.
970//
971// See GenerateBackendAPIModels for details on how to use this API operation.
972//
973// The context must be non-nil and will be used for request cancellation. If
974// the context is nil a panic will occur. In the future the SDK may create
975// sub-contexts for http.Requests. See https://golang.org/pkg/context/
976// for more information on using Contexts.
977func (c *AmplifyBackend) GenerateBackendAPIModelsWithContext(ctx aws.Context, input *GenerateBackendAPIModelsInput, opts ...request.Option) (*GenerateBackendAPIModelsOutput, error) {
978	req, out := c.GenerateBackendAPIModelsRequest(input)
979	req.SetContext(ctx)
980	req.ApplyOptions(opts...)
981	return out, req.Send()
982}
983
984const opGetBackend = "GetBackend"
985
986// GetBackendRequest generates a "aws/request.Request" representing the
987// client's request for the GetBackend operation. The "output" return
988// value will be populated with the request's response once the request completes
989// successfully.
990//
991// Use "Send" method on the returned Request to send the API call to the service.
992// the "output" return value is not valid until after Send returns without error.
993//
994// See GetBackend for more information on using the GetBackend
995// API call, and error handling.
996//
997// This method is useful when you want to inject custom logic or configuration
998// into the SDK's request lifecycle. Such as custom headers, or retry logic.
999//
1000//
1001//    // Example sending a request using the GetBackendRequest method.
1002//    req, resp := client.GetBackendRequest(params)
1003//
1004//    err := req.Send()
1005//    if err == nil { // resp is now filled
1006//        fmt.Println(resp)
1007//    }
1008//
1009// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GetBackend
1010func (c *AmplifyBackend) GetBackendRequest(input *GetBackendInput) (req *request.Request, output *GetBackendOutput) {
1011	op := &request.Operation{
1012		Name:       opGetBackend,
1013		HTTPMethod: "POST",
1014		HTTPPath:   "/backend/{appId}/details",
1015	}
1016
1017	if input == nil {
1018		input = &GetBackendInput{}
1019	}
1020
1021	output = &GetBackendOutput{}
1022	req = c.newRequest(op, input, output)
1023	return
1024}
1025
1026// GetBackend API operation for AmplifyBackend.
1027//
1028// Provides project-level details for your Amplify UI project.
1029//
1030// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1031// with awserr.Error's Code and Message methods to get detailed information about
1032// the error.
1033//
1034// See the AWS API reference guide for AmplifyBackend's
1035// API operation GetBackend for usage and error information.
1036//
1037// Returned Error Types:
1038//   * NotFoundException
1039//   An error returned when a specific resource type is not found.
1040//
1041//   * GatewayTimeoutException
1042//   An error returned if there's a temporary issue with the service.
1043//
1044//   * TooManyRequestsException
1045//   An error that is returned when a limit of a specific type is exceeded.
1046//
1047//   * BadRequestException
1048//   An error returned if a request is not formed properly.
1049//
1050// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GetBackend
1051func (c *AmplifyBackend) GetBackend(input *GetBackendInput) (*GetBackendOutput, error) {
1052	req, out := c.GetBackendRequest(input)
1053	return out, req.Send()
1054}
1055
1056// GetBackendWithContext is the same as GetBackend with the addition of
1057// the ability to pass a context and additional request options.
1058//
1059// See GetBackend for details on how to use this API operation.
1060//
1061// The context must be non-nil and will be used for request cancellation. If
1062// the context is nil a panic will occur. In the future the SDK may create
1063// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1064// for more information on using Contexts.
1065func (c *AmplifyBackend) GetBackendWithContext(ctx aws.Context, input *GetBackendInput, opts ...request.Option) (*GetBackendOutput, error) {
1066	req, out := c.GetBackendRequest(input)
1067	req.SetContext(ctx)
1068	req.ApplyOptions(opts...)
1069	return out, req.Send()
1070}
1071
1072const opGetBackendAPI = "GetBackendAPI"
1073
1074// GetBackendAPIRequest generates a "aws/request.Request" representing the
1075// client's request for the GetBackendAPI operation. The "output" return
1076// value will be populated with the request's response once the request completes
1077// successfully.
1078//
1079// Use "Send" method on the returned Request to send the API call to the service.
1080// the "output" return value is not valid until after Send returns without error.
1081//
1082// See GetBackendAPI for more information on using the GetBackendAPI
1083// API call, and error handling.
1084//
1085// This method is useful when you want to inject custom logic or configuration
1086// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1087//
1088//
1089//    // Example sending a request using the GetBackendAPIRequest method.
1090//    req, resp := client.GetBackendAPIRequest(params)
1091//
1092//    err := req.Send()
1093//    if err == nil { // resp is now filled
1094//        fmt.Println(resp)
1095//    }
1096//
1097// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GetBackendAPI
1098func (c *AmplifyBackend) GetBackendAPIRequest(input *GetBackendAPIInput) (req *request.Request, output *GetBackendAPIOutput) {
1099	op := &request.Operation{
1100		Name:       opGetBackendAPI,
1101		HTTPMethod: "POST",
1102		HTTPPath:   "/backend/{appId}/api/{backendEnvironmentName}/details",
1103	}
1104
1105	if input == nil {
1106		input = &GetBackendAPIInput{}
1107	}
1108
1109	output = &GetBackendAPIOutput{}
1110	req = c.newRequest(op, input, output)
1111	return
1112}
1113
1114// GetBackendAPI API operation for AmplifyBackend.
1115//
1116// Gets the details for a backend API.
1117//
1118// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1119// with awserr.Error's Code and Message methods to get detailed information about
1120// the error.
1121//
1122// See the AWS API reference guide for AmplifyBackend's
1123// API operation GetBackendAPI for usage and error information.
1124//
1125// Returned Error Types:
1126//   * NotFoundException
1127//   An error returned when a specific resource type is not found.
1128//
1129//   * GatewayTimeoutException
1130//   An error returned if there's a temporary issue with the service.
1131//
1132//   * TooManyRequestsException
1133//   An error that is returned when a limit of a specific type is exceeded.
1134//
1135//   * BadRequestException
1136//   An error returned if a request is not formed properly.
1137//
1138// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GetBackendAPI
1139func (c *AmplifyBackend) GetBackendAPI(input *GetBackendAPIInput) (*GetBackendAPIOutput, error) {
1140	req, out := c.GetBackendAPIRequest(input)
1141	return out, req.Send()
1142}
1143
1144// GetBackendAPIWithContext is the same as GetBackendAPI with the addition of
1145// the ability to pass a context and additional request options.
1146//
1147// See GetBackendAPI for details on how to use this API operation.
1148//
1149// The context must be non-nil and will be used for request cancellation. If
1150// the context is nil a panic will occur. In the future the SDK may create
1151// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1152// for more information on using Contexts.
1153func (c *AmplifyBackend) GetBackendAPIWithContext(ctx aws.Context, input *GetBackendAPIInput, opts ...request.Option) (*GetBackendAPIOutput, error) {
1154	req, out := c.GetBackendAPIRequest(input)
1155	req.SetContext(ctx)
1156	req.ApplyOptions(opts...)
1157	return out, req.Send()
1158}
1159
1160const opGetBackendAPIModels = "GetBackendAPIModels"
1161
1162// GetBackendAPIModelsRequest generates a "aws/request.Request" representing the
1163// client's request for the GetBackendAPIModels operation. The "output" return
1164// value will be populated with the request's response once the request completes
1165// successfully.
1166//
1167// Use "Send" method on the returned Request to send the API call to the service.
1168// the "output" return value is not valid until after Send returns without error.
1169//
1170// See GetBackendAPIModels for more information on using the GetBackendAPIModels
1171// API call, and error handling.
1172//
1173// This method is useful when you want to inject custom logic or configuration
1174// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1175//
1176//
1177//    // Example sending a request using the GetBackendAPIModelsRequest method.
1178//    req, resp := client.GetBackendAPIModelsRequest(params)
1179//
1180//    err := req.Send()
1181//    if err == nil { // resp is now filled
1182//        fmt.Println(resp)
1183//    }
1184//
1185// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GetBackendAPIModels
1186func (c *AmplifyBackend) GetBackendAPIModelsRequest(input *GetBackendAPIModelsInput) (req *request.Request, output *GetBackendAPIModelsOutput) {
1187	op := &request.Operation{
1188		Name:       opGetBackendAPIModels,
1189		HTTPMethod: "POST",
1190		HTTPPath:   "/backend/{appId}/api/{backendEnvironmentName}/getModels",
1191	}
1192
1193	if input == nil {
1194		input = &GetBackendAPIModelsInput{}
1195	}
1196
1197	output = &GetBackendAPIModelsOutput{}
1198	req = c.newRequest(op, input, output)
1199	return
1200}
1201
1202// GetBackendAPIModels API operation for AmplifyBackend.
1203//
1204// Generates a model schema for existing backend API resource.
1205//
1206// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1207// with awserr.Error's Code and Message methods to get detailed information about
1208// the error.
1209//
1210// See the AWS API reference guide for AmplifyBackend's
1211// API operation GetBackendAPIModels for usage and error information.
1212//
1213// Returned Error Types:
1214//   * NotFoundException
1215//   An error returned when a specific resource type is not found.
1216//
1217//   * GatewayTimeoutException
1218//   An error returned if there's a temporary issue with the service.
1219//
1220//   * TooManyRequestsException
1221//   An error that is returned when a limit of a specific type is exceeded.
1222//
1223//   * BadRequestException
1224//   An error returned if a request is not formed properly.
1225//
1226// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GetBackendAPIModels
1227func (c *AmplifyBackend) GetBackendAPIModels(input *GetBackendAPIModelsInput) (*GetBackendAPIModelsOutput, error) {
1228	req, out := c.GetBackendAPIModelsRequest(input)
1229	return out, req.Send()
1230}
1231
1232// GetBackendAPIModelsWithContext is the same as GetBackendAPIModels with the addition of
1233// the ability to pass a context and additional request options.
1234//
1235// See GetBackendAPIModels for details on how to use this API operation.
1236//
1237// The context must be non-nil and will be used for request cancellation. If
1238// the context is nil a panic will occur. In the future the SDK may create
1239// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1240// for more information on using Contexts.
1241func (c *AmplifyBackend) GetBackendAPIModelsWithContext(ctx aws.Context, input *GetBackendAPIModelsInput, opts ...request.Option) (*GetBackendAPIModelsOutput, error) {
1242	req, out := c.GetBackendAPIModelsRequest(input)
1243	req.SetContext(ctx)
1244	req.ApplyOptions(opts...)
1245	return out, req.Send()
1246}
1247
1248const opGetBackendAuth = "GetBackendAuth"
1249
1250// GetBackendAuthRequest generates a "aws/request.Request" representing the
1251// client's request for the GetBackendAuth operation. The "output" return
1252// value will be populated with the request's response once the request completes
1253// successfully.
1254//
1255// Use "Send" method on the returned Request to send the API call to the service.
1256// the "output" return value is not valid until after Send returns without error.
1257//
1258// See GetBackendAuth for more information on using the GetBackendAuth
1259// API call, and error handling.
1260//
1261// This method is useful when you want to inject custom logic or configuration
1262// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1263//
1264//
1265//    // Example sending a request using the GetBackendAuthRequest method.
1266//    req, resp := client.GetBackendAuthRequest(params)
1267//
1268//    err := req.Send()
1269//    if err == nil { // resp is now filled
1270//        fmt.Println(resp)
1271//    }
1272//
1273// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GetBackendAuth
1274func (c *AmplifyBackend) GetBackendAuthRequest(input *GetBackendAuthInput) (req *request.Request, output *GetBackendAuthOutput) {
1275	op := &request.Operation{
1276		Name:       opGetBackendAuth,
1277		HTTPMethod: "POST",
1278		HTTPPath:   "/backend/{appId}/auth/{backendEnvironmentName}/details",
1279	}
1280
1281	if input == nil {
1282		input = &GetBackendAuthInput{}
1283	}
1284
1285	output = &GetBackendAuthOutput{}
1286	req = c.newRequest(op, input, output)
1287	return
1288}
1289
1290// GetBackendAuth API operation for AmplifyBackend.
1291//
1292// Gets backend auth details.
1293//
1294// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1295// with awserr.Error's Code and Message methods to get detailed information about
1296// the error.
1297//
1298// See the AWS API reference guide for AmplifyBackend's
1299// API operation GetBackendAuth for usage and error information.
1300//
1301// Returned Error Types:
1302//   * NotFoundException
1303//   An error returned when a specific resource type is not found.
1304//
1305//   * GatewayTimeoutException
1306//   An error returned if there's a temporary issue with the service.
1307//
1308//   * TooManyRequestsException
1309//   An error that is returned when a limit of a specific type is exceeded.
1310//
1311//   * BadRequestException
1312//   An error returned if a request is not formed properly.
1313//
1314// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GetBackendAuth
1315func (c *AmplifyBackend) GetBackendAuth(input *GetBackendAuthInput) (*GetBackendAuthOutput, error) {
1316	req, out := c.GetBackendAuthRequest(input)
1317	return out, req.Send()
1318}
1319
1320// GetBackendAuthWithContext is the same as GetBackendAuth with the addition of
1321// the ability to pass a context and additional request options.
1322//
1323// See GetBackendAuth for details on how to use this API operation.
1324//
1325// The context must be non-nil and will be used for request cancellation. If
1326// the context is nil a panic will occur. In the future the SDK may create
1327// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1328// for more information on using Contexts.
1329func (c *AmplifyBackend) GetBackendAuthWithContext(ctx aws.Context, input *GetBackendAuthInput, opts ...request.Option) (*GetBackendAuthOutput, error) {
1330	req, out := c.GetBackendAuthRequest(input)
1331	req.SetContext(ctx)
1332	req.ApplyOptions(opts...)
1333	return out, req.Send()
1334}
1335
1336const opGetBackendJob = "GetBackendJob"
1337
1338// GetBackendJobRequest generates a "aws/request.Request" representing the
1339// client's request for the GetBackendJob operation. The "output" return
1340// value will be populated with the request's response once the request completes
1341// successfully.
1342//
1343// Use "Send" method on the returned Request to send the API call to the service.
1344// the "output" return value is not valid until after Send returns without error.
1345//
1346// See GetBackendJob for more information on using the GetBackendJob
1347// API call, and error handling.
1348//
1349// This method is useful when you want to inject custom logic or configuration
1350// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1351//
1352//
1353//    // Example sending a request using the GetBackendJobRequest method.
1354//    req, resp := client.GetBackendJobRequest(params)
1355//
1356//    err := req.Send()
1357//    if err == nil { // resp is now filled
1358//        fmt.Println(resp)
1359//    }
1360//
1361// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GetBackendJob
1362func (c *AmplifyBackend) GetBackendJobRequest(input *GetBackendJobInput) (req *request.Request, output *GetBackendJobOutput) {
1363	op := &request.Operation{
1364		Name:       opGetBackendJob,
1365		HTTPMethod: "GET",
1366		HTTPPath:   "/backend/{appId}/job/{backendEnvironmentName}/{jobId}",
1367	}
1368
1369	if input == nil {
1370		input = &GetBackendJobInput{}
1371	}
1372
1373	output = &GetBackendJobOutput{}
1374	req = c.newRequest(op, input, output)
1375	return
1376}
1377
1378// GetBackendJob API operation for AmplifyBackend.
1379//
1380// Returns information about a specific job.
1381//
1382// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1383// with awserr.Error's Code and Message methods to get detailed information about
1384// the error.
1385//
1386// See the AWS API reference guide for AmplifyBackend's
1387// API operation GetBackendJob for usage and error information.
1388//
1389// Returned Error Types:
1390//   * NotFoundException
1391//   An error returned when a specific resource type is not found.
1392//
1393//   * GatewayTimeoutException
1394//   An error returned if there's a temporary issue with the service.
1395//
1396//   * TooManyRequestsException
1397//   An error that is returned when a limit of a specific type is exceeded.
1398//
1399//   * BadRequestException
1400//   An error returned if a request is not formed properly.
1401//
1402// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GetBackendJob
1403func (c *AmplifyBackend) GetBackendJob(input *GetBackendJobInput) (*GetBackendJobOutput, error) {
1404	req, out := c.GetBackendJobRequest(input)
1405	return out, req.Send()
1406}
1407
1408// GetBackendJobWithContext is the same as GetBackendJob with the addition of
1409// the ability to pass a context and additional request options.
1410//
1411// See GetBackendJob for details on how to use this API operation.
1412//
1413// The context must be non-nil and will be used for request cancellation. If
1414// the context is nil a panic will occur. In the future the SDK may create
1415// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1416// for more information on using Contexts.
1417func (c *AmplifyBackend) GetBackendJobWithContext(ctx aws.Context, input *GetBackendJobInput, opts ...request.Option) (*GetBackendJobOutput, error) {
1418	req, out := c.GetBackendJobRequest(input)
1419	req.SetContext(ctx)
1420	req.ApplyOptions(opts...)
1421	return out, req.Send()
1422}
1423
1424const opGetToken = "GetToken"
1425
1426// GetTokenRequest generates a "aws/request.Request" representing the
1427// client's request for the GetToken operation. The "output" return
1428// value will be populated with the request's response once the request completes
1429// successfully.
1430//
1431// Use "Send" method on the returned Request to send the API call to the service.
1432// the "output" return value is not valid until after Send returns without error.
1433//
1434// See GetToken for more information on using the GetToken
1435// API call, and error handling.
1436//
1437// This method is useful when you want to inject custom logic or configuration
1438// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1439//
1440//
1441//    // Example sending a request using the GetTokenRequest method.
1442//    req, resp := client.GetTokenRequest(params)
1443//
1444//    err := req.Send()
1445//    if err == nil { // resp is now filled
1446//        fmt.Println(resp)
1447//    }
1448//
1449// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GetToken
1450func (c *AmplifyBackend) GetTokenRequest(input *GetTokenInput) (req *request.Request, output *GetTokenOutput) {
1451	op := &request.Operation{
1452		Name:       opGetToken,
1453		HTTPMethod: "GET",
1454		HTTPPath:   "/backend/{appId}/challenge/{sessionId}",
1455	}
1456
1457	if input == nil {
1458		input = &GetTokenInput{}
1459	}
1460
1461	output = &GetTokenOutput{}
1462	req = c.newRequest(op, input, output)
1463	return
1464}
1465
1466// GetToken API operation for AmplifyBackend.
1467//
1468// Gets the challenge token based on the given appId and sessionId.
1469//
1470// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1471// with awserr.Error's Code and Message methods to get detailed information about
1472// the error.
1473//
1474// See the AWS API reference guide for AmplifyBackend's
1475// API operation GetToken for usage and error information.
1476//
1477// Returned Error Types:
1478//   * NotFoundException
1479//   An error returned when a specific resource type is not found.
1480//
1481//   * GatewayTimeoutException
1482//   An error returned if there's a temporary issue with the service.
1483//
1484//   * TooManyRequestsException
1485//   An error that is returned when a limit of a specific type is exceeded.
1486//
1487//   * BadRequestException
1488//   An error returned if a request is not formed properly.
1489//
1490// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/GetToken
1491func (c *AmplifyBackend) GetToken(input *GetTokenInput) (*GetTokenOutput, error) {
1492	req, out := c.GetTokenRequest(input)
1493	return out, req.Send()
1494}
1495
1496// GetTokenWithContext is the same as GetToken with the addition of
1497// the ability to pass a context and additional request options.
1498//
1499// See GetToken for details on how to use this API operation.
1500//
1501// The context must be non-nil and will be used for request cancellation. If
1502// the context is nil a panic will occur. In the future the SDK may create
1503// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1504// for more information on using Contexts.
1505func (c *AmplifyBackend) GetTokenWithContext(ctx aws.Context, input *GetTokenInput, opts ...request.Option) (*GetTokenOutput, error) {
1506	req, out := c.GetTokenRequest(input)
1507	req.SetContext(ctx)
1508	req.ApplyOptions(opts...)
1509	return out, req.Send()
1510}
1511
1512const opListBackendJobs = "ListBackendJobs"
1513
1514// ListBackendJobsRequest generates a "aws/request.Request" representing the
1515// client's request for the ListBackendJobs operation. The "output" return
1516// value will be populated with the request's response once the request completes
1517// successfully.
1518//
1519// Use "Send" method on the returned Request to send the API call to the service.
1520// the "output" return value is not valid until after Send returns without error.
1521//
1522// See ListBackendJobs for more information on using the ListBackendJobs
1523// API call, and error handling.
1524//
1525// This method is useful when you want to inject custom logic or configuration
1526// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1527//
1528//
1529//    // Example sending a request using the ListBackendJobsRequest method.
1530//    req, resp := client.ListBackendJobsRequest(params)
1531//
1532//    err := req.Send()
1533//    if err == nil { // resp is now filled
1534//        fmt.Println(resp)
1535//    }
1536//
1537// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/ListBackendJobs
1538func (c *AmplifyBackend) ListBackendJobsRequest(input *ListBackendJobsInput) (req *request.Request, output *ListBackendJobsOutput) {
1539	op := &request.Operation{
1540		Name:       opListBackendJobs,
1541		HTTPMethod: "POST",
1542		HTTPPath:   "/backend/{appId}/job/{backendEnvironmentName}",
1543		Paginator: &request.Paginator{
1544			InputTokens:     []string{"NextToken"},
1545			OutputTokens:    []string{"NextToken"},
1546			LimitToken:      "MaxResults",
1547			TruncationToken: "",
1548		},
1549	}
1550
1551	if input == nil {
1552		input = &ListBackendJobsInput{}
1553	}
1554
1555	output = &ListBackendJobsOutput{}
1556	req = c.newRequest(op, input, output)
1557	return
1558}
1559
1560// ListBackendJobs API operation for AmplifyBackend.
1561//
1562// Lists the jobs for the backend of an Amplify app.
1563//
1564// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1565// with awserr.Error's Code and Message methods to get detailed information about
1566// the error.
1567//
1568// See the AWS API reference guide for AmplifyBackend's
1569// API operation ListBackendJobs for usage and error information.
1570//
1571// Returned Error Types:
1572//   * NotFoundException
1573//   An error returned when a specific resource type is not found.
1574//
1575//   * GatewayTimeoutException
1576//   An error returned if there's a temporary issue with the service.
1577//
1578//   * TooManyRequestsException
1579//   An error that is returned when a limit of a specific type is exceeded.
1580//
1581//   * BadRequestException
1582//   An error returned if a request is not formed properly.
1583//
1584// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/ListBackendJobs
1585func (c *AmplifyBackend) ListBackendJobs(input *ListBackendJobsInput) (*ListBackendJobsOutput, error) {
1586	req, out := c.ListBackendJobsRequest(input)
1587	return out, req.Send()
1588}
1589
1590// ListBackendJobsWithContext is the same as ListBackendJobs with the addition of
1591// the ability to pass a context and additional request options.
1592//
1593// See ListBackendJobs for details on how to use this API operation.
1594//
1595// The context must be non-nil and will be used for request cancellation. If
1596// the context is nil a panic will occur. In the future the SDK may create
1597// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1598// for more information on using Contexts.
1599func (c *AmplifyBackend) ListBackendJobsWithContext(ctx aws.Context, input *ListBackendJobsInput, opts ...request.Option) (*ListBackendJobsOutput, error) {
1600	req, out := c.ListBackendJobsRequest(input)
1601	req.SetContext(ctx)
1602	req.ApplyOptions(opts...)
1603	return out, req.Send()
1604}
1605
1606// ListBackendJobsPages iterates over the pages of a ListBackendJobs operation,
1607// calling the "fn" function with the response data for each page. To stop
1608// iterating, return false from the fn function.
1609//
1610// See ListBackendJobs method for more information on how to use this operation.
1611//
1612// Note: This operation can generate multiple requests to a service.
1613//
1614//    // Example iterating over at most 3 pages of a ListBackendJobs operation.
1615//    pageNum := 0
1616//    err := client.ListBackendJobsPages(params,
1617//        func(page *amplifybackend.ListBackendJobsOutput, lastPage bool) bool {
1618//            pageNum++
1619//            fmt.Println(page)
1620//            return pageNum <= 3
1621//        })
1622//
1623func (c *AmplifyBackend) ListBackendJobsPages(input *ListBackendJobsInput, fn func(*ListBackendJobsOutput, bool) bool) error {
1624	return c.ListBackendJobsPagesWithContext(aws.BackgroundContext(), input, fn)
1625}
1626
1627// ListBackendJobsPagesWithContext same as ListBackendJobsPages except
1628// it takes a Context and allows setting request options on the pages.
1629//
1630// The context must be non-nil and will be used for request cancellation. If
1631// the context is nil a panic will occur. In the future the SDK may create
1632// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1633// for more information on using Contexts.
1634func (c *AmplifyBackend) ListBackendJobsPagesWithContext(ctx aws.Context, input *ListBackendJobsInput, fn func(*ListBackendJobsOutput, bool) bool, opts ...request.Option) error {
1635	p := request.Pagination{
1636		NewRequest: func() (*request.Request, error) {
1637			var inCpy *ListBackendJobsInput
1638			if input != nil {
1639				tmp := *input
1640				inCpy = &tmp
1641			}
1642			req, _ := c.ListBackendJobsRequest(inCpy)
1643			req.SetContext(ctx)
1644			req.ApplyOptions(opts...)
1645			return req, nil
1646		},
1647	}
1648
1649	for p.Next() {
1650		if !fn(p.Page().(*ListBackendJobsOutput), !p.HasNextPage()) {
1651			break
1652		}
1653	}
1654
1655	return p.Err()
1656}
1657
1658const opRemoveAllBackends = "RemoveAllBackends"
1659
1660// RemoveAllBackendsRequest generates a "aws/request.Request" representing the
1661// client's request for the RemoveAllBackends operation. The "output" return
1662// value will be populated with the request's response once the request completes
1663// successfully.
1664//
1665// Use "Send" method on the returned Request to send the API call to the service.
1666// the "output" return value is not valid until after Send returns without error.
1667//
1668// See RemoveAllBackends for more information on using the RemoveAllBackends
1669// API call, and error handling.
1670//
1671// This method is useful when you want to inject custom logic or configuration
1672// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1673//
1674//
1675//    // Example sending a request using the RemoveAllBackendsRequest method.
1676//    req, resp := client.RemoveAllBackendsRequest(params)
1677//
1678//    err := req.Send()
1679//    if err == nil { // resp is now filled
1680//        fmt.Println(resp)
1681//    }
1682//
1683// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/RemoveAllBackends
1684func (c *AmplifyBackend) RemoveAllBackendsRequest(input *RemoveAllBackendsInput) (req *request.Request, output *RemoveAllBackendsOutput) {
1685	op := &request.Operation{
1686		Name:       opRemoveAllBackends,
1687		HTTPMethod: "POST",
1688		HTTPPath:   "/backend/{appId}/remove",
1689	}
1690
1691	if input == nil {
1692		input = &RemoveAllBackendsInput{}
1693	}
1694
1695	output = &RemoveAllBackendsOutput{}
1696	req = c.newRequest(op, input, output)
1697	return
1698}
1699
1700// RemoveAllBackends API operation for AmplifyBackend.
1701//
1702// Removes all backend environments from your Amplify project.
1703//
1704// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1705// with awserr.Error's Code and Message methods to get detailed information about
1706// the error.
1707//
1708// See the AWS API reference guide for AmplifyBackend's
1709// API operation RemoveAllBackends for usage and error information.
1710//
1711// Returned Error Types:
1712//   * NotFoundException
1713//   An error returned when a specific resource type is not found.
1714//
1715//   * GatewayTimeoutException
1716//   An error returned if there's a temporary issue with the service.
1717//
1718//   * TooManyRequestsException
1719//   An error that is returned when a limit of a specific type is exceeded.
1720//
1721//   * BadRequestException
1722//   An error returned if a request is not formed properly.
1723//
1724// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/RemoveAllBackends
1725func (c *AmplifyBackend) RemoveAllBackends(input *RemoveAllBackendsInput) (*RemoveAllBackendsOutput, error) {
1726	req, out := c.RemoveAllBackendsRequest(input)
1727	return out, req.Send()
1728}
1729
1730// RemoveAllBackendsWithContext is the same as RemoveAllBackends with the addition of
1731// the ability to pass a context and additional request options.
1732//
1733// See RemoveAllBackends for details on how to use this API operation.
1734//
1735// The context must be non-nil and will be used for request cancellation. If
1736// the context is nil a panic will occur. In the future the SDK may create
1737// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1738// for more information on using Contexts.
1739func (c *AmplifyBackend) RemoveAllBackendsWithContext(ctx aws.Context, input *RemoveAllBackendsInput, opts ...request.Option) (*RemoveAllBackendsOutput, error) {
1740	req, out := c.RemoveAllBackendsRequest(input)
1741	req.SetContext(ctx)
1742	req.ApplyOptions(opts...)
1743	return out, req.Send()
1744}
1745
1746const opRemoveBackendConfig = "RemoveBackendConfig"
1747
1748// RemoveBackendConfigRequest generates a "aws/request.Request" representing the
1749// client's request for the RemoveBackendConfig operation. The "output" return
1750// value will be populated with the request's response once the request completes
1751// successfully.
1752//
1753// Use "Send" method on the returned Request to send the API call to the service.
1754// the "output" return value is not valid until after Send returns without error.
1755//
1756// See RemoveBackendConfig for more information on using the RemoveBackendConfig
1757// API call, and error handling.
1758//
1759// This method is useful when you want to inject custom logic or configuration
1760// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1761//
1762//
1763//    // Example sending a request using the RemoveBackendConfigRequest method.
1764//    req, resp := client.RemoveBackendConfigRequest(params)
1765//
1766//    err := req.Send()
1767//    if err == nil { // resp is now filled
1768//        fmt.Println(resp)
1769//    }
1770//
1771// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/RemoveBackendConfig
1772func (c *AmplifyBackend) RemoveBackendConfigRequest(input *RemoveBackendConfigInput) (req *request.Request, output *RemoveBackendConfigOutput) {
1773	op := &request.Operation{
1774		Name:       opRemoveBackendConfig,
1775		HTTPMethod: "POST",
1776		HTTPPath:   "/backend/{appId}/config/remove",
1777	}
1778
1779	if input == nil {
1780		input = &RemoveBackendConfigInput{}
1781	}
1782
1783	output = &RemoveBackendConfigOutput{}
1784	req = c.newRequest(op, input, output)
1785	return
1786}
1787
1788// RemoveBackendConfig API operation for AmplifyBackend.
1789//
1790// Removes the AWS resources that are required to access the Amplify Admin UI.
1791//
1792// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1793// with awserr.Error's Code and Message methods to get detailed information about
1794// the error.
1795//
1796// See the AWS API reference guide for AmplifyBackend's
1797// API operation RemoveBackendConfig for usage and error information.
1798//
1799// Returned Error Types:
1800//   * NotFoundException
1801//   An error returned when a specific resource type is not found.
1802//
1803//   * GatewayTimeoutException
1804//   An error returned if there's a temporary issue with the service.
1805//
1806//   * TooManyRequestsException
1807//   An error that is returned when a limit of a specific type is exceeded.
1808//
1809//   * BadRequestException
1810//   An error returned if a request is not formed properly.
1811//
1812// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/RemoveBackendConfig
1813func (c *AmplifyBackend) RemoveBackendConfig(input *RemoveBackendConfigInput) (*RemoveBackendConfigOutput, error) {
1814	req, out := c.RemoveBackendConfigRequest(input)
1815	return out, req.Send()
1816}
1817
1818// RemoveBackendConfigWithContext is the same as RemoveBackendConfig with the addition of
1819// the ability to pass a context and additional request options.
1820//
1821// See RemoveBackendConfig for details on how to use this API operation.
1822//
1823// The context must be non-nil and will be used for request cancellation. If
1824// the context is nil a panic will occur. In the future the SDK may create
1825// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1826// for more information on using Contexts.
1827func (c *AmplifyBackend) RemoveBackendConfigWithContext(ctx aws.Context, input *RemoveBackendConfigInput, opts ...request.Option) (*RemoveBackendConfigOutput, error) {
1828	req, out := c.RemoveBackendConfigRequest(input)
1829	req.SetContext(ctx)
1830	req.ApplyOptions(opts...)
1831	return out, req.Send()
1832}
1833
1834const opUpdateBackendAPI = "UpdateBackendAPI"
1835
1836// UpdateBackendAPIRequest generates a "aws/request.Request" representing the
1837// client's request for the UpdateBackendAPI operation. The "output" return
1838// value will be populated with the request's response once the request completes
1839// successfully.
1840//
1841// Use "Send" method on the returned Request to send the API call to the service.
1842// the "output" return value is not valid until after Send returns without error.
1843//
1844// See UpdateBackendAPI for more information on using the UpdateBackendAPI
1845// API call, and error handling.
1846//
1847// This method is useful when you want to inject custom logic or configuration
1848// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1849//
1850//
1851//    // Example sending a request using the UpdateBackendAPIRequest method.
1852//    req, resp := client.UpdateBackendAPIRequest(params)
1853//
1854//    err := req.Send()
1855//    if err == nil { // resp is now filled
1856//        fmt.Println(resp)
1857//    }
1858//
1859// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/UpdateBackendAPI
1860func (c *AmplifyBackend) UpdateBackendAPIRequest(input *UpdateBackendAPIInput) (req *request.Request, output *UpdateBackendAPIOutput) {
1861	op := &request.Operation{
1862		Name:       opUpdateBackendAPI,
1863		HTTPMethod: "POST",
1864		HTTPPath:   "/backend/{appId}/api/{backendEnvironmentName}",
1865	}
1866
1867	if input == nil {
1868		input = &UpdateBackendAPIInput{}
1869	}
1870
1871	output = &UpdateBackendAPIOutput{}
1872	req = c.newRequest(op, input, output)
1873	return
1874}
1875
1876// UpdateBackendAPI API operation for AmplifyBackend.
1877//
1878// Updates an existing backend API resource.
1879//
1880// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1881// with awserr.Error's Code and Message methods to get detailed information about
1882// the error.
1883//
1884// See the AWS API reference guide for AmplifyBackend's
1885// API operation UpdateBackendAPI for usage and error information.
1886//
1887// Returned Error Types:
1888//   * NotFoundException
1889//   An error returned when a specific resource type is not found.
1890//
1891//   * GatewayTimeoutException
1892//   An error returned if there's a temporary issue with the service.
1893//
1894//   * TooManyRequestsException
1895//   An error that is returned when a limit of a specific type is exceeded.
1896//
1897//   * BadRequestException
1898//   An error returned if a request is not formed properly.
1899//
1900// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/UpdateBackendAPI
1901func (c *AmplifyBackend) UpdateBackendAPI(input *UpdateBackendAPIInput) (*UpdateBackendAPIOutput, error) {
1902	req, out := c.UpdateBackendAPIRequest(input)
1903	return out, req.Send()
1904}
1905
1906// UpdateBackendAPIWithContext is the same as UpdateBackendAPI with the addition of
1907// the ability to pass a context and additional request options.
1908//
1909// See UpdateBackendAPI for details on how to use this API operation.
1910//
1911// The context must be non-nil and will be used for request cancellation. If
1912// the context is nil a panic will occur. In the future the SDK may create
1913// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1914// for more information on using Contexts.
1915func (c *AmplifyBackend) UpdateBackendAPIWithContext(ctx aws.Context, input *UpdateBackendAPIInput, opts ...request.Option) (*UpdateBackendAPIOutput, error) {
1916	req, out := c.UpdateBackendAPIRequest(input)
1917	req.SetContext(ctx)
1918	req.ApplyOptions(opts...)
1919	return out, req.Send()
1920}
1921
1922const opUpdateBackendAuth = "UpdateBackendAuth"
1923
1924// UpdateBackendAuthRequest generates a "aws/request.Request" representing the
1925// client's request for the UpdateBackendAuth operation. The "output" return
1926// value will be populated with the request's response once the request completes
1927// successfully.
1928//
1929// Use "Send" method on the returned Request to send the API call to the service.
1930// the "output" return value is not valid until after Send returns without error.
1931//
1932// See UpdateBackendAuth for more information on using the UpdateBackendAuth
1933// API call, and error handling.
1934//
1935// This method is useful when you want to inject custom logic or configuration
1936// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1937//
1938//
1939//    // Example sending a request using the UpdateBackendAuthRequest method.
1940//    req, resp := client.UpdateBackendAuthRequest(params)
1941//
1942//    err := req.Send()
1943//    if err == nil { // resp is now filled
1944//        fmt.Println(resp)
1945//    }
1946//
1947// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/UpdateBackendAuth
1948func (c *AmplifyBackend) UpdateBackendAuthRequest(input *UpdateBackendAuthInput) (req *request.Request, output *UpdateBackendAuthOutput) {
1949	op := &request.Operation{
1950		Name:       opUpdateBackendAuth,
1951		HTTPMethod: "POST",
1952		HTTPPath:   "/backend/{appId}/auth/{backendEnvironmentName}",
1953	}
1954
1955	if input == nil {
1956		input = &UpdateBackendAuthInput{}
1957	}
1958
1959	output = &UpdateBackendAuthOutput{}
1960	req = c.newRequest(op, input, output)
1961	return
1962}
1963
1964// UpdateBackendAuth API operation for AmplifyBackend.
1965//
1966// Updates an existing backend authentication resource.
1967//
1968// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1969// with awserr.Error's Code and Message methods to get detailed information about
1970// the error.
1971//
1972// See the AWS API reference guide for AmplifyBackend's
1973// API operation UpdateBackendAuth for usage and error information.
1974//
1975// Returned Error Types:
1976//   * NotFoundException
1977//   An error returned when a specific resource type is not found.
1978//
1979//   * GatewayTimeoutException
1980//   An error returned if there's a temporary issue with the service.
1981//
1982//   * TooManyRequestsException
1983//   An error that is returned when a limit of a specific type is exceeded.
1984//
1985//   * BadRequestException
1986//   An error returned if a request is not formed properly.
1987//
1988// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/UpdateBackendAuth
1989func (c *AmplifyBackend) UpdateBackendAuth(input *UpdateBackendAuthInput) (*UpdateBackendAuthOutput, error) {
1990	req, out := c.UpdateBackendAuthRequest(input)
1991	return out, req.Send()
1992}
1993
1994// UpdateBackendAuthWithContext is the same as UpdateBackendAuth with the addition of
1995// the ability to pass a context and additional request options.
1996//
1997// See UpdateBackendAuth for details on how to use this API operation.
1998//
1999// The context must be non-nil and will be used for request cancellation. If
2000// the context is nil a panic will occur. In the future the SDK may create
2001// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2002// for more information on using Contexts.
2003func (c *AmplifyBackend) UpdateBackendAuthWithContext(ctx aws.Context, input *UpdateBackendAuthInput, opts ...request.Option) (*UpdateBackendAuthOutput, error) {
2004	req, out := c.UpdateBackendAuthRequest(input)
2005	req.SetContext(ctx)
2006	req.ApplyOptions(opts...)
2007	return out, req.Send()
2008}
2009
2010const opUpdateBackendConfig = "UpdateBackendConfig"
2011
2012// UpdateBackendConfigRequest generates a "aws/request.Request" representing the
2013// client's request for the UpdateBackendConfig operation. The "output" return
2014// value will be populated with the request's response once the request completes
2015// successfully.
2016//
2017// Use "Send" method on the returned Request to send the API call to the service.
2018// the "output" return value is not valid until after Send returns without error.
2019//
2020// See UpdateBackendConfig for more information on using the UpdateBackendConfig
2021// API call, and error handling.
2022//
2023// This method is useful when you want to inject custom logic or configuration
2024// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2025//
2026//
2027//    // Example sending a request using the UpdateBackendConfigRequest method.
2028//    req, resp := client.UpdateBackendConfigRequest(params)
2029//
2030//    err := req.Send()
2031//    if err == nil { // resp is now filled
2032//        fmt.Println(resp)
2033//    }
2034//
2035// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/UpdateBackendConfig
2036func (c *AmplifyBackend) UpdateBackendConfigRequest(input *UpdateBackendConfigInput) (req *request.Request, output *UpdateBackendConfigOutput) {
2037	op := &request.Operation{
2038		Name:       opUpdateBackendConfig,
2039		HTTPMethod: "POST",
2040		HTTPPath:   "/backend/{appId}/config/update",
2041	}
2042
2043	if input == nil {
2044		input = &UpdateBackendConfigInput{}
2045	}
2046
2047	output = &UpdateBackendConfigOutput{}
2048	req = c.newRequest(op, input, output)
2049	return
2050}
2051
2052// UpdateBackendConfig API operation for AmplifyBackend.
2053//
2054// Updates the AWS resources that are required to access the Amplify Admin UI.
2055//
2056// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2057// with awserr.Error's Code and Message methods to get detailed information about
2058// the error.
2059//
2060// See the AWS API reference guide for AmplifyBackend's
2061// API operation UpdateBackendConfig for usage and error information.
2062//
2063// Returned Error Types:
2064//   * NotFoundException
2065//   An error returned when a specific resource type is not found.
2066//
2067//   * GatewayTimeoutException
2068//   An error returned if there's a temporary issue with the service.
2069//
2070//   * TooManyRequestsException
2071//   An error that is returned when a limit of a specific type is exceeded.
2072//
2073//   * BadRequestException
2074//   An error returned if a request is not formed properly.
2075//
2076// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/UpdateBackendConfig
2077func (c *AmplifyBackend) UpdateBackendConfig(input *UpdateBackendConfigInput) (*UpdateBackendConfigOutput, error) {
2078	req, out := c.UpdateBackendConfigRequest(input)
2079	return out, req.Send()
2080}
2081
2082// UpdateBackendConfigWithContext is the same as UpdateBackendConfig with the addition of
2083// the ability to pass a context and additional request options.
2084//
2085// See UpdateBackendConfig for details on how to use this API operation.
2086//
2087// The context must be non-nil and will be used for request cancellation. If
2088// the context is nil a panic will occur. In the future the SDK may create
2089// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2090// for more information on using Contexts.
2091func (c *AmplifyBackend) UpdateBackendConfigWithContext(ctx aws.Context, input *UpdateBackendConfigInput, opts ...request.Option) (*UpdateBackendConfigOutput, error) {
2092	req, out := c.UpdateBackendConfigRequest(input)
2093	req.SetContext(ctx)
2094	req.ApplyOptions(opts...)
2095	return out, req.Send()
2096}
2097
2098const opUpdateBackendJob = "UpdateBackendJob"
2099
2100// UpdateBackendJobRequest generates a "aws/request.Request" representing the
2101// client's request for the UpdateBackendJob operation. The "output" return
2102// value will be populated with the request's response once the request completes
2103// successfully.
2104//
2105// Use "Send" method on the returned Request to send the API call to the service.
2106// the "output" return value is not valid until after Send returns without error.
2107//
2108// See UpdateBackendJob for more information on using the UpdateBackendJob
2109// API call, and error handling.
2110//
2111// This method is useful when you want to inject custom logic or configuration
2112// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2113//
2114//
2115//    // Example sending a request using the UpdateBackendJobRequest method.
2116//    req, resp := client.UpdateBackendJobRequest(params)
2117//
2118//    err := req.Send()
2119//    if err == nil { // resp is now filled
2120//        fmt.Println(resp)
2121//    }
2122//
2123// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/UpdateBackendJob
2124func (c *AmplifyBackend) UpdateBackendJobRequest(input *UpdateBackendJobInput) (req *request.Request, output *UpdateBackendJobOutput) {
2125	op := &request.Operation{
2126		Name:       opUpdateBackendJob,
2127		HTTPMethod: "POST",
2128		HTTPPath:   "/backend/{appId}/job/{backendEnvironmentName}/{jobId}",
2129	}
2130
2131	if input == nil {
2132		input = &UpdateBackendJobInput{}
2133	}
2134
2135	output = &UpdateBackendJobOutput{}
2136	req = c.newRequest(op, input, output)
2137	return
2138}
2139
2140// UpdateBackendJob API operation for AmplifyBackend.
2141//
2142// Updates a specific job.
2143//
2144// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2145// with awserr.Error's Code and Message methods to get detailed information about
2146// the error.
2147//
2148// See the AWS API reference guide for AmplifyBackend's
2149// API operation UpdateBackendJob for usage and error information.
2150//
2151// Returned Error Types:
2152//   * NotFoundException
2153//   An error returned when a specific resource type is not found.
2154//
2155//   * GatewayTimeoutException
2156//   An error returned if there's a temporary issue with the service.
2157//
2158//   * TooManyRequestsException
2159//   An error that is returned when a limit of a specific type is exceeded.
2160//
2161//   * BadRequestException
2162//   An error returned if a request is not formed properly.
2163//
2164// See also, https://docs.aws.amazon.com/goto/WebAPI/amplifybackend-2020-08-11/UpdateBackendJob
2165func (c *AmplifyBackend) UpdateBackendJob(input *UpdateBackendJobInput) (*UpdateBackendJobOutput, error) {
2166	req, out := c.UpdateBackendJobRequest(input)
2167	return out, req.Send()
2168}
2169
2170// UpdateBackendJobWithContext is the same as UpdateBackendJob with the addition of
2171// the ability to pass a context and additional request options.
2172//
2173// See UpdateBackendJob for details on how to use this API operation.
2174//
2175// The context must be non-nil and will be used for request cancellation. If
2176// the context is nil a panic will occur. In the future the SDK may create
2177// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2178// for more information on using Contexts.
2179func (c *AmplifyBackend) UpdateBackendJobWithContext(ctx aws.Context, input *UpdateBackendJobInput, opts ...request.Option) (*UpdateBackendJobOutput, error) {
2180	req, out := c.UpdateBackendJobRequest(input)
2181	req.SetContext(ctx)
2182	req.ApplyOptions(opts...)
2183	return out, req.Send()
2184}
2185
2186// The authentication settings for accessing provisioned data models in your
2187// Amplify project.
2188type BackendAPIAppSyncAuthSettings struct {
2189	_ struct{} `type:"structure"`
2190
2191	// The Amazon Cognito user pool ID, if Amazon Cognito is used as an authentication
2192	// setting to access your data models.
2193	CognitoUserPoolId *string `locationName:"cognitoUserPoolId" type:"string"`
2194
2195	// The API key description for API_KEY, if it is used as an authentication mechanism
2196	// to access your data models.
2197	Description *string `locationName:"description" type:"string"`
2198
2199	// The API key expiration time for API_KEY, if it is used as an authentication
2200	// mechanism to access your data models.
2201	ExpirationTime *float64 `locationName:"expirationTime" type:"double"`
2202
2203	// The expiry time for the OpenID authentication mechanism.
2204	OpenIDAuthTTL *string `locationName:"openIDAuthTTL" type:"string"`
2205
2206	// The clientID for openID, if openID is used as an authentication setting to
2207	// access your data models.
2208	OpenIDClientId *string `locationName:"openIDClientId" type:"string"`
2209
2210	// The expiry time for the OpenID authentication mechanism.
2211	OpenIDIatTTL *string `locationName:"openIDIatTTL" type:"string"`
2212
2213	// The openID issuer URL, if openID is used as an authentication setting to
2214	// access your data models.
2215	OpenIDIssueURL *string `locationName:"openIDIssueURL" type:"string"`
2216
2217	// The openID provider name, if openID is used as an authentication mechanism
2218	// to access your data models.
2219	OpenIDProviderName *string `locationName:"openIDProviderName" type:"string"`
2220}
2221
2222// String returns the string representation
2223func (s BackendAPIAppSyncAuthSettings) String() string {
2224	return awsutil.Prettify(s)
2225}
2226
2227// GoString returns the string representation
2228func (s BackendAPIAppSyncAuthSettings) GoString() string {
2229	return s.String()
2230}
2231
2232// SetCognitoUserPoolId sets the CognitoUserPoolId field's value.
2233func (s *BackendAPIAppSyncAuthSettings) SetCognitoUserPoolId(v string) *BackendAPIAppSyncAuthSettings {
2234	s.CognitoUserPoolId = &v
2235	return s
2236}
2237
2238// SetDescription sets the Description field's value.
2239func (s *BackendAPIAppSyncAuthSettings) SetDescription(v string) *BackendAPIAppSyncAuthSettings {
2240	s.Description = &v
2241	return s
2242}
2243
2244// SetExpirationTime sets the ExpirationTime field's value.
2245func (s *BackendAPIAppSyncAuthSettings) SetExpirationTime(v float64) *BackendAPIAppSyncAuthSettings {
2246	s.ExpirationTime = &v
2247	return s
2248}
2249
2250// SetOpenIDAuthTTL sets the OpenIDAuthTTL field's value.
2251func (s *BackendAPIAppSyncAuthSettings) SetOpenIDAuthTTL(v string) *BackendAPIAppSyncAuthSettings {
2252	s.OpenIDAuthTTL = &v
2253	return s
2254}
2255
2256// SetOpenIDClientId sets the OpenIDClientId field's value.
2257func (s *BackendAPIAppSyncAuthSettings) SetOpenIDClientId(v string) *BackendAPIAppSyncAuthSettings {
2258	s.OpenIDClientId = &v
2259	return s
2260}
2261
2262// SetOpenIDIatTTL sets the OpenIDIatTTL field's value.
2263func (s *BackendAPIAppSyncAuthSettings) SetOpenIDIatTTL(v string) *BackendAPIAppSyncAuthSettings {
2264	s.OpenIDIatTTL = &v
2265	return s
2266}
2267
2268// SetOpenIDIssueURL sets the OpenIDIssueURL field's value.
2269func (s *BackendAPIAppSyncAuthSettings) SetOpenIDIssueURL(v string) *BackendAPIAppSyncAuthSettings {
2270	s.OpenIDIssueURL = &v
2271	return s
2272}
2273
2274// SetOpenIDProviderName sets the OpenIDProviderName field's value.
2275func (s *BackendAPIAppSyncAuthSettings) SetOpenIDProviderName(v string) *BackendAPIAppSyncAuthSettings {
2276	s.OpenIDProviderName = &v
2277	return s
2278}
2279
2280// Describes the auth types for your configured data models.
2281type BackendAPIAuthType struct {
2282	_ struct{} `type:"structure"`
2283
2284	// Describes the authentication mode.
2285	Mode *string `locationName:"mode" type:"string" enum:"Mode"`
2286
2287	// Describes settings for the authentication mode.
2288	Settings *BackendAPIAppSyncAuthSettings `locationName:"settings" type:"structure"`
2289}
2290
2291// String returns the string representation
2292func (s BackendAPIAuthType) String() string {
2293	return awsutil.Prettify(s)
2294}
2295
2296// GoString returns the string representation
2297func (s BackendAPIAuthType) GoString() string {
2298	return s.String()
2299}
2300
2301// SetMode sets the Mode field's value.
2302func (s *BackendAPIAuthType) SetMode(v string) *BackendAPIAuthType {
2303	s.Mode = &v
2304	return s
2305}
2306
2307// SetSettings sets the Settings field's value.
2308func (s *BackendAPIAuthType) SetSettings(v *BackendAPIAppSyncAuthSettings) *BackendAPIAuthType {
2309	s.Settings = v
2310	return s
2311}
2312
2313// Describes the conflict resolution configuration for the data model configured
2314// in your Amplify project.
2315type BackendAPIConflictResolution struct {
2316	_ struct{} `type:"structure"`
2317
2318	// The strategy for conflict resolution.
2319	ResolutionStrategy *string `locationName:"resolutionStrategy" type:"string" enum:"ResolutionStrategy"`
2320}
2321
2322// String returns the string representation
2323func (s BackendAPIConflictResolution) String() string {
2324	return awsutil.Prettify(s)
2325}
2326
2327// GoString returns the string representation
2328func (s BackendAPIConflictResolution) GoString() string {
2329	return s.String()
2330}
2331
2332// SetResolutionStrategy sets the ResolutionStrategy field's value.
2333func (s *BackendAPIConflictResolution) SetResolutionStrategy(v string) *BackendAPIConflictResolution {
2334	s.ResolutionStrategy = &v
2335	return s
2336}
2337
2338// The resource configuration for the data model, configured as a part of the
2339// Amplify project.
2340type BackendAPIResourceConfig struct {
2341	_ struct{} `type:"structure"`
2342
2343	// Additional authentication methods used to interact with your data models.
2344	AdditionalAuthTypes []*BackendAPIAuthType `locationName:"additionalAuthTypes" type:"list"`
2345
2346	// The API name used to interact with the data model, configured as a part of
2347	// the Amplify project.
2348	ApiName *string `locationName:"apiName" type:"string"`
2349
2350	// The conflict resolution strategy for your data stored in the data models.
2351	ConflictResolution *BackendAPIConflictResolution `locationName:"conflictResolution" type:"structure"`
2352
2353	// The default authentication type for interacting with the configured data
2354	// models in your Amplify project.
2355	DefaultAuthType *BackendAPIAuthType `locationName:"defaultAuthType" type:"structure"`
2356
2357	// The service used to provision and interact with the data model.
2358	Service *string `locationName:"service" type:"string"`
2359
2360	// The definition of the data model in the annotated transform of the GraphQL
2361	// schema.
2362	TransformSchema *string `locationName:"transformSchema" type:"string"`
2363}
2364
2365// String returns the string representation
2366func (s BackendAPIResourceConfig) String() string {
2367	return awsutil.Prettify(s)
2368}
2369
2370// GoString returns the string representation
2371func (s BackendAPIResourceConfig) GoString() string {
2372	return s.String()
2373}
2374
2375// SetAdditionalAuthTypes sets the AdditionalAuthTypes field's value.
2376func (s *BackendAPIResourceConfig) SetAdditionalAuthTypes(v []*BackendAPIAuthType) *BackendAPIResourceConfig {
2377	s.AdditionalAuthTypes = v
2378	return s
2379}
2380
2381// SetApiName sets the ApiName field's value.
2382func (s *BackendAPIResourceConfig) SetApiName(v string) *BackendAPIResourceConfig {
2383	s.ApiName = &v
2384	return s
2385}
2386
2387// SetConflictResolution sets the ConflictResolution field's value.
2388func (s *BackendAPIResourceConfig) SetConflictResolution(v *BackendAPIConflictResolution) *BackendAPIResourceConfig {
2389	s.ConflictResolution = v
2390	return s
2391}
2392
2393// SetDefaultAuthType sets the DefaultAuthType field's value.
2394func (s *BackendAPIResourceConfig) SetDefaultAuthType(v *BackendAPIAuthType) *BackendAPIResourceConfig {
2395	s.DefaultAuthType = v
2396	return s
2397}
2398
2399// SetService sets the Service field's value.
2400func (s *BackendAPIResourceConfig) SetService(v string) *BackendAPIResourceConfig {
2401	s.Service = &v
2402	return s
2403}
2404
2405// SetTransformSchema sets the TransformSchema field's value.
2406func (s *BackendAPIResourceConfig) SetTransformSchema(v string) *BackendAPIResourceConfig {
2407	s.TransformSchema = &v
2408	return s
2409}
2410
2411// Describes third-party social federation configurations for allowing your
2412// app users to sign in using OAuth.
2413type BackendAuthSocialProviderConfig struct {
2414	_ struct{} `type:"structure"`
2415
2416	// Describes the client_id that can be obtained from the third-party social
2417	// federation provider.
2418	ClientId *string `locationName:"client_id" type:"string"`
2419
2420	// Describes the client_secret that can be obtained from third-party social
2421	// federation providers.
2422	ClientSecret *string `locationName:"client_secret" type:"string"`
2423}
2424
2425// String returns the string representation
2426func (s BackendAuthSocialProviderConfig) String() string {
2427	return awsutil.Prettify(s)
2428}
2429
2430// GoString returns the string representation
2431func (s BackendAuthSocialProviderConfig) GoString() string {
2432	return s.String()
2433}
2434
2435// SetClientId sets the ClientId field's value.
2436func (s *BackendAuthSocialProviderConfig) SetClientId(v string) *BackendAuthSocialProviderConfig {
2437	s.ClientId = &v
2438	return s
2439}
2440
2441// SetClientSecret sets the ClientSecret field's value.
2442func (s *BackendAuthSocialProviderConfig) SetClientSecret(v string) *BackendAuthSocialProviderConfig {
2443	s.ClientSecret = &v
2444	return s
2445}
2446
2447// The response object for this operation.
2448type BackendJobRespObj struct {
2449	_ struct{} `type:"structure"`
2450
2451	// The app ID.
2452	//
2453	// AppId is a required field
2454	AppId *string `locationName:"appId" type:"string" required:"true"`
2455
2456	// The name of the backend environment.
2457	//
2458	// BackendEnvironmentName is a required field
2459	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string" required:"true"`
2460
2461	// The time when the job was created.
2462	CreateTime *string `locationName:"createTime" type:"string"`
2463
2464	// If the request failed, this is the returned error.
2465	Error *string `locationName:"error" type:"string"`
2466
2467	// The ID for the job.
2468	JobId *string `locationName:"jobId" type:"string"`
2469
2470	// The name of the operation.
2471	Operation *string `locationName:"operation" type:"string"`
2472
2473	// The current status of the request.
2474	Status *string `locationName:"status" type:"string"`
2475
2476	// The time when the job was last updated.
2477	UpdateTime *string `locationName:"updateTime" type:"string"`
2478}
2479
2480// String returns the string representation
2481func (s BackendJobRespObj) String() string {
2482	return awsutil.Prettify(s)
2483}
2484
2485// GoString returns the string representation
2486func (s BackendJobRespObj) GoString() string {
2487	return s.String()
2488}
2489
2490// SetAppId sets the AppId field's value.
2491func (s *BackendJobRespObj) SetAppId(v string) *BackendJobRespObj {
2492	s.AppId = &v
2493	return s
2494}
2495
2496// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
2497func (s *BackendJobRespObj) SetBackendEnvironmentName(v string) *BackendJobRespObj {
2498	s.BackendEnvironmentName = &v
2499	return s
2500}
2501
2502// SetCreateTime sets the CreateTime field's value.
2503func (s *BackendJobRespObj) SetCreateTime(v string) *BackendJobRespObj {
2504	s.CreateTime = &v
2505	return s
2506}
2507
2508// SetError sets the Error field's value.
2509func (s *BackendJobRespObj) SetError(v string) *BackendJobRespObj {
2510	s.Error = &v
2511	return s
2512}
2513
2514// SetJobId sets the JobId field's value.
2515func (s *BackendJobRespObj) SetJobId(v string) *BackendJobRespObj {
2516	s.JobId = &v
2517	return s
2518}
2519
2520// SetOperation sets the Operation field's value.
2521func (s *BackendJobRespObj) SetOperation(v string) *BackendJobRespObj {
2522	s.Operation = &v
2523	return s
2524}
2525
2526// SetStatus sets the Status field's value.
2527func (s *BackendJobRespObj) SetStatus(v string) *BackendJobRespObj {
2528	s.Status = &v
2529	return s
2530}
2531
2532// SetUpdateTime sets the UpdateTime field's value.
2533func (s *BackendJobRespObj) SetUpdateTime(v string) *BackendJobRespObj {
2534	s.UpdateTime = &v
2535	return s
2536}
2537
2538// An error returned if a request is not formed properly.
2539type BadRequestException struct {
2540	_            struct{}                  `type:"structure"`
2541	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
2542
2543	// An error message to inform that the request failed.
2544	Message_ *string `locationName:"message" type:"string"`
2545}
2546
2547// String returns the string representation
2548func (s BadRequestException) String() string {
2549	return awsutil.Prettify(s)
2550}
2551
2552// GoString returns the string representation
2553func (s BadRequestException) GoString() string {
2554	return s.String()
2555}
2556
2557func newErrorBadRequestException(v protocol.ResponseMetadata) error {
2558	return &BadRequestException{
2559		RespMetadata: v,
2560	}
2561}
2562
2563// Code returns the exception type name.
2564func (s *BadRequestException) Code() string {
2565	return "BadRequestException"
2566}
2567
2568// Message returns the exception's message.
2569func (s *BadRequestException) Message() string {
2570	if s.Message_ != nil {
2571		return *s.Message_
2572	}
2573	return ""
2574}
2575
2576// OrigErr always returns nil, satisfies awserr.Error interface.
2577func (s *BadRequestException) OrigErr() error {
2578	return nil
2579}
2580
2581func (s *BadRequestException) Error() string {
2582	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
2583}
2584
2585// Status code returns the HTTP status code for the request's response error.
2586func (s *BadRequestException) StatusCode() int {
2587	return s.RespMetadata.StatusCode
2588}
2589
2590// RequestID returns the service's response RequestID for request.
2591func (s *BadRequestException) RequestID() string {
2592	return s.RespMetadata.RequestID
2593}
2594
2595type CloneBackendInput struct {
2596	_ struct{} `type:"structure"`
2597
2598	// AppId is a required field
2599	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
2600
2601	// BackendEnvironmentName is a required field
2602	BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"`
2603
2604	// TargetEnvironmentName is a required field
2605	TargetEnvironmentName *string `locationName:"targetEnvironmentName" type:"string" required:"true"`
2606}
2607
2608// String returns the string representation
2609func (s CloneBackendInput) String() string {
2610	return awsutil.Prettify(s)
2611}
2612
2613// GoString returns the string representation
2614func (s CloneBackendInput) GoString() string {
2615	return s.String()
2616}
2617
2618// Validate inspects the fields of the type to determine if they are valid.
2619func (s *CloneBackendInput) Validate() error {
2620	invalidParams := request.ErrInvalidParams{Context: "CloneBackendInput"}
2621	if s.AppId == nil {
2622		invalidParams.Add(request.NewErrParamRequired("AppId"))
2623	}
2624	if s.AppId != nil && len(*s.AppId) < 1 {
2625		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
2626	}
2627	if s.BackendEnvironmentName == nil {
2628		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
2629	}
2630	if s.BackendEnvironmentName != nil && len(*s.BackendEnvironmentName) < 1 {
2631		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentName", 1))
2632	}
2633	if s.TargetEnvironmentName == nil {
2634		invalidParams.Add(request.NewErrParamRequired("TargetEnvironmentName"))
2635	}
2636
2637	if invalidParams.Len() > 0 {
2638		return invalidParams
2639	}
2640	return nil
2641}
2642
2643// SetAppId sets the AppId field's value.
2644func (s *CloneBackendInput) SetAppId(v string) *CloneBackendInput {
2645	s.AppId = &v
2646	return s
2647}
2648
2649// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
2650func (s *CloneBackendInput) SetBackendEnvironmentName(v string) *CloneBackendInput {
2651	s.BackendEnvironmentName = &v
2652	return s
2653}
2654
2655// SetTargetEnvironmentName sets the TargetEnvironmentName field's value.
2656func (s *CloneBackendInput) SetTargetEnvironmentName(v string) *CloneBackendInput {
2657	s.TargetEnvironmentName = &v
2658	return s
2659}
2660
2661type CloneBackendOutput struct {
2662	_ struct{} `type:"structure"`
2663
2664	AppId *string `locationName:"appId" type:"string"`
2665
2666	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
2667
2668	Error *string `locationName:"error" type:"string"`
2669
2670	JobId *string `locationName:"jobId" type:"string"`
2671
2672	Operation *string `locationName:"operation" type:"string"`
2673
2674	Status *string `locationName:"status" type:"string"`
2675}
2676
2677// String returns the string representation
2678func (s CloneBackendOutput) String() string {
2679	return awsutil.Prettify(s)
2680}
2681
2682// GoString returns the string representation
2683func (s CloneBackendOutput) GoString() string {
2684	return s.String()
2685}
2686
2687// SetAppId sets the AppId field's value.
2688func (s *CloneBackendOutput) SetAppId(v string) *CloneBackendOutput {
2689	s.AppId = &v
2690	return s
2691}
2692
2693// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
2694func (s *CloneBackendOutput) SetBackendEnvironmentName(v string) *CloneBackendOutput {
2695	s.BackendEnvironmentName = &v
2696	return s
2697}
2698
2699// SetError sets the Error field's value.
2700func (s *CloneBackendOutput) SetError(v string) *CloneBackendOutput {
2701	s.Error = &v
2702	return s
2703}
2704
2705// SetJobId sets the JobId field's value.
2706func (s *CloneBackendOutput) SetJobId(v string) *CloneBackendOutput {
2707	s.JobId = &v
2708	return s
2709}
2710
2711// SetOperation sets the Operation field's value.
2712func (s *CloneBackendOutput) SetOperation(v string) *CloneBackendOutput {
2713	s.Operation = &v
2714	return s
2715}
2716
2717// SetStatus sets the Status field's value.
2718func (s *CloneBackendOutput) SetStatus(v string) *CloneBackendOutput {
2719	s.Status = &v
2720	return s
2721}
2722
2723type CreateBackendAPIInput struct {
2724	_ struct{} `type:"structure"`
2725
2726	// AppId is a required field
2727	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
2728
2729	// BackendEnvironmentName is a required field
2730	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string" required:"true"`
2731
2732	// The resource configuration for the data model, configured as a part of the
2733	// Amplify project.
2734	//
2735	// ResourceConfig is a required field
2736	ResourceConfig *BackendAPIResourceConfig `locationName:"resourceConfig" type:"structure" required:"true"`
2737
2738	// ResourceName is a required field
2739	ResourceName *string `locationName:"resourceName" type:"string" required:"true"`
2740}
2741
2742// String returns the string representation
2743func (s CreateBackendAPIInput) String() string {
2744	return awsutil.Prettify(s)
2745}
2746
2747// GoString returns the string representation
2748func (s CreateBackendAPIInput) GoString() string {
2749	return s.String()
2750}
2751
2752// Validate inspects the fields of the type to determine if they are valid.
2753func (s *CreateBackendAPIInput) Validate() error {
2754	invalidParams := request.ErrInvalidParams{Context: "CreateBackendAPIInput"}
2755	if s.AppId == nil {
2756		invalidParams.Add(request.NewErrParamRequired("AppId"))
2757	}
2758	if s.AppId != nil && len(*s.AppId) < 1 {
2759		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
2760	}
2761	if s.BackendEnvironmentName == nil {
2762		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
2763	}
2764	if s.ResourceConfig == nil {
2765		invalidParams.Add(request.NewErrParamRequired("ResourceConfig"))
2766	}
2767	if s.ResourceName == nil {
2768		invalidParams.Add(request.NewErrParamRequired("ResourceName"))
2769	}
2770
2771	if invalidParams.Len() > 0 {
2772		return invalidParams
2773	}
2774	return nil
2775}
2776
2777// SetAppId sets the AppId field's value.
2778func (s *CreateBackendAPIInput) SetAppId(v string) *CreateBackendAPIInput {
2779	s.AppId = &v
2780	return s
2781}
2782
2783// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
2784func (s *CreateBackendAPIInput) SetBackendEnvironmentName(v string) *CreateBackendAPIInput {
2785	s.BackendEnvironmentName = &v
2786	return s
2787}
2788
2789// SetResourceConfig sets the ResourceConfig field's value.
2790func (s *CreateBackendAPIInput) SetResourceConfig(v *BackendAPIResourceConfig) *CreateBackendAPIInput {
2791	s.ResourceConfig = v
2792	return s
2793}
2794
2795// SetResourceName sets the ResourceName field's value.
2796func (s *CreateBackendAPIInput) SetResourceName(v string) *CreateBackendAPIInput {
2797	s.ResourceName = &v
2798	return s
2799}
2800
2801type CreateBackendAPIOutput struct {
2802	_ struct{} `type:"structure"`
2803
2804	AppId *string `locationName:"appId" type:"string"`
2805
2806	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
2807
2808	Error *string `locationName:"error" type:"string"`
2809
2810	JobId *string `locationName:"jobId" type:"string"`
2811
2812	Operation *string `locationName:"operation" type:"string"`
2813
2814	Status *string `locationName:"status" type:"string"`
2815}
2816
2817// String returns the string representation
2818func (s CreateBackendAPIOutput) String() string {
2819	return awsutil.Prettify(s)
2820}
2821
2822// GoString returns the string representation
2823func (s CreateBackendAPIOutput) GoString() string {
2824	return s.String()
2825}
2826
2827// SetAppId sets the AppId field's value.
2828func (s *CreateBackendAPIOutput) SetAppId(v string) *CreateBackendAPIOutput {
2829	s.AppId = &v
2830	return s
2831}
2832
2833// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
2834func (s *CreateBackendAPIOutput) SetBackendEnvironmentName(v string) *CreateBackendAPIOutput {
2835	s.BackendEnvironmentName = &v
2836	return s
2837}
2838
2839// SetError sets the Error field's value.
2840func (s *CreateBackendAPIOutput) SetError(v string) *CreateBackendAPIOutput {
2841	s.Error = &v
2842	return s
2843}
2844
2845// SetJobId sets the JobId field's value.
2846func (s *CreateBackendAPIOutput) SetJobId(v string) *CreateBackendAPIOutput {
2847	s.JobId = &v
2848	return s
2849}
2850
2851// SetOperation sets the Operation field's value.
2852func (s *CreateBackendAPIOutput) SetOperation(v string) *CreateBackendAPIOutput {
2853	s.Operation = &v
2854	return s
2855}
2856
2857// SetStatus sets the Status field's value.
2858func (s *CreateBackendAPIOutput) SetStatus(v string) *CreateBackendAPIOutput {
2859	s.Status = &v
2860	return s
2861}
2862
2863// Describes the forgot password policy for authenticating into the Amplify
2864// app.
2865type CreateBackendAuthForgotPasswordConfig struct {
2866	_ struct{} `type:"structure"`
2867
2868	// Describes which method to use (either SMS or email) to deliver messages to
2869	// app users that want to recover their password.
2870	//
2871	// DeliveryMethod is a required field
2872	DeliveryMethod *string `locationName:"deliveryMethod" type:"string" required:"true" enum:"DeliveryMethod"`
2873
2874	// The configuration for the email sent when an app user forgets their password.
2875	EmailSettings *EmailSettings `locationName:"emailSettings" type:"structure"`
2876
2877	// The configuration for the SMS message sent when an app user forgets their
2878	// password.
2879	SmsSettings *SmsSettings `locationName:"smsSettings" type:"structure"`
2880}
2881
2882// String returns the string representation
2883func (s CreateBackendAuthForgotPasswordConfig) String() string {
2884	return awsutil.Prettify(s)
2885}
2886
2887// GoString returns the string representation
2888func (s CreateBackendAuthForgotPasswordConfig) GoString() string {
2889	return s.String()
2890}
2891
2892// Validate inspects the fields of the type to determine if they are valid.
2893func (s *CreateBackendAuthForgotPasswordConfig) Validate() error {
2894	invalidParams := request.ErrInvalidParams{Context: "CreateBackendAuthForgotPasswordConfig"}
2895	if s.DeliveryMethod == nil {
2896		invalidParams.Add(request.NewErrParamRequired("DeliveryMethod"))
2897	}
2898
2899	if invalidParams.Len() > 0 {
2900		return invalidParams
2901	}
2902	return nil
2903}
2904
2905// SetDeliveryMethod sets the DeliveryMethod field's value.
2906func (s *CreateBackendAuthForgotPasswordConfig) SetDeliveryMethod(v string) *CreateBackendAuthForgotPasswordConfig {
2907	s.DeliveryMethod = &v
2908	return s
2909}
2910
2911// SetEmailSettings sets the EmailSettings field's value.
2912func (s *CreateBackendAuthForgotPasswordConfig) SetEmailSettings(v *EmailSettings) *CreateBackendAuthForgotPasswordConfig {
2913	s.EmailSettings = v
2914	return s
2915}
2916
2917// SetSmsSettings sets the SmsSettings field's value.
2918func (s *CreateBackendAuthForgotPasswordConfig) SetSmsSettings(v *SmsSettings) *CreateBackendAuthForgotPasswordConfig {
2919	s.SmsSettings = v
2920	return s
2921}
2922
2923// Describes authorization configurations for the auth resources, configured
2924// as a part of your Amplify project.
2925type CreateBackendAuthIdentityPoolConfig struct {
2926	_ struct{} `type:"structure"`
2927
2928	// Name of the identity pool used for authorization.
2929	//
2930	// IdentityPoolName is a required field
2931	IdentityPoolName *string `locationName:"identityPoolName" type:"string" required:"true"`
2932
2933	// Set to true or false based on whether you want to enable guest authorization
2934	// to your Amplify app.
2935	//
2936	// UnauthenticatedLogin is a required field
2937	UnauthenticatedLogin *bool `locationName:"unauthenticatedLogin" type:"boolean" required:"true"`
2938}
2939
2940// String returns the string representation
2941func (s CreateBackendAuthIdentityPoolConfig) String() string {
2942	return awsutil.Prettify(s)
2943}
2944
2945// GoString returns the string representation
2946func (s CreateBackendAuthIdentityPoolConfig) GoString() string {
2947	return s.String()
2948}
2949
2950// Validate inspects the fields of the type to determine if they are valid.
2951func (s *CreateBackendAuthIdentityPoolConfig) Validate() error {
2952	invalidParams := request.ErrInvalidParams{Context: "CreateBackendAuthIdentityPoolConfig"}
2953	if s.IdentityPoolName == nil {
2954		invalidParams.Add(request.NewErrParamRequired("IdentityPoolName"))
2955	}
2956	if s.UnauthenticatedLogin == nil {
2957		invalidParams.Add(request.NewErrParamRequired("UnauthenticatedLogin"))
2958	}
2959
2960	if invalidParams.Len() > 0 {
2961		return invalidParams
2962	}
2963	return nil
2964}
2965
2966// SetIdentityPoolName sets the IdentityPoolName field's value.
2967func (s *CreateBackendAuthIdentityPoolConfig) SetIdentityPoolName(v string) *CreateBackendAuthIdentityPoolConfig {
2968	s.IdentityPoolName = &v
2969	return s
2970}
2971
2972// SetUnauthenticatedLogin sets the UnauthenticatedLogin field's value.
2973func (s *CreateBackendAuthIdentityPoolConfig) SetUnauthenticatedLogin(v bool) *CreateBackendAuthIdentityPoolConfig {
2974	s.UnauthenticatedLogin = &v
2975	return s
2976}
2977
2978type CreateBackendAuthInput struct {
2979	_ struct{} `type:"structure"`
2980
2981	// AppId is a required field
2982	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
2983
2984	// BackendEnvironmentName is a required field
2985	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string" required:"true"`
2986
2987	// Defines the resource configuration when creating an auth resource in your
2988	// Amplify project.
2989	//
2990	// ResourceConfig is a required field
2991	ResourceConfig *CreateBackendAuthResourceConfig `locationName:"resourceConfig" type:"structure" required:"true"`
2992
2993	// ResourceName is a required field
2994	ResourceName *string `locationName:"resourceName" type:"string" required:"true"`
2995}
2996
2997// String returns the string representation
2998func (s CreateBackendAuthInput) String() string {
2999	return awsutil.Prettify(s)
3000}
3001
3002// GoString returns the string representation
3003func (s CreateBackendAuthInput) GoString() string {
3004	return s.String()
3005}
3006
3007// Validate inspects the fields of the type to determine if they are valid.
3008func (s *CreateBackendAuthInput) Validate() error {
3009	invalidParams := request.ErrInvalidParams{Context: "CreateBackendAuthInput"}
3010	if s.AppId == nil {
3011		invalidParams.Add(request.NewErrParamRequired("AppId"))
3012	}
3013	if s.AppId != nil && len(*s.AppId) < 1 {
3014		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
3015	}
3016	if s.BackendEnvironmentName == nil {
3017		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
3018	}
3019	if s.ResourceConfig == nil {
3020		invalidParams.Add(request.NewErrParamRequired("ResourceConfig"))
3021	}
3022	if s.ResourceName == nil {
3023		invalidParams.Add(request.NewErrParamRequired("ResourceName"))
3024	}
3025	if s.ResourceConfig != nil {
3026		if err := s.ResourceConfig.Validate(); err != nil {
3027			invalidParams.AddNested("ResourceConfig", err.(request.ErrInvalidParams))
3028		}
3029	}
3030
3031	if invalidParams.Len() > 0 {
3032		return invalidParams
3033	}
3034	return nil
3035}
3036
3037// SetAppId sets the AppId field's value.
3038func (s *CreateBackendAuthInput) SetAppId(v string) *CreateBackendAuthInput {
3039	s.AppId = &v
3040	return s
3041}
3042
3043// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
3044func (s *CreateBackendAuthInput) SetBackendEnvironmentName(v string) *CreateBackendAuthInput {
3045	s.BackendEnvironmentName = &v
3046	return s
3047}
3048
3049// SetResourceConfig sets the ResourceConfig field's value.
3050func (s *CreateBackendAuthInput) SetResourceConfig(v *CreateBackendAuthResourceConfig) *CreateBackendAuthInput {
3051	s.ResourceConfig = v
3052	return s
3053}
3054
3055// SetResourceName sets the ResourceName field's value.
3056func (s *CreateBackendAuthInput) SetResourceName(v string) *CreateBackendAuthInput {
3057	s.ResourceName = &v
3058	return s
3059}
3060
3061// Describes whether to apply multi-factor authentication (MFA) policies for
3062// your Amazon Cognito user pool that's configured as a part of your Amplify
3063// project.
3064type CreateBackendAuthMFAConfig struct {
3065	_ struct{} `type:"structure"`
3066
3067	// Describes whether MFA should be [ON, OFF, or OPTIONAL] for authentication
3068	// in your Amplify project.
3069	//
3070	// MFAMode is a required field
3071	MFAMode *string `type:"string" required:"true" enum:"MFAMode"`
3072
3073	// Describes the configuration settings and methods for your Amplify app users
3074	// to use MFA.
3075	Settings *Settings `locationName:"settings" type:"structure"`
3076}
3077
3078// String returns the string representation
3079func (s CreateBackendAuthMFAConfig) String() string {
3080	return awsutil.Prettify(s)
3081}
3082
3083// GoString returns the string representation
3084func (s CreateBackendAuthMFAConfig) GoString() string {
3085	return s.String()
3086}
3087
3088// Validate inspects the fields of the type to determine if they are valid.
3089func (s *CreateBackendAuthMFAConfig) Validate() error {
3090	invalidParams := request.ErrInvalidParams{Context: "CreateBackendAuthMFAConfig"}
3091	if s.MFAMode == nil {
3092		invalidParams.Add(request.NewErrParamRequired("MFAMode"))
3093	}
3094
3095	if invalidParams.Len() > 0 {
3096		return invalidParams
3097	}
3098	return nil
3099}
3100
3101// SetMFAMode sets the MFAMode field's value.
3102func (s *CreateBackendAuthMFAConfig) SetMFAMode(v string) *CreateBackendAuthMFAConfig {
3103	s.MFAMode = &v
3104	return s
3105}
3106
3107// SetSettings sets the Settings field's value.
3108func (s *CreateBackendAuthMFAConfig) SetSettings(v *Settings) *CreateBackendAuthMFAConfig {
3109	s.Settings = v
3110	return s
3111}
3112
3113// Creates the OAuth configuration for your Amplify project.
3114type CreateBackendAuthOAuthConfig struct {
3115	_ struct{} `type:"structure"`
3116
3117	// The domain prefix for your Amplify app.
3118	DomainPrefix *string `locationName:"domainPrefix" type:"string"`
3119
3120	// The OAuth grant type that you use to allow app users to authenticate from
3121	// your Amplify app.
3122	//
3123	// OAuthGrantType is a required field
3124	OAuthGrantType *string `locationName:"oAuthGrantType" type:"string" required:"true" enum:"OAuthGrantType"`
3125
3126	// List of OAuth-related flows that allow your app users to authenticate from
3127	// your Amplify app.
3128	//
3129	// OAuthScopes is a required field
3130	OAuthScopes []*string `locationName:"oAuthScopes" type:"list" required:"true"`
3131
3132	// The redirected URI for signing in to your Amplify app.
3133	//
3134	// RedirectSignInURIs is a required field
3135	RedirectSignInURIs []*string `locationName:"redirectSignInURIs" type:"list" required:"true"`
3136
3137	// Redirect URLs that OAuth uses when a user signs out of an Amplify app.
3138	//
3139	// RedirectSignOutURIs is a required field
3140	RedirectSignOutURIs []*string `locationName:"redirectSignOutURIs" type:"list" required:"true"`
3141
3142	// The settings for using social identity providers for access to your Amplify
3143	// app.
3144	SocialProviderSettings *SocialProviderSettings `locationName:"socialProviderSettings" type:"structure"`
3145}
3146
3147// String returns the string representation
3148func (s CreateBackendAuthOAuthConfig) String() string {
3149	return awsutil.Prettify(s)
3150}
3151
3152// GoString returns the string representation
3153func (s CreateBackendAuthOAuthConfig) GoString() string {
3154	return s.String()
3155}
3156
3157// Validate inspects the fields of the type to determine if they are valid.
3158func (s *CreateBackendAuthOAuthConfig) Validate() error {
3159	invalidParams := request.ErrInvalidParams{Context: "CreateBackendAuthOAuthConfig"}
3160	if s.OAuthGrantType == nil {
3161		invalidParams.Add(request.NewErrParamRequired("OAuthGrantType"))
3162	}
3163	if s.OAuthScopes == nil {
3164		invalidParams.Add(request.NewErrParamRequired("OAuthScopes"))
3165	}
3166	if s.RedirectSignInURIs == nil {
3167		invalidParams.Add(request.NewErrParamRequired("RedirectSignInURIs"))
3168	}
3169	if s.RedirectSignOutURIs == nil {
3170		invalidParams.Add(request.NewErrParamRequired("RedirectSignOutURIs"))
3171	}
3172
3173	if invalidParams.Len() > 0 {
3174		return invalidParams
3175	}
3176	return nil
3177}
3178
3179// SetDomainPrefix sets the DomainPrefix field's value.
3180func (s *CreateBackendAuthOAuthConfig) SetDomainPrefix(v string) *CreateBackendAuthOAuthConfig {
3181	s.DomainPrefix = &v
3182	return s
3183}
3184
3185// SetOAuthGrantType sets the OAuthGrantType field's value.
3186func (s *CreateBackendAuthOAuthConfig) SetOAuthGrantType(v string) *CreateBackendAuthOAuthConfig {
3187	s.OAuthGrantType = &v
3188	return s
3189}
3190
3191// SetOAuthScopes sets the OAuthScopes field's value.
3192func (s *CreateBackendAuthOAuthConfig) SetOAuthScopes(v []*string) *CreateBackendAuthOAuthConfig {
3193	s.OAuthScopes = v
3194	return s
3195}
3196
3197// SetRedirectSignInURIs sets the RedirectSignInURIs field's value.
3198func (s *CreateBackendAuthOAuthConfig) SetRedirectSignInURIs(v []*string) *CreateBackendAuthOAuthConfig {
3199	s.RedirectSignInURIs = v
3200	return s
3201}
3202
3203// SetRedirectSignOutURIs sets the RedirectSignOutURIs field's value.
3204func (s *CreateBackendAuthOAuthConfig) SetRedirectSignOutURIs(v []*string) *CreateBackendAuthOAuthConfig {
3205	s.RedirectSignOutURIs = v
3206	return s
3207}
3208
3209// SetSocialProviderSettings sets the SocialProviderSettings field's value.
3210func (s *CreateBackendAuthOAuthConfig) SetSocialProviderSettings(v *SocialProviderSettings) *CreateBackendAuthOAuthConfig {
3211	s.SocialProviderSettings = v
3212	return s
3213}
3214
3215type CreateBackendAuthOutput struct {
3216	_ struct{} `type:"structure"`
3217
3218	AppId *string `locationName:"appId" type:"string"`
3219
3220	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
3221
3222	Error *string `locationName:"error" type:"string"`
3223
3224	JobId *string `locationName:"jobId" type:"string"`
3225
3226	Operation *string `locationName:"operation" type:"string"`
3227
3228	Status *string `locationName:"status" type:"string"`
3229}
3230
3231// String returns the string representation
3232func (s CreateBackendAuthOutput) String() string {
3233	return awsutil.Prettify(s)
3234}
3235
3236// GoString returns the string representation
3237func (s CreateBackendAuthOutput) GoString() string {
3238	return s.String()
3239}
3240
3241// SetAppId sets the AppId field's value.
3242func (s *CreateBackendAuthOutput) SetAppId(v string) *CreateBackendAuthOutput {
3243	s.AppId = &v
3244	return s
3245}
3246
3247// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
3248func (s *CreateBackendAuthOutput) SetBackendEnvironmentName(v string) *CreateBackendAuthOutput {
3249	s.BackendEnvironmentName = &v
3250	return s
3251}
3252
3253// SetError sets the Error field's value.
3254func (s *CreateBackendAuthOutput) SetError(v string) *CreateBackendAuthOutput {
3255	s.Error = &v
3256	return s
3257}
3258
3259// SetJobId sets the JobId field's value.
3260func (s *CreateBackendAuthOutput) SetJobId(v string) *CreateBackendAuthOutput {
3261	s.JobId = &v
3262	return s
3263}
3264
3265// SetOperation sets the Operation field's value.
3266func (s *CreateBackendAuthOutput) SetOperation(v string) *CreateBackendAuthOutput {
3267	s.Operation = &v
3268	return s
3269}
3270
3271// SetStatus sets the Status field's value.
3272func (s *CreateBackendAuthOutput) SetStatus(v string) *CreateBackendAuthOutput {
3273	s.Status = &v
3274	return s
3275}
3276
3277// The password policy configuration for the backend of your Amplify project.
3278type CreateBackendAuthPasswordPolicyConfig struct {
3279	_ struct{} `type:"structure"`
3280
3281	// Additional constraints for the password used to access the backend of your
3282	// Amplify project.
3283	AdditionalConstraints []*string `locationName:"additionalConstraints" type:"list"`
3284
3285	// The minimum length of the password used to access the backend of your Amplify
3286	// project.
3287	//
3288	// MinimumLength is a required field
3289	MinimumLength *float64 `locationName:"minimumLength" type:"double" required:"true"`
3290}
3291
3292// String returns the string representation
3293func (s CreateBackendAuthPasswordPolicyConfig) String() string {
3294	return awsutil.Prettify(s)
3295}
3296
3297// GoString returns the string representation
3298func (s CreateBackendAuthPasswordPolicyConfig) GoString() string {
3299	return s.String()
3300}
3301
3302// Validate inspects the fields of the type to determine if they are valid.
3303func (s *CreateBackendAuthPasswordPolicyConfig) Validate() error {
3304	invalidParams := request.ErrInvalidParams{Context: "CreateBackendAuthPasswordPolicyConfig"}
3305	if s.MinimumLength == nil {
3306		invalidParams.Add(request.NewErrParamRequired("MinimumLength"))
3307	}
3308
3309	if invalidParams.Len() > 0 {
3310		return invalidParams
3311	}
3312	return nil
3313}
3314
3315// SetAdditionalConstraints sets the AdditionalConstraints field's value.
3316func (s *CreateBackendAuthPasswordPolicyConfig) SetAdditionalConstraints(v []*string) *CreateBackendAuthPasswordPolicyConfig {
3317	s.AdditionalConstraints = v
3318	return s
3319}
3320
3321// SetMinimumLength sets the MinimumLength field's value.
3322func (s *CreateBackendAuthPasswordPolicyConfig) SetMinimumLength(v float64) *CreateBackendAuthPasswordPolicyConfig {
3323	s.MinimumLength = &v
3324	return s
3325}
3326
3327// Defines the resource configuration when creating an auth resource in your
3328// Amplify project.
3329type CreateBackendAuthResourceConfig struct {
3330	_ struct{} `type:"structure"`
3331
3332	// Defines whether you want to configure only authentication or both authentication
3333	// and authorization settings.
3334	//
3335	// AuthResources is a required field
3336	AuthResources *string `locationName:"authResources" type:"string" required:"true" enum:"AuthResources"`
3337
3338	// Describes the authorization configuration for the Amazon Cognito identity
3339	// pool, provisioned as a part of the auth resource in your Amplify project.
3340	IdentityPoolConfigs *CreateBackendAuthIdentityPoolConfig `locationName:"identityPoolConfigs" type:"structure"`
3341
3342	// Defines the service name to use when configuring an authentication resource
3343	// in your Amplify project.
3344	//
3345	// Service is a required field
3346	Service *string `locationName:"service" type:"string" required:"true" enum:"Service"`
3347
3348	// Describes the authentication configuration for the Amazon Cognito user pool,
3349	// provisioned as a part of the auth resource in your Amplify project.
3350	//
3351	// UserPoolConfigs is a required field
3352	UserPoolConfigs *CreateBackendAuthUserPoolConfig `locationName:"userPoolConfigs" type:"structure" required:"true"`
3353}
3354
3355// String returns the string representation
3356func (s CreateBackendAuthResourceConfig) String() string {
3357	return awsutil.Prettify(s)
3358}
3359
3360// GoString returns the string representation
3361func (s CreateBackendAuthResourceConfig) GoString() string {
3362	return s.String()
3363}
3364
3365// Validate inspects the fields of the type to determine if they are valid.
3366func (s *CreateBackendAuthResourceConfig) Validate() error {
3367	invalidParams := request.ErrInvalidParams{Context: "CreateBackendAuthResourceConfig"}
3368	if s.AuthResources == nil {
3369		invalidParams.Add(request.NewErrParamRequired("AuthResources"))
3370	}
3371	if s.Service == nil {
3372		invalidParams.Add(request.NewErrParamRequired("Service"))
3373	}
3374	if s.UserPoolConfigs == nil {
3375		invalidParams.Add(request.NewErrParamRequired("UserPoolConfigs"))
3376	}
3377	if s.IdentityPoolConfigs != nil {
3378		if err := s.IdentityPoolConfigs.Validate(); err != nil {
3379			invalidParams.AddNested("IdentityPoolConfigs", err.(request.ErrInvalidParams))
3380		}
3381	}
3382	if s.UserPoolConfigs != nil {
3383		if err := s.UserPoolConfigs.Validate(); err != nil {
3384			invalidParams.AddNested("UserPoolConfigs", err.(request.ErrInvalidParams))
3385		}
3386	}
3387
3388	if invalidParams.Len() > 0 {
3389		return invalidParams
3390	}
3391	return nil
3392}
3393
3394// SetAuthResources sets the AuthResources field's value.
3395func (s *CreateBackendAuthResourceConfig) SetAuthResources(v string) *CreateBackendAuthResourceConfig {
3396	s.AuthResources = &v
3397	return s
3398}
3399
3400// SetIdentityPoolConfigs sets the IdentityPoolConfigs field's value.
3401func (s *CreateBackendAuthResourceConfig) SetIdentityPoolConfigs(v *CreateBackendAuthIdentityPoolConfig) *CreateBackendAuthResourceConfig {
3402	s.IdentityPoolConfigs = v
3403	return s
3404}
3405
3406// SetService sets the Service field's value.
3407func (s *CreateBackendAuthResourceConfig) SetService(v string) *CreateBackendAuthResourceConfig {
3408	s.Service = &v
3409	return s
3410}
3411
3412// SetUserPoolConfigs sets the UserPoolConfigs field's value.
3413func (s *CreateBackendAuthResourceConfig) SetUserPoolConfigs(v *CreateBackendAuthUserPoolConfig) *CreateBackendAuthResourceConfig {
3414	s.UserPoolConfigs = v
3415	return s
3416}
3417
3418// Describes the Amazon Cognito user pool configuration for the auth resource
3419// to be configured for your Amplify project.
3420type CreateBackendAuthUserPoolConfig struct {
3421	_ struct{} `type:"structure"`
3422
3423	// Describes the forgotten password policy for your Amazon Cognito user pool,
3424	// configured as a part of your Amplify project.
3425	ForgotPassword *CreateBackendAuthForgotPasswordConfig `locationName:"forgotPassword" type:"structure"`
3426
3427	// Describes whether to apply multi-factor authentication (MFA) policies for
3428	// your Amazon Cognito user pool that's configured as a part of your Amplify
3429	// project.
3430	Mfa *CreateBackendAuthMFAConfig `locationName:"mfa" type:"structure"`
3431
3432	// Describes the OAuth policy and rules for your Amazon Cognito user pool, configured
3433	// as a part of your Amplify project.
3434	OAuth *CreateBackendAuthOAuthConfig `locationName:"oAuth" type:"structure"`
3435
3436	// Describes the password policy for your Amazon Cognito user pool, configured
3437	// as a part of your Amplify project.
3438	PasswordPolicy *CreateBackendAuthPasswordPolicyConfig `locationName:"passwordPolicy" type:"structure"`
3439
3440	// The required attributes to sign up new users in the Amazon Cognito user pool.
3441	//
3442	// RequiredSignUpAttributes is a required field
3443	RequiredSignUpAttributes []*string `locationName:"requiredSignUpAttributes" type:"list" required:"true"`
3444
3445	// Describes the sign-in methods that your Amplify app users to log in using
3446	// the Amazon Cognito user pool that's configured as a part of your Amplify
3447	// project.
3448	//
3449	// SignInMethod is a required field
3450	SignInMethod *string `locationName:"signInMethod" type:"string" required:"true" enum:"SignInMethod"`
3451
3452	// The Amazon Cognito user pool name.
3453	//
3454	// UserPoolName is a required field
3455	UserPoolName *string `locationName:"userPoolName" type:"string" required:"true"`
3456}
3457
3458// String returns the string representation
3459func (s CreateBackendAuthUserPoolConfig) String() string {
3460	return awsutil.Prettify(s)
3461}
3462
3463// GoString returns the string representation
3464func (s CreateBackendAuthUserPoolConfig) GoString() string {
3465	return s.String()
3466}
3467
3468// Validate inspects the fields of the type to determine if they are valid.
3469func (s *CreateBackendAuthUserPoolConfig) Validate() error {
3470	invalidParams := request.ErrInvalidParams{Context: "CreateBackendAuthUserPoolConfig"}
3471	if s.RequiredSignUpAttributes == nil {
3472		invalidParams.Add(request.NewErrParamRequired("RequiredSignUpAttributes"))
3473	}
3474	if s.SignInMethod == nil {
3475		invalidParams.Add(request.NewErrParamRequired("SignInMethod"))
3476	}
3477	if s.UserPoolName == nil {
3478		invalidParams.Add(request.NewErrParamRequired("UserPoolName"))
3479	}
3480	if s.ForgotPassword != nil {
3481		if err := s.ForgotPassword.Validate(); err != nil {
3482			invalidParams.AddNested("ForgotPassword", err.(request.ErrInvalidParams))
3483		}
3484	}
3485	if s.Mfa != nil {
3486		if err := s.Mfa.Validate(); err != nil {
3487			invalidParams.AddNested("Mfa", err.(request.ErrInvalidParams))
3488		}
3489	}
3490	if s.OAuth != nil {
3491		if err := s.OAuth.Validate(); err != nil {
3492			invalidParams.AddNested("OAuth", err.(request.ErrInvalidParams))
3493		}
3494	}
3495	if s.PasswordPolicy != nil {
3496		if err := s.PasswordPolicy.Validate(); err != nil {
3497			invalidParams.AddNested("PasswordPolicy", err.(request.ErrInvalidParams))
3498		}
3499	}
3500
3501	if invalidParams.Len() > 0 {
3502		return invalidParams
3503	}
3504	return nil
3505}
3506
3507// SetForgotPassword sets the ForgotPassword field's value.
3508func (s *CreateBackendAuthUserPoolConfig) SetForgotPassword(v *CreateBackendAuthForgotPasswordConfig) *CreateBackendAuthUserPoolConfig {
3509	s.ForgotPassword = v
3510	return s
3511}
3512
3513// SetMfa sets the Mfa field's value.
3514func (s *CreateBackendAuthUserPoolConfig) SetMfa(v *CreateBackendAuthMFAConfig) *CreateBackendAuthUserPoolConfig {
3515	s.Mfa = v
3516	return s
3517}
3518
3519// SetOAuth sets the OAuth field's value.
3520func (s *CreateBackendAuthUserPoolConfig) SetOAuth(v *CreateBackendAuthOAuthConfig) *CreateBackendAuthUserPoolConfig {
3521	s.OAuth = v
3522	return s
3523}
3524
3525// SetPasswordPolicy sets the PasswordPolicy field's value.
3526func (s *CreateBackendAuthUserPoolConfig) SetPasswordPolicy(v *CreateBackendAuthPasswordPolicyConfig) *CreateBackendAuthUserPoolConfig {
3527	s.PasswordPolicy = v
3528	return s
3529}
3530
3531// SetRequiredSignUpAttributes sets the RequiredSignUpAttributes field's value.
3532func (s *CreateBackendAuthUserPoolConfig) SetRequiredSignUpAttributes(v []*string) *CreateBackendAuthUserPoolConfig {
3533	s.RequiredSignUpAttributes = v
3534	return s
3535}
3536
3537// SetSignInMethod sets the SignInMethod field's value.
3538func (s *CreateBackendAuthUserPoolConfig) SetSignInMethod(v string) *CreateBackendAuthUserPoolConfig {
3539	s.SignInMethod = &v
3540	return s
3541}
3542
3543// SetUserPoolName sets the UserPoolName field's value.
3544func (s *CreateBackendAuthUserPoolConfig) SetUserPoolName(v string) *CreateBackendAuthUserPoolConfig {
3545	s.UserPoolName = &v
3546	return s
3547}
3548
3549type CreateBackendConfigInput struct {
3550	_ struct{} `type:"structure"`
3551
3552	// AppId is a required field
3553	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
3554
3555	BackendManagerAppId *string `locationName:"backendManagerAppId" type:"string"`
3556}
3557
3558// String returns the string representation
3559func (s CreateBackendConfigInput) String() string {
3560	return awsutil.Prettify(s)
3561}
3562
3563// GoString returns the string representation
3564func (s CreateBackendConfigInput) GoString() string {
3565	return s.String()
3566}
3567
3568// Validate inspects the fields of the type to determine if they are valid.
3569func (s *CreateBackendConfigInput) Validate() error {
3570	invalidParams := request.ErrInvalidParams{Context: "CreateBackendConfigInput"}
3571	if s.AppId == nil {
3572		invalidParams.Add(request.NewErrParamRequired("AppId"))
3573	}
3574	if s.AppId != nil && len(*s.AppId) < 1 {
3575		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
3576	}
3577
3578	if invalidParams.Len() > 0 {
3579		return invalidParams
3580	}
3581	return nil
3582}
3583
3584// SetAppId sets the AppId field's value.
3585func (s *CreateBackendConfigInput) SetAppId(v string) *CreateBackendConfigInput {
3586	s.AppId = &v
3587	return s
3588}
3589
3590// SetBackendManagerAppId sets the BackendManagerAppId field's value.
3591func (s *CreateBackendConfigInput) SetBackendManagerAppId(v string) *CreateBackendConfigInput {
3592	s.BackendManagerAppId = &v
3593	return s
3594}
3595
3596type CreateBackendConfigOutput struct {
3597	_ struct{} `type:"structure"`
3598
3599	AppId *string `locationName:"appId" type:"string"`
3600
3601	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
3602
3603	JobId *string `locationName:"jobId" type:"string"`
3604
3605	Status *string `locationName:"status" type:"string"`
3606}
3607
3608// String returns the string representation
3609func (s CreateBackendConfigOutput) String() string {
3610	return awsutil.Prettify(s)
3611}
3612
3613// GoString returns the string representation
3614func (s CreateBackendConfigOutput) GoString() string {
3615	return s.String()
3616}
3617
3618// SetAppId sets the AppId field's value.
3619func (s *CreateBackendConfigOutput) SetAppId(v string) *CreateBackendConfigOutput {
3620	s.AppId = &v
3621	return s
3622}
3623
3624// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
3625func (s *CreateBackendConfigOutput) SetBackendEnvironmentName(v string) *CreateBackendConfigOutput {
3626	s.BackendEnvironmentName = &v
3627	return s
3628}
3629
3630// SetJobId sets the JobId field's value.
3631func (s *CreateBackendConfigOutput) SetJobId(v string) *CreateBackendConfigOutput {
3632	s.JobId = &v
3633	return s
3634}
3635
3636// SetStatus sets the Status field's value.
3637func (s *CreateBackendConfigOutput) SetStatus(v string) *CreateBackendConfigOutput {
3638	s.Status = &v
3639	return s
3640}
3641
3642type CreateBackendInput struct {
3643	_ struct{} `type:"structure"`
3644
3645	// AppId is a required field
3646	AppId *string `locationName:"appId" type:"string" required:"true"`
3647
3648	// AppName is a required field
3649	AppName *string `locationName:"appName" type:"string" required:"true"`
3650
3651	// BackendEnvironmentName is a required field
3652	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string" required:"true"`
3653
3654	ResourceConfig *ResourceConfig `locationName:"resourceConfig" type:"structure"`
3655
3656	ResourceName *string `locationName:"resourceName" type:"string"`
3657}
3658
3659// String returns the string representation
3660func (s CreateBackendInput) String() string {
3661	return awsutil.Prettify(s)
3662}
3663
3664// GoString returns the string representation
3665func (s CreateBackendInput) GoString() string {
3666	return s.String()
3667}
3668
3669// Validate inspects the fields of the type to determine if they are valid.
3670func (s *CreateBackendInput) Validate() error {
3671	invalidParams := request.ErrInvalidParams{Context: "CreateBackendInput"}
3672	if s.AppId == nil {
3673		invalidParams.Add(request.NewErrParamRequired("AppId"))
3674	}
3675	if s.AppName == nil {
3676		invalidParams.Add(request.NewErrParamRequired("AppName"))
3677	}
3678	if s.BackendEnvironmentName == nil {
3679		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
3680	}
3681
3682	if invalidParams.Len() > 0 {
3683		return invalidParams
3684	}
3685	return nil
3686}
3687
3688// SetAppId sets the AppId field's value.
3689func (s *CreateBackendInput) SetAppId(v string) *CreateBackendInput {
3690	s.AppId = &v
3691	return s
3692}
3693
3694// SetAppName sets the AppName field's value.
3695func (s *CreateBackendInput) SetAppName(v string) *CreateBackendInput {
3696	s.AppName = &v
3697	return s
3698}
3699
3700// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
3701func (s *CreateBackendInput) SetBackendEnvironmentName(v string) *CreateBackendInput {
3702	s.BackendEnvironmentName = &v
3703	return s
3704}
3705
3706// SetResourceConfig sets the ResourceConfig field's value.
3707func (s *CreateBackendInput) SetResourceConfig(v *ResourceConfig) *CreateBackendInput {
3708	s.ResourceConfig = v
3709	return s
3710}
3711
3712// SetResourceName sets the ResourceName field's value.
3713func (s *CreateBackendInput) SetResourceName(v string) *CreateBackendInput {
3714	s.ResourceName = &v
3715	return s
3716}
3717
3718type CreateBackendOutput struct {
3719	_ struct{} `type:"structure"`
3720
3721	AppId *string `locationName:"appId" type:"string"`
3722
3723	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
3724
3725	Error *string `locationName:"error" type:"string"`
3726
3727	JobId *string `locationName:"jobId" type:"string"`
3728
3729	Operation *string `locationName:"operation" type:"string"`
3730
3731	Status *string `locationName:"status" type:"string"`
3732}
3733
3734// String returns the string representation
3735func (s CreateBackendOutput) String() string {
3736	return awsutil.Prettify(s)
3737}
3738
3739// GoString returns the string representation
3740func (s CreateBackendOutput) GoString() string {
3741	return s.String()
3742}
3743
3744// SetAppId sets the AppId field's value.
3745func (s *CreateBackendOutput) SetAppId(v string) *CreateBackendOutput {
3746	s.AppId = &v
3747	return s
3748}
3749
3750// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
3751func (s *CreateBackendOutput) SetBackendEnvironmentName(v string) *CreateBackendOutput {
3752	s.BackendEnvironmentName = &v
3753	return s
3754}
3755
3756// SetError sets the Error field's value.
3757func (s *CreateBackendOutput) SetError(v string) *CreateBackendOutput {
3758	s.Error = &v
3759	return s
3760}
3761
3762// SetJobId sets the JobId field's value.
3763func (s *CreateBackendOutput) SetJobId(v string) *CreateBackendOutput {
3764	s.JobId = &v
3765	return s
3766}
3767
3768// SetOperation sets the Operation field's value.
3769func (s *CreateBackendOutput) SetOperation(v string) *CreateBackendOutput {
3770	s.Operation = &v
3771	return s
3772}
3773
3774// SetStatus sets the Status field's value.
3775func (s *CreateBackendOutput) SetStatus(v string) *CreateBackendOutput {
3776	s.Status = &v
3777	return s
3778}
3779
3780type CreateTokenInput struct {
3781	_ struct{} `type:"structure"`
3782
3783	// AppId is a required field
3784	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
3785}
3786
3787// String returns the string representation
3788func (s CreateTokenInput) String() string {
3789	return awsutil.Prettify(s)
3790}
3791
3792// GoString returns the string representation
3793func (s CreateTokenInput) GoString() string {
3794	return s.String()
3795}
3796
3797// Validate inspects the fields of the type to determine if they are valid.
3798func (s *CreateTokenInput) Validate() error {
3799	invalidParams := request.ErrInvalidParams{Context: "CreateTokenInput"}
3800	if s.AppId == nil {
3801		invalidParams.Add(request.NewErrParamRequired("AppId"))
3802	}
3803	if s.AppId != nil && len(*s.AppId) < 1 {
3804		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
3805	}
3806
3807	if invalidParams.Len() > 0 {
3808		return invalidParams
3809	}
3810	return nil
3811}
3812
3813// SetAppId sets the AppId field's value.
3814func (s *CreateTokenInput) SetAppId(v string) *CreateTokenInput {
3815	s.AppId = &v
3816	return s
3817}
3818
3819type CreateTokenOutput struct {
3820	_ struct{} `type:"structure"`
3821
3822	AppId *string `locationName:"appId" type:"string"`
3823
3824	ChallengeCode *string `locationName:"challengeCode" type:"string"`
3825
3826	SessionId *string `locationName:"sessionId" type:"string"`
3827
3828	Ttl *string `locationName:"ttl" type:"string"`
3829}
3830
3831// String returns the string representation
3832func (s CreateTokenOutput) String() string {
3833	return awsutil.Prettify(s)
3834}
3835
3836// GoString returns the string representation
3837func (s CreateTokenOutput) GoString() string {
3838	return s.String()
3839}
3840
3841// SetAppId sets the AppId field's value.
3842func (s *CreateTokenOutput) SetAppId(v string) *CreateTokenOutput {
3843	s.AppId = &v
3844	return s
3845}
3846
3847// SetChallengeCode sets the ChallengeCode field's value.
3848func (s *CreateTokenOutput) SetChallengeCode(v string) *CreateTokenOutput {
3849	s.ChallengeCode = &v
3850	return s
3851}
3852
3853// SetSessionId sets the SessionId field's value.
3854func (s *CreateTokenOutput) SetSessionId(v string) *CreateTokenOutput {
3855	s.SessionId = &v
3856	return s
3857}
3858
3859// SetTtl sets the Ttl field's value.
3860func (s *CreateTokenOutput) SetTtl(v string) *CreateTokenOutput {
3861	s.Ttl = &v
3862	return s
3863}
3864
3865type DeleteBackendAPIInput struct {
3866	_ struct{} `type:"structure"`
3867
3868	// AppId is a required field
3869	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
3870
3871	// BackendEnvironmentName is a required field
3872	BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"`
3873
3874	// The resource configuration for the data model, configured as a part of the
3875	// Amplify project.
3876	ResourceConfig *BackendAPIResourceConfig `locationName:"resourceConfig" type:"structure"`
3877
3878	// ResourceName is a required field
3879	ResourceName *string `locationName:"resourceName" type:"string" required:"true"`
3880}
3881
3882// String returns the string representation
3883func (s DeleteBackendAPIInput) String() string {
3884	return awsutil.Prettify(s)
3885}
3886
3887// GoString returns the string representation
3888func (s DeleteBackendAPIInput) GoString() string {
3889	return s.String()
3890}
3891
3892// Validate inspects the fields of the type to determine if they are valid.
3893func (s *DeleteBackendAPIInput) Validate() error {
3894	invalidParams := request.ErrInvalidParams{Context: "DeleteBackendAPIInput"}
3895	if s.AppId == nil {
3896		invalidParams.Add(request.NewErrParamRequired("AppId"))
3897	}
3898	if s.AppId != nil && len(*s.AppId) < 1 {
3899		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
3900	}
3901	if s.BackendEnvironmentName == nil {
3902		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
3903	}
3904	if s.BackendEnvironmentName != nil && len(*s.BackendEnvironmentName) < 1 {
3905		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentName", 1))
3906	}
3907	if s.ResourceName == nil {
3908		invalidParams.Add(request.NewErrParamRequired("ResourceName"))
3909	}
3910
3911	if invalidParams.Len() > 0 {
3912		return invalidParams
3913	}
3914	return nil
3915}
3916
3917// SetAppId sets the AppId field's value.
3918func (s *DeleteBackendAPIInput) SetAppId(v string) *DeleteBackendAPIInput {
3919	s.AppId = &v
3920	return s
3921}
3922
3923// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
3924func (s *DeleteBackendAPIInput) SetBackendEnvironmentName(v string) *DeleteBackendAPIInput {
3925	s.BackendEnvironmentName = &v
3926	return s
3927}
3928
3929// SetResourceConfig sets the ResourceConfig field's value.
3930func (s *DeleteBackendAPIInput) SetResourceConfig(v *BackendAPIResourceConfig) *DeleteBackendAPIInput {
3931	s.ResourceConfig = v
3932	return s
3933}
3934
3935// SetResourceName sets the ResourceName field's value.
3936func (s *DeleteBackendAPIInput) SetResourceName(v string) *DeleteBackendAPIInput {
3937	s.ResourceName = &v
3938	return s
3939}
3940
3941type DeleteBackendAPIOutput struct {
3942	_ struct{} `type:"structure"`
3943
3944	AppId *string `locationName:"appId" type:"string"`
3945
3946	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
3947
3948	Error *string `locationName:"error" type:"string"`
3949
3950	JobId *string `locationName:"jobId" type:"string"`
3951
3952	Operation *string `locationName:"operation" type:"string"`
3953
3954	Status *string `locationName:"status" type:"string"`
3955}
3956
3957// String returns the string representation
3958func (s DeleteBackendAPIOutput) String() string {
3959	return awsutil.Prettify(s)
3960}
3961
3962// GoString returns the string representation
3963func (s DeleteBackendAPIOutput) GoString() string {
3964	return s.String()
3965}
3966
3967// SetAppId sets the AppId field's value.
3968func (s *DeleteBackendAPIOutput) SetAppId(v string) *DeleteBackendAPIOutput {
3969	s.AppId = &v
3970	return s
3971}
3972
3973// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
3974func (s *DeleteBackendAPIOutput) SetBackendEnvironmentName(v string) *DeleteBackendAPIOutput {
3975	s.BackendEnvironmentName = &v
3976	return s
3977}
3978
3979// SetError sets the Error field's value.
3980func (s *DeleteBackendAPIOutput) SetError(v string) *DeleteBackendAPIOutput {
3981	s.Error = &v
3982	return s
3983}
3984
3985// SetJobId sets the JobId field's value.
3986func (s *DeleteBackendAPIOutput) SetJobId(v string) *DeleteBackendAPIOutput {
3987	s.JobId = &v
3988	return s
3989}
3990
3991// SetOperation sets the Operation field's value.
3992func (s *DeleteBackendAPIOutput) SetOperation(v string) *DeleteBackendAPIOutput {
3993	s.Operation = &v
3994	return s
3995}
3996
3997// SetStatus sets the Status field's value.
3998func (s *DeleteBackendAPIOutput) SetStatus(v string) *DeleteBackendAPIOutput {
3999	s.Status = &v
4000	return s
4001}
4002
4003type DeleteBackendAuthInput struct {
4004	_ struct{} `type:"structure"`
4005
4006	// AppId is a required field
4007	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
4008
4009	// BackendEnvironmentName is a required field
4010	BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"`
4011
4012	// ResourceName is a required field
4013	ResourceName *string `locationName:"resourceName" type:"string" required:"true"`
4014}
4015
4016// String returns the string representation
4017func (s DeleteBackendAuthInput) String() string {
4018	return awsutil.Prettify(s)
4019}
4020
4021// GoString returns the string representation
4022func (s DeleteBackendAuthInput) GoString() string {
4023	return s.String()
4024}
4025
4026// Validate inspects the fields of the type to determine if they are valid.
4027func (s *DeleteBackendAuthInput) Validate() error {
4028	invalidParams := request.ErrInvalidParams{Context: "DeleteBackendAuthInput"}
4029	if s.AppId == nil {
4030		invalidParams.Add(request.NewErrParamRequired("AppId"))
4031	}
4032	if s.AppId != nil && len(*s.AppId) < 1 {
4033		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
4034	}
4035	if s.BackendEnvironmentName == nil {
4036		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
4037	}
4038	if s.BackendEnvironmentName != nil && len(*s.BackendEnvironmentName) < 1 {
4039		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentName", 1))
4040	}
4041	if s.ResourceName == nil {
4042		invalidParams.Add(request.NewErrParamRequired("ResourceName"))
4043	}
4044
4045	if invalidParams.Len() > 0 {
4046		return invalidParams
4047	}
4048	return nil
4049}
4050
4051// SetAppId sets the AppId field's value.
4052func (s *DeleteBackendAuthInput) SetAppId(v string) *DeleteBackendAuthInput {
4053	s.AppId = &v
4054	return s
4055}
4056
4057// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
4058func (s *DeleteBackendAuthInput) SetBackendEnvironmentName(v string) *DeleteBackendAuthInput {
4059	s.BackendEnvironmentName = &v
4060	return s
4061}
4062
4063// SetResourceName sets the ResourceName field's value.
4064func (s *DeleteBackendAuthInput) SetResourceName(v string) *DeleteBackendAuthInput {
4065	s.ResourceName = &v
4066	return s
4067}
4068
4069type DeleteBackendAuthOutput struct {
4070	_ struct{} `type:"structure"`
4071
4072	AppId *string `locationName:"appId" type:"string"`
4073
4074	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
4075
4076	Error *string `locationName:"error" type:"string"`
4077
4078	JobId *string `locationName:"jobId" type:"string"`
4079
4080	Operation *string `locationName:"operation" type:"string"`
4081
4082	Status *string `locationName:"status" type:"string"`
4083}
4084
4085// String returns the string representation
4086func (s DeleteBackendAuthOutput) String() string {
4087	return awsutil.Prettify(s)
4088}
4089
4090// GoString returns the string representation
4091func (s DeleteBackendAuthOutput) GoString() string {
4092	return s.String()
4093}
4094
4095// SetAppId sets the AppId field's value.
4096func (s *DeleteBackendAuthOutput) SetAppId(v string) *DeleteBackendAuthOutput {
4097	s.AppId = &v
4098	return s
4099}
4100
4101// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
4102func (s *DeleteBackendAuthOutput) SetBackendEnvironmentName(v string) *DeleteBackendAuthOutput {
4103	s.BackendEnvironmentName = &v
4104	return s
4105}
4106
4107// SetError sets the Error field's value.
4108func (s *DeleteBackendAuthOutput) SetError(v string) *DeleteBackendAuthOutput {
4109	s.Error = &v
4110	return s
4111}
4112
4113// SetJobId sets the JobId field's value.
4114func (s *DeleteBackendAuthOutput) SetJobId(v string) *DeleteBackendAuthOutput {
4115	s.JobId = &v
4116	return s
4117}
4118
4119// SetOperation sets the Operation field's value.
4120func (s *DeleteBackendAuthOutput) SetOperation(v string) *DeleteBackendAuthOutput {
4121	s.Operation = &v
4122	return s
4123}
4124
4125// SetStatus sets the Status field's value.
4126func (s *DeleteBackendAuthOutput) SetStatus(v string) *DeleteBackendAuthOutput {
4127	s.Status = &v
4128	return s
4129}
4130
4131type DeleteBackendInput struct {
4132	_ struct{} `type:"structure"`
4133
4134	// AppId is a required field
4135	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
4136
4137	// BackendEnvironmentName is a required field
4138	BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"`
4139}
4140
4141// String returns the string representation
4142func (s DeleteBackendInput) String() string {
4143	return awsutil.Prettify(s)
4144}
4145
4146// GoString returns the string representation
4147func (s DeleteBackendInput) GoString() string {
4148	return s.String()
4149}
4150
4151// Validate inspects the fields of the type to determine if they are valid.
4152func (s *DeleteBackendInput) Validate() error {
4153	invalidParams := request.ErrInvalidParams{Context: "DeleteBackendInput"}
4154	if s.AppId == nil {
4155		invalidParams.Add(request.NewErrParamRequired("AppId"))
4156	}
4157	if s.AppId != nil && len(*s.AppId) < 1 {
4158		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
4159	}
4160	if s.BackendEnvironmentName == nil {
4161		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
4162	}
4163	if s.BackendEnvironmentName != nil && len(*s.BackendEnvironmentName) < 1 {
4164		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentName", 1))
4165	}
4166
4167	if invalidParams.Len() > 0 {
4168		return invalidParams
4169	}
4170	return nil
4171}
4172
4173// SetAppId sets the AppId field's value.
4174func (s *DeleteBackendInput) SetAppId(v string) *DeleteBackendInput {
4175	s.AppId = &v
4176	return s
4177}
4178
4179// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
4180func (s *DeleteBackendInput) SetBackendEnvironmentName(v string) *DeleteBackendInput {
4181	s.BackendEnvironmentName = &v
4182	return s
4183}
4184
4185type DeleteBackendOutput struct {
4186	_ struct{} `type:"structure"`
4187
4188	AppId *string `locationName:"appId" type:"string"`
4189
4190	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
4191
4192	Error *string `locationName:"error" type:"string"`
4193
4194	JobId *string `locationName:"jobId" type:"string"`
4195
4196	Operation *string `locationName:"operation" type:"string"`
4197
4198	Status *string `locationName:"status" type:"string"`
4199}
4200
4201// String returns the string representation
4202func (s DeleteBackendOutput) String() string {
4203	return awsutil.Prettify(s)
4204}
4205
4206// GoString returns the string representation
4207func (s DeleteBackendOutput) GoString() string {
4208	return s.String()
4209}
4210
4211// SetAppId sets the AppId field's value.
4212func (s *DeleteBackendOutput) SetAppId(v string) *DeleteBackendOutput {
4213	s.AppId = &v
4214	return s
4215}
4216
4217// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
4218func (s *DeleteBackendOutput) SetBackendEnvironmentName(v string) *DeleteBackendOutput {
4219	s.BackendEnvironmentName = &v
4220	return s
4221}
4222
4223// SetError sets the Error field's value.
4224func (s *DeleteBackendOutput) SetError(v string) *DeleteBackendOutput {
4225	s.Error = &v
4226	return s
4227}
4228
4229// SetJobId sets the JobId field's value.
4230func (s *DeleteBackendOutput) SetJobId(v string) *DeleteBackendOutput {
4231	s.JobId = &v
4232	return s
4233}
4234
4235// SetOperation sets the Operation field's value.
4236func (s *DeleteBackendOutput) SetOperation(v string) *DeleteBackendOutput {
4237	s.Operation = &v
4238	return s
4239}
4240
4241// SetStatus sets the Status field's value.
4242func (s *DeleteBackendOutput) SetStatus(v string) *DeleteBackendOutput {
4243	s.Status = &v
4244	return s
4245}
4246
4247type DeleteTokenInput struct {
4248	_ struct{} `type:"structure"`
4249
4250	// AppId is a required field
4251	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
4252
4253	// SessionId is a required field
4254	SessionId *string `location:"uri" locationName:"sessionId" type:"string" required:"true"`
4255}
4256
4257// String returns the string representation
4258func (s DeleteTokenInput) String() string {
4259	return awsutil.Prettify(s)
4260}
4261
4262// GoString returns the string representation
4263func (s DeleteTokenInput) GoString() string {
4264	return s.String()
4265}
4266
4267// Validate inspects the fields of the type to determine if they are valid.
4268func (s *DeleteTokenInput) Validate() error {
4269	invalidParams := request.ErrInvalidParams{Context: "DeleteTokenInput"}
4270	if s.AppId == nil {
4271		invalidParams.Add(request.NewErrParamRequired("AppId"))
4272	}
4273	if s.AppId != nil && len(*s.AppId) < 1 {
4274		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
4275	}
4276	if s.SessionId == nil {
4277		invalidParams.Add(request.NewErrParamRequired("SessionId"))
4278	}
4279	if s.SessionId != nil && len(*s.SessionId) < 1 {
4280		invalidParams.Add(request.NewErrParamMinLen("SessionId", 1))
4281	}
4282
4283	if invalidParams.Len() > 0 {
4284		return invalidParams
4285	}
4286	return nil
4287}
4288
4289// SetAppId sets the AppId field's value.
4290func (s *DeleteTokenInput) SetAppId(v string) *DeleteTokenInput {
4291	s.AppId = &v
4292	return s
4293}
4294
4295// SetSessionId sets the SessionId field's value.
4296func (s *DeleteTokenInput) SetSessionId(v string) *DeleteTokenInput {
4297	s.SessionId = &v
4298	return s
4299}
4300
4301type DeleteTokenOutput struct {
4302	_ struct{} `type:"structure"`
4303
4304	IsSuccess *bool `locationName:"isSuccess" type:"boolean"`
4305}
4306
4307// String returns the string representation
4308func (s DeleteTokenOutput) String() string {
4309	return awsutil.Prettify(s)
4310}
4311
4312// GoString returns the string representation
4313func (s DeleteTokenOutput) GoString() string {
4314	return s.String()
4315}
4316
4317// SetIsSuccess sets the IsSuccess field's value.
4318func (s *DeleteTokenOutput) SetIsSuccess(v bool) *DeleteTokenOutput {
4319	s.IsSuccess = &v
4320	return s
4321}
4322
4323type EmailSettings struct {
4324	_ struct{} `type:"structure"`
4325
4326	// The body of the email.
4327	EmailMessage *string `locationName:"emailMessage" type:"string"`
4328
4329	// The subject of the email.
4330	EmailSubject *string `locationName:"emailSubject" type:"string"`
4331}
4332
4333// String returns the string representation
4334func (s EmailSettings) String() string {
4335	return awsutil.Prettify(s)
4336}
4337
4338// GoString returns the string representation
4339func (s EmailSettings) GoString() string {
4340	return s.String()
4341}
4342
4343// SetEmailMessage sets the EmailMessage field's value.
4344func (s *EmailSettings) SetEmailMessage(v string) *EmailSettings {
4345	s.EmailMessage = &v
4346	return s
4347}
4348
4349// SetEmailSubject sets the EmailSubject field's value.
4350func (s *EmailSettings) SetEmailSubject(v string) *EmailSettings {
4351	s.EmailSubject = &v
4352	return s
4353}
4354
4355// An error returned if there's a temporary issue with the service.
4356type GatewayTimeoutException struct {
4357	_            struct{}                  `type:"structure"`
4358	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4359
4360	Message_ *string `locationName:"message" type:"string"`
4361}
4362
4363// String returns the string representation
4364func (s GatewayTimeoutException) String() string {
4365	return awsutil.Prettify(s)
4366}
4367
4368// GoString returns the string representation
4369func (s GatewayTimeoutException) GoString() string {
4370	return s.String()
4371}
4372
4373func newErrorGatewayTimeoutException(v protocol.ResponseMetadata) error {
4374	return &GatewayTimeoutException{
4375		RespMetadata: v,
4376	}
4377}
4378
4379// Code returns the exception type name.
4380func (s *GatewayTimeoutException) Code() string {
4381	return "GatewayTimeoutException"
4382}
4383
4384// Message returns the exception's message.
4385func (s *GatewayTimeoutException) Message() string {
4386	if s.Message_ != nil {
4387		return *s.Message_
4388	}
4389	return ""
4390}
4391
4392// OrigErr always returns nil, satisfies awserr.Error interface.
4393func (s *GatewayTimeoutException) OrigErr() error {
4394	return nil
4395}
4396
4397func (s *GatewayTimeoutException) Error() string {
4398	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4399}
4400
4401// Status code returns the HTTP status code for the request's response error.
4402func (s *GatewayTimeoutException) StatusCode() int {
4403	return s.RespMetadata.StatusCode
4404}
4405
4406// RequestID returns the service's response RequestID for request.
4407func (s *GatewayTimeoutException) RequestID() string {
4408	return s.RespMetadata.RequestID
4409}
4410
4411type GenerateBackendAPIModelsInput struct {
4412	_ struct{} `type:"structure"`
4413
4414	// AppId is a required field
4415	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
4416
4417	// BackendEnvironmentName is a required field
4418	BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"`
4419
4420	// ResourceName is a required field
4421	ResourceName *string `locationName:"resourceName" type:"string" required:"true"`
4422}
4423
4424// String returns the string representation
4425func (s GenerateBackendAPIModelsInput) String() string {
4426	return awsutil.Prettify(s)
4427}
4428
4429// GoString returns the string representation
4430func (s GenerateBackendAPIModelsInput) GoString() string {
4431	return s.String()
4432}
4433
4434// Validate inspects the fields of the type to determine if they are valid.
4435func (s *GenerateBackendAPIModelsInput) Validate() error {
4436	invalidParams := request.ErrInvalidParams{Context: "GenerateBackendAPIModelsInput"}
4437	if s.AppId == nil {
4438		invalidParams.Add(request.NewErrParamRequired("AppId"))
4439	}
4440	if s.AppId != nil && len(*s.AppId) < 1 {
4441		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
4442	}
4443	if s.BackendEnvironmentName == nil {
4444		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
4445	}
4446	if s.BackendEnvironmentName != nil && len(*s.BackendEnvironmentName) < 1 {
4447		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentName", 1))
4448	}
4449	if s.ResourceName == nil {
4450		invalidParams.Add(request.NewErrParamRequired("ResourceName"))
4451	}
4452
4453	if invalidParams.Len() > 0 {
4454		return invalidParams
4455	}
4456	return nil
4457}
4458
4459// SetAppId sets the AppId field's value.
4460func (s *GenerateBackendAPIModelsInput) SetAppId(v string) *GenerateBackendAPIModelsInput {
4461	s.AppId = &v
4462	return s
4463}
4464
4465// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
4466func (s *GenerateBackendAPIModelsInput) SetBackendEnvironmentName(v string) *GenerateBackendAPIModelsInput {
4467	s.BackendEnvironmentName = &v
4468	return s
4469}
4470
4471// SetResourceName sets the ResourceName field's value.
4472func (s *GenerateBackendAPIModelsInput) SetResourceName(v string) *GenerateBackendAPIModelsInput {
4473	s.ResourceName = &v
4474	return s
4475}
4476
4477type GenerateBackendAPIModelsOutput struct {
4478	_ struct{} `type:"structure"`
4479
4480	AppId *string `locationName:"appId" type:"string"`
4481
4482	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
4483
4484	Error *string `locationName:"error" type:"string"`
4485
4486	JobId *string `locationName:"jobId" type:"string"`
4487
4488	Operation *string `locationName:"operation" type:"string"`
4489
4490	Status *string `locationName:"status" type:"string"`
4491}
4492
4493// String returns the string representation
4494func (s GenerateBackendAPIModelsOutput) String() string {
4495	return awsutil.Prettify(s)
4496}
4497
4498// GoString returns the string representation
4499func (s GenerateBackendAPIModelsOutput) GoString() string {
4500	return s.String()
4501}
4502
4503// SetAppId sets the AppId field's value.
4504func (s *GenerateBackendAPIModelsOutput) SetAppId(v string) *GenerateBackendAPIModelsOutput {
4505	s.AppId = &v
4506	return s
4507}
4508
4509// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
4510func (s *GenerateBackendAPIModelsOutput) SetBackendEnvironmentName(v string) *GenerateBackendAPIModelsOutput {
4511	s.BackendEnvironmentName = &v
4512	return s
4513}
4514
4515// SetError sets the Error field's value.
4516func (s *GenerateBackendAPIModelsOutput) SetError(v string) *GenerateBackendAPIModelsOutput {
4517	s.Error = &v
4518	return s
4519}
4520
4521// SetJobId sets the JobId field's value.
4522func (s *GenerateBackendAPIModelsOutput) SetJobId(v string) *GenerateBackendAPIModelsOutput {
4523	s.JobId = &v
4524	return s
4525}
4526
4527// SetOperation sets the Operation field's value.
4528func (s *GenerateBackendAPIModelsOutput) SetOperation(v string) *GenerateBackendAPIModelsOutput {
4529	s.Operation = &v
4530	return s
4531}
4532
4533// SetStatus sets the Status field's value.
4534func (s *GenerateBackendAPIModelsOutput) SetStatus(v string) *GenerateBackendAPIModelsOutput {
4535	s.Status = &v
4536	return s
4537}
4538
4539type GetBackendAPIInput struct {
4540	_ struct{} `type:"structure"`
4541
4542	// AppId is a required field
4543	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
4544
4545	// BackendEnvironmentName is a required field
4546	BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"`
4547
4548	// The resource configuration for the data model, configured as a part of the
4549	// Amplify project.
4550	ResourceConfig *BackendAPIResourceConfig `locationName:"resourceConfig" type:"structure"`
4551
4552	// ResourceName is a required field
4553	ResourceName *string `locationName:"resourceName" type:"string" required:"true"`
4554}
4555
4556// String returns the string representation
4557func (s GetBackendAPIInput) String() string {
4558	return awsutil.Prettify(s)
4559}
4560
4561// GoString returns the string representation
4562func (s GetBackendAPIInput) GoString() string {
4563	return s.String()
4564}
4565
4566// Validate inspects the fields of the type to determine if they are valid.
4567func (s *GetBackendAPIInput) Validate() error {
4568	invalidParams := request.ErrInvalidParams{Context: "GetBackendAPIInput"}
4569	if s.AppId == nil {
4570		invalidParams.Add(request.NewErrParamRequired("AppId"))
4571	}
4572	if s.AppId != nil && len(*s.AppId) < 1 {
4573		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
4574	}
4575	if s.BackendEnvironmentName == nil {
4576		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
4577	}
4578	if s.BackendEnvironmentName != nil && len(*s.BackendEnvironmentName) < 1 {
4579		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentName", 1))
4580	}
4581	if s.ResourceName == nil {
4582		invalidParams.Add(request.NewErrParamRequired("ResourceName"))
4583	}
4584
4585	if invalidParams.Len() > 0 {
4586		return invalidParams
4587	}
4588	return nil
4589}
4590
4591// SetAppId sets the AppId field's value.
4592func (s *GetBackendAPIInput) SetAppId(v string) *GetBackendAPIInput {
4593	s.AppId = &v
4594	return s
4595}
4596
4597// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
4598func (s *GetBackendAPIInput) SetBackendEnvironmentName(v string) *GetBackendAPIInput {
4599	s.BackendEnvironmentName = &v
4600	return s
4601}
4602
4603// SetResourceConfig sets the ResourceConfig field's value.
4604func (s *GetBackendAPIInput) SetResourceConfig(v *BackendAPIResourceConfig) *GetBackendAPIInput {
4605	s.ResourceConfig = v
4606	return s
4607}
4608
4609// SetResourceName sets the ResourceName field's value.
4610func (s *GetBackendAPIInput) SetResourceName(v string) *GetBackendAPIInput {
4611	s.ResourceName = &v
4612	return s
4613}
4614
4615type GetBackendAPIModelsInput struct {
4616	_ struct{} `type:"structure"`
4617
4618	// AppId is a required field
4619	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
4620
4621	// BackendEnvironmentName is a required field
4622	BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"`
4623
4624	// ResourceName is a required field
4625	ResourceName *string `locationName:"resourceName" type:"string" required:"true"`
4626}
4627
4628// String returns the string representation
4629func (s GetBackendAPIModelsInput) String() string {
4630	return awsutil.Prettify(s)
4631}
4632
4633// GoString returns the string representation
4634func (s GetBackendAPIModelsInput) GoString() string {
4635	return s.String()
4636}
4637
4638// Validate inspects the fields of the type to determine if they are valid.
4639func (s *GetBackendAPIModelsInput) Validate() error {
4640	invalidParams := request.ErrInvalidParams{Context: "GetBackendAPIModelsInput"}
4641	if s.AppId == nil {
4642		invalidParams.Add(request.NewErrParamRequired("AppId"))
4643	}
4644	if s.AppId != nil && len(*s.AppId) < 1 {
4645		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
4646	}
4647	if s.BackendEnvironmentName == nil {
4648		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
4649	}
4650	if s.BackendEnvironmentName != nil && len(*s.BackendEnvironmentName) < 1 {
4651		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentName", 1))
4652	}
4653	if s.ResourceName == nil {
4654		invalidParams.Add(request.NewErrParamRequired("ResourceName"))
4655	}
4656
4657	if invalidParams.Len() > 0 {
4658		return invalidParams
4659	}
4660	return nil
4661}
4662
4663// SetAppId sets the AppId field's value.
4664func (s *GetBackendAPIModelsInput) SetAppId(v string) *GetBackendAPIModelsInput {
4665	s.AppId = &v
4666	return s
4667}
4668
4669// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
4670func (s *GetBackendAPIModelsInput) SetBackendEnvironmentName(v string) *GetBackendAPIModelsInput {
4671	s.BackendEnvironmentName = &v
4672	return s
4673}
4674
4675// SetResourceName sets the ResourceName field's value.
4676func (s *GetBackendAPIModelsInput) SetResourceName(v string) *GetBackendAPIModelsInput {
4677	s.ResourceName = &v
4678	return s
4679}
4680
4681type GetBackendAPIModelsOutput struct {
4682	_ struct{} `type:"structure"`
4683
4684	Models *string `locationName:"models" type:"string"`
4685
4686	Status *string `locationName:"status" type:"string" enum:"Status"`
4687}
4688
4689// String returns the string representation
4690func (s GetBackendAPIModelsOutput) String() string {
4691	return awsutil.Prettify(s)
4692}
4693
4694// GoString returns the string representation
4695func (s GetBackendAPIModelsOutput) GoString() string {
4696	return s.String()
4697}
4698
4699// SetModels sets the Models field's value.
4700func (s *GetBackendAPIModelsOutput) SetModels(v string) *GetBackendAPIModelsOutput {
4701	s.Models = &v
4702	return s
4703}
4704
4705// SetStatus sets the Status field's value.
4706func (s *GetBackendAPIModelsOutput) SetStatus(v string) *GetBackendAPIModelsOutput {
4707	s.Status = &v
4708	return s
4709}
4710
4711type GetBackendAPIOutput struct {
4712	_ struct{} `type:"structure"`
4713
4714	AppId *string `locationName:"appId" type:"string"`
4715
4716	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
4717
4718	Error *string `locationName:"error" type:"string"`
4719
4720	// The resource configuration for the data model, configured as a part of the
4721	// Amplify project.
4722	ResourceConfig *BackendAPIResourceConfig `locationName:"resourceConfig" type:"structure"`
4723
4724	ResourceName *string `locationName:"resourceName" type:"string"`
4725}
4726
4727// String returns the string representation
4728func (s GetBackendAPIOutput) String() string {
4729	return awsutil.Prettify(s)
4730}
4731
4732// GoString returns the string representation
4733func (s GetBackendAPIOutput) GoString() string {
4734	return s.String()
4735}
4736
4737// SetAppId sets the AppId field's value.
4738func (s *GetBackendAPIOutput) SetAppId(v string) *GetBackendAPIOutput {
4739	s.AppId = &v
4740	return s
4741}
4742
4743// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
4744func (s *GetBackendAPIOutput) SetBackendEnvironmentName(v string) *GetBackendAPIOutput {
4745	s.BackendEnvironmentName = &v
4746	return s
4747}
4748
4749// SetError sets the Error field's value.
4750func (s *GetBackendAPIOutput) SetError(v string) *GetBackendAPIOutput {
4751	s.Error = &v
4752	return s
4753}
4754
4755// SetResourceConfig sets the ResourceConfig field's value.
4756func (s *GetBackendAPIOutput) SetResourceConfig(v *BackendAPIResourceConfig) *GetBackendAPIOutput {
4757	s.ResourceConfig = v
4758	return s
4759}
4760
4761// SetResourceName sets the ResourceName field's value.
4762func (s *GetBackendAPIOutput) SetResourceName(v string) *GetBackendAPIOutput {
4763	s.ResourceName = &v
4764	return s
4765}
4766
4767type GetBackendAuthInput struct {
4768	_ struct{} `type:"structure"`
4769
4770	// AppId is a required field
4771	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
4772
4773	// BackendEnvironmentName is a required field
4774	BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"`
4775
4776	// ResourceName is a required field
4777	ResourceName *string `locationName:"resourceName" type:"string" required:"true"`
4778}
4779
4780// String returns the string representation
4781func (s GetBackendAuthInput) String() string {
4782	return awsutil.Prettify(s)
4783}
4784
4785// GoString returns the string representation
4786func (s GetBackendAuthInput) GoString() string {
4787	return s.String()
4788}
4789
4790// Validate inspects the fields of the type to determine if they are valid.
4791func (s *GetBackendAuthInput) Validate() error {
4792	invalidParams := request.ErrInvalidParams{Context: "GetBackendAuthInput"}
4793	if s.AppId == nil {
4794		invalidParams.Add(request.NewErrParamRequired("AppId"))
4795	}
4796	if s.AppId != nil && len(*s.AppId) < 1 {
4797		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
4798	}
4799	if s.BackendEnvironmentName == nil {
4800		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
4801	}
4802	if s.BackendEnvironmentName != nil && len(*s.BackendEnvironmentName) < 1 {
4803		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentName", 1))
4804	}
4805	if s.ResourceName == nil {
4806		invalidParams.Add(request.NewErrParamRequired("ResourceName"))
4807	}
4808
4809	if invalidParams.Len() > 0 {
4810		return invalidParams
4811	}
4812	return nil
4813}
4814
4815// SetAppId sets the AppId field's value.
4816func (s *GetBackendAuthInput) SetAppId(v string) *GetBackendAuthInput {
4817	s.AppId = &v
4818	return s
4819}
4820
4821// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
4822func (s *GetBackendAuthInput) SetBackendEnvironmentName(v string) *GetBackendAuthInput {
4823	s.BackendEnvironmentName = &v
4824	return s
4825}
4826
4827// SetResourceName sets the ResourceName field's value.
4828func (s *GetBackendAuthInput) SetResourceName(v string) *GetBackendAuthInput {
4829	s.ResourceName = &v
4830	return s
4831}
4832
4833type GetBackendAuthOutput struct {
4834	_ struct{} `type:"structure"`
4835
4836	AppId *string `locationName:"appId" type:"string"`
4837
4838	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
4839
4840	Error *string `locationName:"error" type:"string"`
4841
4842	// Defines the resource configuration when creating an auth resource in your
4843	// Amplify project.
4844	ResourceConfig *CreateBackendAuthResourceConfig `locationName:"resourceConfig" type:"structure"`
4845
4846	ResourceName *string `locationName:"resourceName" type:"string"`
4847}
4848
4849// String returns the string representation
4850func (s GetBackendAuthOutput) String() string {
4851	return awsutil.Prettify(s)
4852}
4853
4854// GoString returns the string representation
4855func (s GetBackendAuthOutput) GoString() string {
4856	return s.String()
4857}
4858
4859// SetAppId sets the AppId field's value.
4860func (s *GetBackendAuthOutput) SetAppId(v string) *GetBackendAuthOutput {
4861	s.AppId = &v
4862	return s
4863}
4864
4865// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
4866func (s *GetBackendAuthOutput) SetBackendEnvironmentName(v string) *GetBackendAuthOutput {
4867	s.BackendEnvironmentName = &v
4868	return s
4869}
4870
4871// SetError sets the Error field's value.
4872func (s *GetBackendAuthOutput) SetError(v string) *GetBackendAuthOutput {
4873	s.Error = &v
4874	return s
4875}
4876
4877// SetResourceConfig sets the ResourceConfig field's value.
4878func (s *GetBackendAuthOutput) SetResourceConfig(v *CreateBackendAuthResourceConfig) *GetBackendAuthOutput {
4879	s.ResourceConfig = v
4880	return s
4881}
4882
4883// SetResourceName sets the ResourceName field's value.
4884func (s *GetBackendAuthOutput) SetResourceName(v string) *GetBackendAuthOutput {
4885	s.ResourceName = &v
4886	return s
4887}
4888
4889type GetBackendInput struct {
4890	_ struct{} `type:"structure"`
4891
4892	// AppId is a required field
4893	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
4894
4895	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
4896}
4897
4898// String returns the string representation
4899func (s GetBackendInput) String() string {
4900	return awsutil.Prettify(s)
4901}
4902
4903// GoString returns the string representation
4904func (s GetBackendInput) GoString() string {
4905	return s.String()
4906}
4907
4908// Validate inspects the fields of the type to determine if they are valid.
4909func (s *GetBackendInput) Validate() error {
4910	invalidParams := request.ErrInvalidParams{Context: "GetBackendInput"}
4911	if s.AppId == nil {
4912		invalidParams.Add(request.NewErrParamRequired("AppId"))
4913	}
4914	if s.AppId != nil && len(*s.AppId) < 1 {
4915		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
4916	}
4917
4918	if invalidParams.Len() > 0 {
4919		return invalidParams
4920	}
4921	return nil
4922}
4923
4924// SetAppId sets the AppId field's value.
4925func (s *GetBackendInput) SetAppId(v string) *GetBackendInput {
4926	s.AppId = &v
4927	return s
4928}
4929
4930// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
4931func (s *GetBackendInput) SetBackendEnvironmentName(v string) *GetBackendInput {
4932	s.BackendEnvironmentName = &v
4933	return s
4934}
4935
4936type GetBackendJobInput struct {
4937	_ struct{} `type:"structure"`
4938
4939	// AppId is a required field
4940	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
4941
4942	// BackendEnvironmentName is a required field
4943	BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"`
4944
4945	// JobId is a required field
4946	JobId *string `location:"uri" locationName:"jobId" type:"string" required:"true"`
4947}
4948
4949// String returns the string representation
4950func (s GetBackendJobInput) String() string {
4951	return awsutil.Prettify(s)
4952}
4953
4954// GoString returns the string representation
4955func (s GetBackendJobInput) GoString() string {
4956	return s.String()
4957}
4958
4959// Validate inspects the fields of the type to determine if they are valid.
4960func (s *GetBackendJobInput) Validate() error {
4961	invalidParams := request.ErrInvalidParams{Context: "GetBackendJobInput"}
4962	if s.AppId == nil {
4963		invalidParams.Add(request.NewErrParamRequired("AppId"))
4964	}
4965	if s.AppId != nil && len(*s.AppId) < 1 {
4966		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
4967	}
4968	if s.BackendEnvironmentName == nil {
4969		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
4970	}
4971	if s.BackendEnvironmentName != nil && len(*s.BackendEnvironmentName) < 1 {
4972		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentName", 1))
4973	}
4974	if s.JobId == nil {
4975		invalidParams.Add(request.NewErrParamRequired("JobId"))
4976	}
4977	if s.JobId != nil && len(*s.JobId) < 1 {
4978		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
4979	}
4980
4981	if invalidParams.Len() > 0 {
4982		return invalidParams
4983	}
4984	return nil
4985}
4986
4987// SetAppId sets the AppId field's value.
4988func (s *GetBackendJobInput) SetAppId(v string) *GetBackendJobInput {
4989	s.AppId = &v
4990	return s
4991}
4992
4993// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
4994func (s *GetBackendJobInput) SetBackendEnvironmentName(v string) *GetBackendJobInput {
4995	s.BackendEnvironmentName = &v
4996	return s
4997}
4998
4999// SetJobId sets the JobId field's value.
5000func (s *GetBackendJobInput) SetJobId(v string) *GetBackendJobInput {
5001	s.JobId = &v
5002	return s
5003}
5004
5005type GetBackendJobOutput struct {
5006	_ struct{} `type:"structure"`
5007
5008	AppId *string `locationName:"appId" type:"string"`
5009
5010	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
5011
5012	CreateTime *string `locationName:"createTime" type:"string"`
5013
5014	Error *string `locationName:"error" type:"string"`
5015
5016	JobId *string `locationName:"jobId" type:"string"`
5017
5018	Operation *string `locationName:"operation" type:"string"`
5019
5020	Status *string `locationName:"status" type:"string"`
5021
5022	UpdateTime *string `locationName:"updateTime" type:"string"`
5023}
5024
5025// String returns the string representation
5026func (s GetBackendJobOutput) String() string {
5027	return awsutil.Prettify(s)
5028}
5029
5030// GoString returns the string representation
5031func (s GetBackendJobOutput) GoString() string {
5032	return s.String()
5033}
5034
5035// SetAppId sets the AppId field's value.
5036func (s *GetBackendJobOutput) SetAppId(v string) *GetBackendJobOutput {
5037	s.AppId = &v
5038	return s
5039}
5040
5041// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
5042func (s *GetBackendJobOutput) SetBackendEnvironmentName(v string) *GetBackendJobOutput {
5043	s.BackendEnvironmentName = &v
5044	return s
5045}
5046
5047// SetCreateTime sets the CreateTime field's value.
5048func (s *GetBackendJobOutput) SetCreateTime(v string) *GetBackendJobOutput {
5049	s.CreateTime = &v
5050	return s
5051}
5052
5053// SetError sets the Error field's value.
5054func (s *GetBackendJobOutput) SetError(v string) *GetBackendJobOutput {
5055	s.Error = &v
5056	return s
5057}
5058
5059// SetJobId sets the JobId field's value.
5060func (s *GetBackendJobOutput) SetJobId(v string) *GetBackendJobOutput {
5061	s.JobId = &v
5062	return s
5063}
5064
5065// SetOperation sets the Operation field's value.
5066func (s *GetBackendJobOutput) SetOperation(v string) *GetBackendJobOutput {
5067	s.Operation = &v
5068	return s
5069}
5070
5071// SetStatus sets the Status field's value.
5072func (s *GetBackendJobOutput) SetStatus(v string) *GetBackendJobOutput {
5073	s.Status = &v
5074	return s
5075}
5076
5077// SetUpdateTime sets the UpdateTime field's value.
5078func (s *GetBackendJobOutput) SetUpdateTime(v string) *GetBackendJobOutput {
5079	s.UpdateTime = &v
5080	return s
5081}
5082
5083type GetBackendOutput struct {
5084	_ struct{} `type:"structure"`
5085
5086	AmplifyMetaConfig *string `locationName:"amplifyMetaConfig" type:"string"`
5087
5088	AppId *string `locationName:"appId" type:"string"`
5089
5090	AppName *string `locationName:"appName" type:"string"`
5091
5092	BackendEnvironmentList []*string `locationName:"backendEnvironmentList" type:"list"`
5093
5094	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
5095
5096	Error *string `locationName:"error" type:"string"`
5097}
5098
5099// String returns the string representation
5100func (s GetBackendOutput) String() string {
5101	return awsutil.Prettify(s)
5102}
5103
5104// GoString returns the string representation
5105func (s GetBackendOutput) GoString() string {
5106	return s.String()
5107}
5108
5109// SetAmplifyMetaConfig sets the AmplifyMetaConfig field's value.
5110func (s *GetBackendOutput) SetAmplifyMetaConfig(v string) *GetBackendOutput {
5111	s.AmplifyMetaConfig = &v
5112	return s
5113}
5114
5115// SetAppId sets the AppId field's value.
5116func (s *GetBackendOutput) SetAppId(v string) *GetBackendOutput {
5117	s.AppId = &v
5118	return s
5119}
5120
5121// SetAppName sets the AppName field's value.
5122func (s *GetBackendOutput) SetAppName(v string) *GetBackendOutput {
5123	s.AppName = &v
5124	return s
5125}
5126
5127// SetBackendEnvironmentList sets the BackendEnvironmentList field's value.
5128func (s *GetBackendOutput) SetBackendEnvironmentList(v []*string) *GetBackendOutput {
5129	s.BackendEnvironmentList = v
5130	return s
5131}
5132
5133// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
5134func (s *GetBackendOutput) SetBackendEnvironmentName(v string) *GetBackendOutput {
5135	s.BackendEnvironmentName = &v
5136	return s
5137}
5138
5139// SetError sets the Error field's value.
5140func (s *GetBackendOutput) SetError(v string) *GetBackendOutput {
5141	s.Error = &v
5142	return s
5143}
5144
5145type GetTokenInput struct {
5146	_ struct{} `type:"structure"`
5147
5148	// AppId is a required field
5149	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
5150
5151	// SessionId is a required field
5152	SessionId *string `location:"uri" locationName:"sessionId" type:"string" required:"true"`
5153}
5154
5155// String returns the string representation
5156func (s GetTokenInput) String() string {
5157	return awsutil.Prettify(s)
5158}
5159
5160// GoString returns the string representation
5161func (s GetTokenInput) GoString() string {
5162	return s.String()
5163}
5164
5165// Validate inspects the fields of the type to determine if they are valid.
5166func (s *GetTokenInput) Validate() error {
5167	invalidParams := request.ErrInvalidParams{Context: "GetTokenInput"}
5168	if s.AppId == nil {
5169		invalidParams.Add(request.NewErrParamRequired("AppId"))
5170	}
5171	if s.AppId != nil && len(*s.AppId) < 1 {
5172		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
5173	}
5174	if s.SessionId == nil {
5175		invalidParams.Add(request.NewErrParamRequired("SessionId"))
5176	}
5177	if s.SessionId != nil && len(*s.SessionId) < 1 {
5178		invalidParams.Add(request.NewErrParamMinLen("SessionId", 1))
5179	}
5180
5181	if invalidParams.Len() > 0 {
5182		return invalidParams
5183	}
5184	return nil
5185}
5186
5187// SetAppId sets the AppId field's value.
5188func (s *GetTokenInput) SetAppId(v string) *GetTokenInput {
5189	s.AppId = &v
5190	return s
5191}
5192
5193// SetSessionId sets the SessionId field's value.
5194func (s *GetTokenInput) SetSessionId(v string) *GetTokenInput {
5195	s.SessionId = &v
5196	return s
5197}
5198
5199type GetTokenOutput struct {
5200	_ struct{} `type:"structure"`
5201
5202	AppId *string `locationName:"appId" type:"string"`
5203
5204	ChallengeCode *string `locationName:"challengeCode" type:"string"`
5205
5206	SessionId *string `locationName:"sessionId" type:"string"`
5207
5208	Ttl *string `locationName:"ttl" type:"string"`
5209}
5210
5211// String returns the string representation
5212func (s GetTokenOutput) String() string {
5213	return awsutil.Prettify(s)
5214}
5215
5216// GoString returns the string representation
5217func (s GetTokenOutput) GoString() string {
5218	return s.String()
5219}
5220
5221// SetAppId sets the AppId field's value.
5222func (s *GetTokenOutput) SetAppId(v string) *GetTokenOutput {
5223	s.AppId = &v
5224	return s
5225}
5226
5227// SetChallengeCode sets the ChallengeCode field's value.
5228func (s *GetTokenOutput) SetChallengeCode(v string) *GetTokenOutput {
5229	s.ChallengeCode = &v
5230	return s
5231}
5232
5233// SetSessionId sets the SessionId field's value.
5234func (s *GetTokenOutput) SetSessionId(v string) *GetTokenOutput {
5235	s.SessionId = &v
5236	return s
5237}
5238
5239// SetTtl sets the Ttl field's value.
5240func (s *GetTokenOutput) SetTtl(v string) *GetTokenOutput {
5241	s.Ttl = &v
5242	return s
5243}
5244
5245type ListBackendJobsInput struct {
5246	_ struct{} `type:"structure"`
5247
5248	// AppId is a required field
5249	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
5250
5251	// BackendEnvironmentName is a required field
5252	BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"`
5253
5254	JobId *string `locationName:"jobId" type:"string"`
5255
5256	MaxResults *int64 `locationName:"maxResults" min:"1" type:"integer"`
5257
5258	NextToken *string `locationName:"nextToken" type:"string"`
5259
5260	Operation *string `locationName:"operation" type:"string"`
5261
5262	Status *string `locationName:"status" type:"string"`
5263}
5264
5265// String returns the string representation
5266func (s ListBackendJobsInput) String() string {
5267	return awsutil.Prettify(s)
5268}
5269
5270// GoString returns the string representation
5271func (s ListBackendJobsInput) GoString() string {
5272	return s.String()
5273}
5274
5275// Validate inspects the fields of the type to determine if they are valid.
5276func (s *ListBackendJobsInput) Validate() error {
5277	invalidParams := request.ErrInvalidParams{Context: "ListBackendJobsInput"}
5278	if s.AppId == nil {
5279		invalidParams.Add(request.NewErrParamRequired("AppId"))
5280	}
5281	if s.AppId != nil && len(*s.AppId) < 1 {
5282		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
5283	}
5284	if s.BackendEnvironmentName == nil {
5285		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
5286	}
5287	if s.BackendEnvironmentName != nil && len(*s.BackendEnvironmentName) < 1 {
5288		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentName", 1))
5289	}
5290	if s.MaxResults != nil && *s.MaxResults < 1 {
5291		invalidParams.Add(request.NewErrParamMinValue("MaxResults", 1))
5292	}
5293
5294	if invalidParams.Len() > 0 {
5295		return invalidParams
5296	}
5297	return nil
5298}
5299
5300// SetAppId sets the AppId field's value.
5301func (s *ListBackendJobsInput) SetAppId(v string) *ListBackendJobsInput {
5302	s.AppId = &v
5303	return s
5304}
5305
5306// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
5307func (s *ListBackendJobsInput) SetBackendEnvironmentName(v string) *ListBackendJobsInput {
5308	s.BackendEnvironmentName = &v
5309	return s
5310}
5311
5312// SetJobId sets the JobId field's value.
5313func (s *ListBackendJobsInput) SetJobId(v string) *ListBackendJobsInput {
5314	s.JobId = &v
5315	return s
5316}
5317
5318// SetMaxResults sets the MaxResults field's value.
5319func (s *ListBackendJobsInput) SetMaxResults(v int64) *ListBackendJobsInput {
5320	s.MaxResults = &v
5321	return s
5322}
5323
5324// SetNextToken sets the NextToken field's value.
5325func (s *ListBackendJobsInput) SetNextToken(v string) *ListBackendJobsInput {
5326	s.NextToken = &v
5327	return s
5328}
5329
5330// SetOperation sets the Operation field's value.
5331func (s *ListBackendJobsInput) SetOperation(v string) *ListBackendJobsInput {
5332	s.Operation = &v
5333	return s
5334}
5335
5336// SetStatus sets the Status field's value.
5337func (s *ListBackendJobsInput) SetStatus(v string) *ListBackendJobsInput {
5338	s.Status = &v
5339	return s
5340}
5341
5342type ListBackendJobsOutput struct {
5343	_ struct{} `type:"structure"`
5344
5345	Jobs []*BackendJobRespObj `locationName:"jobs" type:"list"`
5346
5347	NextToken *string `locationName:"nextToken" type:"string"`
5348}
5349
5350// String returns the string representation
5351func (s ListBackendJobsOutput) String() string {
5352	return awsutil.Prettify(s)
5353}
5354
5355// GoString returns the string representation
5356func (s ListBackendJobsOutput) GoString() string {
5357	return s.String()
5358}
5359
5360// SetJobs sets the Jobs field's value.
5361func (s *ListBackendJobsOutput) SetJobs(v []*BackendJobRespObj) *ListBackendJobsOutput {
5362	s.Jobs = v
5363	return s
5364}
5365
5366// SetNextToken sets the NextToken field's value.
5367func (s *ListBackendJobsOutput) SetNextToken(v string) *ListBackendJobsOutput {
5368	s.NextToken = &v
5369	return s
5370}
5371
5372// The request object for this operation.
5373type LoginAuthConfigReqObj struct {
5374	_ struct{} `type:"structure"`
5375
5376	// The Amazon Cognito identity pool ID used for Amplify Admin UI login authorization.
5377	AwsCognitoIdentityPoolId *string `locationName:"aws_cognito_identity_pool_id" type:"string"`
5378
5379	// The AWS Region for the Amplify Admin UI login.
5380	AwsCognitoRegion *string `locationName:"aws_cognito_region" type:"string"`
5381
5382	// The Amazon Cognito user pool ID used for Amplify Admin UI login authentication.
5383	AwsUserPoolsId *string `locationName:"aws_user_pools_id" type:"string"`
5384
5385	// The web client ID for the Amazon Cognito user pools.
5386	AwsUserPoolsWebClientId *string `locationName:"aws_user_pools_web_client_id" type:"string"`
5387}
5388
5389// String returns the string representation
5390func (s LoginAuthConfigReqObj) String() string {
5391	return awsutil.Prettify(s)
5392}
5393
5394// GoString returns the string representation
5395func (s LoginAuthConfigReqObj) GoString() string {
5396	return s.String()
5397}
5398
5399// SetAwsCognitoIdentityPoolId sets the AwsCognitoIdentityPoolId field's value.
5400func (s *LoginAuthConfigReqObj) SetAwsCognitoIdentityPoolId(v string) *LoginAuthConfigReqObj {
5401	s.AwsCognitoIdentityPoolId = &v
5402	return s
5403}
5404
5405// SetAwsCognitoRegion sets the AwsCognitoRegion field's value.
5406func (s *LoginAuthConfigReqObj) SetAwsCognitoRegion(v string) *LoginAuthConfigReqObj {
5407	s.AwsCognitoRegion = &v
5408	return s
5409}
5410
5411// SetAwsUserPoolsId sets the AwsUserPoolsId field's value.
5412func (s *LoginAuthConfigReqObj) SetAwsUserPoolsId(v string) *LoginAuthConfigReqObj {
5413	s.AwsUserPoolsId = &v
5414	return s
5415}
5416
5417// SetAwsUserPoolsWebClientId sets the AwsUserPoolsWebClientId field's value.
5418func (s *LoginAuthConfigReqObj) SetAwsUserPoolsWebClientId(v string) *LoginAuthConfigReqObj {
5419	s.AwsUserPoolsWebClientId = &v
5420	return s
5421}
5422
5423// An error returned when a specific resource type is not found.
5424type NotFoundException struct {
5425	_            struct{}                  `type:"structure"`
5426	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
5427
5428	// An error message to inform that the request failed.
5429	Message_ *string `locationName:"message" type:"string"`
5430
5431	// The type of resource that wasn't found.
5432	ResourceType *string `locationName:"resourceType" type:"string"`
5433}
5434
5435// String returns the string representation
5436func (s NotFoundException) String() string {
5437	return awsutil.Prettify(s)
5438}
5439
5440// GoString returns the string representation
5441func (s NotFoundException) GoString() string {
5442	return s.String()
5443}
5444
5445func newErrorNotFoundException(v protocol.ResponseMetadata) error {
5446	return &NotFoundException{
5447		RespMetadata: v,
5448	}
5449}
5450
5451// Code returns the exception type name.
5452func (s *NotFoundException) Code() string {
5453	return "NotFoundException"
5454}
5455
5456// Message returns the exception's message.
5457func (s *NotFoundException) Message() string {
5458	if s.Message_ != nil {
5459		return *s.Message_
5460	}
5461	return ""
5462}
5463
5464// OrigErr always returns nil, satisfies awserr.Error interface.
5465func (s *NotFoundException) OrigErr() error {
5466	return nil
5467}
5468
5469func (s *NotFoundException) Error() string {
5470	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
5471}
5472
5473// Status code returns the HTTP status code for the request's response error.
5474func (s *NotFoundException) StatusCode() int {
5475	return s.RespMetadata.StatusCode
5476}
5477
5478// RequestID returns the service's response RequestID for request.
5479func (s *NotFoundException) RequestID() string {
5480	return s.RespMetadata.RequestID
5481}
5482
5483type RemoveAllBackendsInput struct {
5484	_ struct{} `type:"structure"`
5485
5486	// AppId is a required field
5487	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
5488
5489	CleanAmplifyApp *bool `locationName:"cleanAmplifyApp" type:"boolean"`
5490}
5491
5492// String returns the string representation
5493func (s RemoveAllBackendsInput) String() string {
5494	return awsutil.Prettify(s)
5495}
5496
5497// GoString returns the string representation
5498func (s RemoveAllBackendsInput) GoString() string {
5499	return s.String()
5500}
5501
5502// Validate inspects the fields of the type to determine if they are valid.
5503func (s *RemoveAllBackendsInput) Validate() error {
5504	invalidParams := request.ErrInvalidParams{Context: "RemoveAllBackendsInput"}
5505	if s.AppId == nil {
5506		invalidParams.Add(request.NewErrParamRequired("AppId"))
5507	}
5508	if s.AppId != nil && len(*s.AppId) < 1 {
5509		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
5510	}
5511
5512	if invalidParams.Len() > 0 {
5513		return invalidParams
5514	}
5515	return nil
5516}
5517
5518// SetAppId sets the AppId field's value.
5519func (s *RemoveAllBackendsInput) SetAppId(v string) *RemoveAllBackendsInput {
5520	s.AppId = &v
5521	return s
5522}
5523
5524// SetCleanAmplifyApp sets the CleanAmplifyApp field's value.
5525func (s *RemoveAllBackendsInput) SetCleanAmplifyApp(v bool) *RemoveAllBackendsInput {
5526	s.CleanAmplifyApp = &v
5527	return s
5528}
5529
5530type RemoveAllBackendsOutput struct {
5531	_ struct{} `type:"structure"`
5532
5533	AppId *string `locationName:"appId" type:"string"`
5534
5535	Error *string `locationName:"error" type:"string"`
5536
5537	JobId *string `locationName:"jobId" type:"string"`
5538
5539	Operation *string `locationName:"operation" type:"string"`
5540
5541	Status *string `locationName:"status" type:"string"`
5542}
5543
5544// String returns the string representation
5545func (s RemoveAllBackendsOutput) String() string {
5546	return awsutil.Prettify(s)
5547}
5548
5549// GoString returns the string representation
5550func (s RemoveAllBackendsOutput) GoString() string {
5551	return s.String()
5552}
5553
5554// SetAppId sets the AppId field's value.
5555func (s *RemoveAllBackendsOutput) SetAppId(v string) *RemoveAllBackendsOutput {
5556	s.AppId = &v
5557	return s
5558}
5559
5560// SetError sets the Error field's value.
5561func (s *RemoveAllBackendsOutput) SetError(v string) *RemoveAllBackendsOutput {
5562	s.Error = &v
5563	return s
5564}
5565
5566// SetJobId sets the JobId field's value.
5567func (s *RemoveAllBackendsOutput) SetJobId(v string) *RemoveAllBackendsOutput {
5568	s.JobId = &v
5569	return s
5570}
5571
5572// SetOperation sets the Operation field's value.
5573func (s *RemoveAllBackendsOutput) SetOperation(v string) *RemoveAllBackendsOutput {
5574	s.Operation = &v
5575	return s
5576}
5577
5578// SetStatus sets the Status field's value.
5579func (s *RemoveAllBackendsOutput) SetStatus(v string) *RemoveAllBackendsOutput {
5580	s.Status = &v
5581	return s
5582}
5583
5584type RemoveBackendConfigInput struct {
5585	_ struct{} `type:"structure"`
5586
5587	// AppId is a required field
5588	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
5589}
5590
5591// String returns the string representation
5592func (s RemoveBackendConfigInput) String() string {
5593	return awsutil.Prettify(s)
5594}
5595
5596// GoString returns the string representation
5597func (s RemoveBackendConfigInput) GoString() string {
5598	return s.String()
5599}
5600
5601// Validate inspects the fields of the type to determine if they are valid.
5602func (s *RemoveBackendConfigInput) Validate() error {
5603	invalidParams := request.ErrInvalidParams{Context: "RemoveBackendConfigInput"}
5604	if s.AppId == nil {
5605		invalidParams.Add(request.NewErrParamRequired("AppId"))
5606	}
5607	if s.AppId != nil && len(*s.AppId) < 1 {
5608		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
5609	}
5610
5611	if invalidParams.Len() > 0 {
5612		return invalidParams
5613	}
5614	return nil
5615}
5616
5617// SetAppId sets the AppId field's value.
5618func (s *RemoveBackendConfigInput) SetAppId(v string) *RemoveBackendConfigInput {
5619	s.AppId = &v
5620	return s
5621}
5622
5623type RemoveBackendConfigOutput struct {
5624	_ struct{} `type:"structure"`
5625
5626	Error *string `locationName:"error" type:"string"`
5627}
5628
5629// String returns the string representation
5630func (s RemoveBackendConfigOutput) String() string {
5631	return awsutil.Prettify(s)
5632}
5633
5634// GoString returns the string representation
5635func (s RemoveBackendConfigOutput) GoString() string {
5636	return s.String()
5637}
5638
5639// SetError sets the Error field's value.
5640func (s *RemoveBackendConfigOutput) SetError(v string) *RemoveBackendConfigOutput {
5641	s.Error = &v
5642	return s
5643}
5644
5645type ResourceConfig struct {
5646	_ struct{} `type:"structure"`
5647}
5648
5649// String returns the string representation
5650func (s ResourceConfig) String() string {
5651	return awsutil.Prettify(s)
5652}
5653
5654// GoString returns the string representation
5655func (s ResourceConfig) GoString() string {
5656	return s.String()
5657}
5658
5659type Settings struct {
5660	_ struct{} `type:"structure"`
5661
5662	MfaTypes []*string `locationName:"mfaTypes" type:"list"`
5663
5664	// The body of the SMS message.
5665	SmsMessage *string `locationName:"smsMessage" type:"string"`
5666}
5667
5668// String returns the string representation
5669func (s Settings) String() string {
5670	return awsutil.Prettify(s)
5671}
5672
5673// GoString returns the string representation
5674func (s Settings) GoString() string {
5675	return s.String()
5676}
5677
5678// SetMfaTypes sets the MfaTypes field's value.
5679func (s *Settings) SetMfaTypes(v []*string) *Settings {
5680	s.MfaTypes = v
5681	return s
5682}
5683
5684// SetSmsMessage sets the SmsMessage field's value.
5685func (s *Settings) SetSmsMessage(v string) *Settings {
5686	s.SmsMessage = &v
5687	return s
5688}
5689
5690type SmsSettings struct {
5691	_ struct{} `type:"structure"`
5692
5693	// The body of the SMS message.
5694	SmsMessage *string `locationName:"smsMessage" type:"string"`
5695}
5696
5697// String returns the string representation
5698func (s SmsSettings) String() string {
5699	return awsutil.Prettify(s)
5700}
5701
5702// GoString returns the string representation
5703func (s SmsSettings) GoString() string {
5704	return s.String()
5705}
5706
5707// SetSmsMessage sets the SmsMessage field's value.
5708func (s *SmsSettings) SetSmsMessage(v string) *SmsSettings {
5709	s.SmsMessage = &v
5710	return s
5711}
5712
5713type SocialProviderSettings struct {
5714	_ struct{} `type:"structure"`
5715
5716	// Describes third-party social federation configurations for allowing your
5717	// app users to sign in using OAuth.
5718	Facebook *BackendAuthSocialProviderConfig `type:"structure"`
5719
5720	// Describes third-party social federation configurations for allowing your
5721	// app users to sign in using OAuth.
5722	Google *BackendAuthSocialProviderConfig `type:"structure"`
5723
5724	// Describes third-party social federation configurations for allowing your
5725	// app users to sign in using OAuth.
5726	LoginWithAmazon *BackendAuthSocialProviderConfig `type:"structure"`
5727}
5728
5729// String returns the string representation
5730func (s SocialProviderSettings) String() string {
5731	return awsutil.Prettify(s)
5732}
5733
5734// GoString returns the string representation
5735func (s SocialProviderSettings) GoString() string {
5736	return s.String()
5737}
5738
5739// SetFacebook sets the Facebook field's value.
5740func (s *SocialProviderSettings) SetFacebook(v *BackendAuthSocialProviderConfig) *SocialProviderSettings {
5741	s.Facebook = v
5742	return s
5743}
5744
5745// SetGoogle sets the Google field's value.
5746func (s *SocialProviderSettings) SetGoogle(v *BackendAuthSocialProviderConfig) *SocialProviderSettings {
5747	s.Google = v
5748	return s
5749}
5750
5751// SetLoginWithAmazon sets the LoginWithAmazon field's value.
5752func (s *SocialProviderSettings) SetLoginWithAmazon(v *BackendAuthSocialProviderConfig) *SocialProviderSettings {
5753	s.LoginWithAmazon = v
5754	return s
5755}
5756
5757// An error that is returned when a limit of a specific type is exceeded.
5758type TooManyRequestsException struct {
5759	_            struct{}                  `type:"structure"`
5760	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
5761
5762	LimitType *string `locationName:"limitType" type:"string"`
5763
5764	Message_ *string `locationName:"message" type:"string"`
5765}
5766
5767// String returns the string representation
5768func (s TooManyRequestsException) String() string {
5769	return awsutil.Prettify(s)
5770}
5771
5772// GoString returns the string representation
5773func (s TooManyRequestsException) GoString() string {
5774	return s.String()
5775}
5776
5777func newErrorTooManyRequestsException(v protocol.ResponseMetadata) error {
5778	return &TooManyRequestsException{
5779		RespMetadata: v,
5780	}
5781}
5782
5783// Code returns the exception type name.
5784func (s *TooManyRequestsException) Code() string {
5785	return "TooManyRequestsException"
5786}
5787
5788// Message returns the exception's message.
5789func (s *TooManyRequestsException) Message() string {
5790	if s.Message_ != nil {
5791		return *s.Message_
5792	}
5793	return ""
5794}
5795
5796// OrigErr always returns nil, satisfies awserr.Error interface.
5797func (s *TooManyRequestsException) OrigErr() error {
5798	return nil
5799}
5800
5801func (s *TooManyRequestsException) Error() string {
5802	return fmt.Sprintf("%s: %s\n%s", s.Code(), s.Message(), s.String())
5803}
5804
5805// Status code returns the HTTP status code for the request's response error.
5806func (s *TooManyRequestsException) StatusCode() int {
5807	return s.RespMetadata.StatusCode
5808}
5809
5810// RequestID returns the service's response RequestID for request.
5811func (s *TooManyRequestsException) RequestID() string {
5812	return s.RespMetadata.RequestID
5813}
5814
5815type UpdateBackendAPIInput struct {
5816	_ struct{} `type:"structure"`
5817
5818	// AppId is a required field
5819	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
5820
5821	// BackendEnvironmentName is a required field
5822	BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"`
5823
5824	// The resource configuration for the data model, configured as a part of the
5825	// Amplify project.
5826	ResourceConfig *BackendAPIResourceConfig `locationName:"resourceConfig" type:"structure"`
5827
5828	// ResourceName is a required field
5829	ResourceName *string `locationName:"resourceName" type:"string" required:"true"`
5830}
5831
5832// String returns the string representation
5833func (s UpdateBackendAPIInput) String() string {
5834	return awsutil.Prettify(s)
5835}
5836
5837// GoString returns the string representation
5838func (s UpdateBackendAPIInput) GoString() string {
5839	return s.String()
5840}
5841
5842// Validate inspects the fields of the type to determine if they are valid.
5843func (s *UpdateBackendAPIInput) Validate() error {
5844	invalidParams := request.ErrInvalidParams{Context: "UpdateBackendAPIInput"}
5845	if s.AppId == nil {
5846		invalidParams.Add(request.NewErrParamRequired("AppId"))
5847	}
5848	if s.AppId != nil && len(*s.AppId) < 1 {
5849		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
5850	}
5851	if s.BackendEnvironmentName == nil {
5852		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
5853	}
5854	if s.BackendEnvironmentName != nil && len(*s.BackendEnvironmentName) < 1 {
5855		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentName", 1))
5856	}
5857	if s.ResourceName == nil {
5858		invalidParams.Add(request.NewErrParamRequired("ResourceName"))
5859	}
5860
5861	if invalidParams.Len() > 0 {
5862		return invalidParams
5863	}
5864	return nil
5865}
5866
5867// SetAppId sets the AppId field's value.
5868func (s *UpdateBackendAPIInput) SetAppId(v string) *UpdateBackendAPIInput {
5869	s.AppId = &v
5870	return s
5871}
5872
5873// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
5874func (s *UpdateBackendAPIInput) SetBackendEnvironmentName(v string) *UpdateBackendAPIInput {
5875	s.BackendEnvironmentName = &v
5876	return s
5877}
5878
5879// SetResourceConfig sets the ResourceConfig field's value.
5880func (s *UpdateBackendAPIInput) SetResourceConfig(v *BackendAPIResourceConfig) *UpdateBackendAPIInput {
5881	s.ResourceConfig = v
5882	return s
5883}
5884
5885// SetResourceName sets the ResourceName field's value.
5886func (s *UpdateBackendAPIInput) SetResourceName(v string) *UpdateBackendAPIInput {
5887	s.ResourceName = &v
5888	return s
5889}
5890
5891type UpdateBackendAPIOutput struct {
5892	_ struct{} `type:"structure"`
5893
5894	AppId *string `locationName:"appId" type:"string"`
5895
5896	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
5897
5898	Error *string `locationName:"error" type:"string"`
5899
5900	JobId *string `locationName:"jobId" type:"string"`
5901
5902	Operation *string `locationName:"operation" type:"string"`
5903
5904	Status *string `locationName:"status" type:"string"`
5905}
5906
5907// String returns the string representation
5908func (s UpdateBackendAPIOutput) String() string {
5909	return awsutil.Prettify(s)
5910}
5911
5912// GoString returns the string representation
5913func (s UpdateBackendAPIOutput) GoString() string {
5914	return s.String()
5915}
5916
5917// SetAppId sets the AppId field's value.
5918func (s *UpdateBackendAPIOutput) SetAppId(v string) *UpdateBackendAPIOutput {
5919	s.AppId = &v
5920	return s
5921}
5922
5923// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
5924func (s *UpdateBackendAPIOutput) SetBackendEnvironmentName(v string) *UpdateBackendAPIOutput {
5925	s.BackendEnvironmentName = &v
5926	return s
5927}
5928
5929// SetError sets the Error field's value.
5930func (s *UpdateBackendAPIOutput) SetError(v string) *UpdateBackendAPIOutput {
5931	s.Error = &v
5932	return s
5933}
5934
5935// SetJobId sets the JobId field's value.
5936func (s *UpdateBackendAPIOutput) SetJobId(v string) *UpdateBackendAPIOutput {
5937	s.JobId = &v
5938	return s
5939}
5940
5941// SetOperation sets the Operation field's value.
5942func (s *UpdateBackendAPIOutput) SetOperation(v string) *UpdateBackendAPIOutput {
5943	s.Operation = &v
5944	return s
5945}
5946
5947// SetStatus sets the Status field's value.
5948func (s *UpdateBackendAPIOutput) SetStatus(v string) *UpdateBackendAPIOutput {
5949	s.Status = &v
5950	return s
5951}
5952
5953// Describes the forgot password policy for authenticating into the Amplify
5954// app.
5955type UpdateBackendAuthForgotPasswordConfig struct {
5956	_ struct{} `type:"structure"`
5957
5958	// Describes which method to use (either SMS or email) to deliver messages to
5959	// app users that want to recover their password.
5960	DeliveryMethod *string `locationName:"deliveryMethod" type:"string" enum:"DeliveryMethod"`
5961
5962	// The configuration for the email sent when an app user forgets their password.
5963	EmailSettings *EmailSettings `locationName:"emailSettings" type:"structure"`
5964
5965	// The configuration for the SMS message sent when an Amplify app user forgets
5966	// their password.
5967	SmsSettings *SmsSettings `locationName:"smsSettings" type:"structure"`
5968}
5969
5970// String returns the string representation
5971func (s UpdateBackendAuthForgotPasswordConfig) String() string {
5972	return awsutil.Prettify(s)
5973}
5974
5975// GoString returns the string representation
5976func (s UpdateBackendAuthForgotPasswordConfig) GoString() string {
5977	return s.String()
5978}
5979
5980// SetDeliveryMethod sets the DeliveryMethod field's value.
5981func (s *UpdateBackendAuthForgotPasswordConfig) SetDeliveryMethod(v string) *UpdateBackendAuthForgotPasswordConfig {
5982	s.DeliveryMethod = &v
5983	return s
5984}
5985
5986// SetEmailSettings sets the EmailSettings field's value.
5987func (s *UpdateBackendAuthForgotPasswordConfig) SetEmailSettings(v *EmailSettings) *UpdateBackendAuthForgotPasswordConfig {
5988	s.EmailSettings = v
5989	return s
5990}
5991
5992// SetSmsSettings sets the SmsSettings field's value.
5993func (s *UpdateBackendAuthForgotPasswordConfig) SetSmsSettings(v *SmsSettings) *UpdateBackendAuthForgotPasswordConfig {
5994	s.SmsSettings = v
5995	return s
5996}
5997
5998// Describes the authorization configuration for the Amazon Cognito identity
5999// pool, provisioned as a part of your auth resource in the Amplify project.
6000type UpdateBackendAuthIdentityPoolConfig struct {
6001	_ struct{} `type:"structure"`
6002
6003	// A Boolean value that you can set to allow or disallow guest-level authorization
6004	// into your Amplify app.
6005	UnauthenticatedLogin *bool `locationName:"unauthenticatedLogin" type:"boolean"`
6006}
6007
6008// String returns the string representation
6009func (s UpdateBackendAuthIdentityPoolConfig) String() string {
6010	return awsutil.Prettify(s)
6011}
6012
6013// GoString returns the string representation
6014func (s UpdateBackendAuthIdentityPoolConfig) GoString() string {
6015	return s.String()
6016}
6017
6018// SetUnauthenticatedLogin sets the UnauthenticatedLogin field's value.
6019func (s *UpdateBackendAuthIdentityPoolConfig) SetUnauthenticatedLogin(v bool) *UpdateBackendAuthIdentityPoolConfig {
6020	s.UnauthenticatedLogin = &v
6021	return s
6022}
6023
6024type UpdateBackendAuthInput struct {
6025	_ struct{} `type:"structure"`
6026
6027	// AppId is a required field
6028	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
6029
6030	// BackendEnvironmentName is a required field
6031	BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"`
6032
6033	// Defines the resource configuration when updating an authentication resource
6034	// in your Amplify project.
6035	//
6036	// ResourceConfig is a required field
6037	ResourceConfig *UpdateBackendAuthResourceConfig `locationName:"resourceConfig" type:"structure" required:"true"`
6038
6039	// ResourceName is a required field
6040	ResourceName *string `locationName:"resourceName" type:"string" required:"true"`
6041}
6042
6043// String returns the string representation
6044func (s UpdateBackendAuthInput) String() string {
6045	return awsutil.Prettify(s)
6046}
6047
6048// GoString returns the string representation
6049func (s UpdateBackendAuthInput) GoString() string {
6050	return s.String()
6051}
6052
6053// Validate inspects the fields of the type to determine if they are valid.
6054func (s *UpdateBackendAuthInput) Validate() error {
6055	invalidParams := request.ErrInvalidParams{Context: "UpdateBackendAuthInput"}
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.BackendEnvironmentName == nil {
6063		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
6064	}
6065	if s.BackendEnvironmentName != nil && len(*s.BackendEnvironmentName) < 1 {
6066		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentName", 1))
6067	}
6068	if s.ResourceConfig == nil {
6069		invalidParams.Add(request.NewErrParamRequired("ResourceConfig"))
6070	}
6071	if s.ResourceName == nil {
6072		invalidParams.Add(request.NewErrParamRequired("ResourceName"))
6073	}
6074	if s.ResourceConfig != nil {
6075		if err := s.ResourceConfig.Validate(); err != nil {
6076			invalidParams.AddNested("ResourceConfig", err.(request.ErrInvalidParams))
6077		}
6078	}
6079
6080	if invalidParams.Len() > 0 {
6081		return invalidParams
6082	}
6083	return nil
6084}
6085
6086// SetAppId sets the AppId field's value.
6087func (s *UpdateBackendAuthInput) SetAppId(v string) *UpdateBackendAuthInput {
6088	s.AppId = &v
6089	return s
6090}
6091
6092// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
6093func (s *UpdateBackendAuthInput) SetBackendEnvironmentName(v string) *UpdateBackendAuthInput {
6094	s.BackendEnvironmentName = &v
6095	return s
6096}
6097
6098// SetResourceConfig sets the ResourceConfig field's value.
6099func (s *UpdateBackendAuthInput) SetResourceConfig(v *UpdateBackendAuthResourceConfig) *UpdateBackendAuthInput {
6100	s.ResourceConfig = v
6101	return s
6102}
6103
6104// SetResourceName sets the ResourceName field's value.
6105func (s *UpdateBackendAuthInput) SetResourceName(v string) *UpdateBackendAuthInput {
6106	s.ResourceName = &v
6107	return s
6108}
6109
6110// Updates the multi-factor authentication (MFA) configuration for the backend
6111// of your Amplify project.
6112type UpdateBackendAuthMFAConfig struct {
6113	_ struct{} `type:"structure"`
6114
6115	// The MFA mode for the backend of your Amplify project.
6116	MFAMode *string `type:"string" enum:"MFAMode"`
6117
6118	// The settings of your MFA configuration for the backend of your Amplify project.
6119	Settings *Settings `locationName:"settings" type:"structure"`
6120}
6121
6122// String returns the string representation
6123func (s UpdateBackendAuthMFAConfig) String() string {
6124	return awsutil.Prettify(s)
6125}
6126
6127// GoString returns the string representation
6128func (s UpdateBackendAuthMFAConfig) GoString() string {
6129	return s.String()
6130}
6131
6132// SetMFAMode sets the MFAMode field's value.
6133func (s *UpdateBackendAuthMFAConfig) SetMFAMode(v string) *UpdateBackendAuthMFAConfig {
6134	s.MFAMode = &v
6135	return s
6136}
6137
6138// SetSettings sets the Settings field's value.
6139func (s *UpdateBackendAuthMFAConfig) SetSettings(v *Settings) *UpdateBackendAuthMFAConfig {
6140	s.Settings = v
6141	return s
6142}
6143
6144// The OAuth configurations for authenticating users into your Amplify app.
6145type UpdateBackendAuthOAuthConfig struct {
6146	_ struct{} `type:"structure"`
6147
6148	// The Amazon Cognito domain prefix used to create a hosted UI for authentication.
6149	DomainPrefix *string `locationName:"domainPrefix" type:"string"`
6150
6151	// The OAuth grant type to allow app users to authenticate from your Amplify
6152	// app.
6153	OAuthGrantType *string `locationName:"oAuthGrantType" type:"string" enum:"OAuthGrantType"`
6154
6155	// The list of OAuth-related flows that can allow users to authenticate from
6156	// your Amplify app.
6157	OAuthScopes []*string `locationName:"oAuthScopes" type:"list"`
6158
6159	// Redirect URLs that OAuth uses when a user signs in to an Amplify app.
6160	RedirectSignInURIs []*string `locationName:"redirectSignInURIs" type:"list"`
6161
6162	// Redirect URLs that OAuth uses when a user signs out of an Amplify app.
6163	RedirectSignOutURIs []*string `locationName:"redirectSignOutURIs" type:"list"`
6164
6165	// Describes third-party social federation configurations for allowing your
6166	// users to sign in with OAuth.
6167	SocialProviderSettings *SocialProviderSettings `locationName:"socialProviderSettings" type:"structure"`
6168}
6169
6170// String returns the string representation
6171func (s UpdateBackendAuthOAuthConfig) String() string {
6172	return awsutil.Prettify(s)
6173}
6174
6175// GoString returns the string representation
6176func (s UpdateBackendAuthOAuthConfig) GoString() string {
6177	return s.String()
6178}
6179
6180// SetDomainPrefix sets the DomainPrefix field's value.
6181func (s *UpdateBackendAuthOAuthConfig) SetDomainPrefix(v string) *UpdateBackendAuthOAuthConfig {
6182	s.DomainPrefix = &v
6183	return s
6184}
6185
6186// SetOAuthGrantType sets the OAuthGrantType field's value.
6187func (s *UpdateBackendAuthOAuthConfig) SetOAuthGrantType(v string) *UpdateBackendAuthOAuthConfig {
6188	s.OAuthGrantType = &v
6189	return s
6190}
6191
6192// SetOAuthScopes sets the OAuthScopes field's value.
6193func (s *UpdateBackendAuthOAuthConfig) SetOAuthScopes(v []*string) *UpdateBackendAuthOAuthConfig {
6194	s.OAuthScopes = v
6195	return s
6196}
6197
6198// SetRedirectSignInURIs sets the RedirectSignInURIs field's value.
6199func (s *UpdateBackendAuthOAuthConfig) SetRedirectSignInURIs(v []*string) *UpdateBackendAuthOAuthConfig {
6200	s.RedirectSignInURIs = v
6201	return s
6202}
6203
6204// SetRedirectSignOutURIs sets the RedirectSignOutURIs field's value.
6205func (s *UpdateBackendAuthOAuthConfig) SetRedirectSignOutURIs(v []*string) *UpdateBackendAuthOAuthConfig {
6206	s.RedirectSignOutURIs = v
6207	return s
6208}
6209
6210// SetSocialProviderSettings sets the SocialProviderSettings field's value.
6211func (s *UpdateBackendAuthOAuthConfig) SetSocialProviderSettings(v *SocialProviderSettings) *UpdateBackendAuthOAuthConfig {
6212	s.SocialProviderSettings = v
6213	return s
6214}
6215
6216type UpdateBackendAuthOutput struct {
6217	_ struct{} `type:"structure"`
6218
6219	AppId *string `locationName:"appId" type:"string"`
6220
6221	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
6222
6223	Error *string `locationName:"error" type:"string"`
6224
6225	JobId *string `locationName:"jobId" type:"string"`
6226
6227	Operation *string `locationName:"operation" type:"string"`
6228
6229	Status *string `locationName:"status" type:"string"`
6230}
6231
6232// String returns the string representation
6233func (s UpdateBackendAuthOutput) String() string {
6234	return awsutil.Prettify(s)
6235}
6236
6237// GoString returns the string representation
6238func (s UpdateBackendAuthOutput) GoString() string {
6239	return s.String()
6240}
6241
6242// SetAppId sets the AppId field's value.
6243func (s *UpdateBackendAuthOutput) SetAppId(v string) *UpdateBackendAuthOutput {
6244	s.AppId = &v
6245	return s
6246}
6247
6248// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
6249func (s *UpdateBackendAuthOutput) SetBackendEnvironmentName(v string) *UpdateBackendAuthOutput {
6250	s.BackendEnvironmentName = &v
6251	return s
6252}
6253
6254// SetError sets the Error field's value.
6255func (s *UpdateBackendAuthOutput) SetError(v string) *UpdateBackendAuthOutput {
6256	s.Error = &v
6257	return s
6258}
6259
6260// SetJobId sets the JobId field's value.
6261func (s *UpdateBackendAuthOutput) SetJobId(v string) *UpdateBackendAuthOutput {
6262	s.JobId = &v
6263	return s
6264}
6265
6266// SetOperation sets the Operation field's value.
6267func (s *UpdateBackendAuthOutput) SetOperation(v string) *UpdateBackendAuthOutput {
6268	s.Operation = &v
6269	return s
6270}
6271
6272// SetStatus sets the Status field's value.
6273func (s *UpdateBackendAuthOutput) SetStatus(v string) *UpdateBackendAuthOutput {
6274	s.Status = &v
6275	return s
6276}
6277
6278// Describes the password policy for your Amazon Cognito user pool that's configured
6279// as a part of your Amplify project.
6280type UpdateBackendAuthPasswordPolicyConfig struct {
6281	_ struct{} `type:"structure"`
6282
6283	// Describes additional constrains on the password requirements to sign in to
6284	// the auth resource, configured as a part of your Amplify project.
6285	AdditionalConstraints []*string `locationName:"additionalConstraints" type:"list"`
6286
6287	// Describes the minimum length of the password required to sign in to the auth
6288	// resource, configured as a part of your Amplify project.
6289	MinimumLength *float64 `locationName:"minimumLength" type:"double"`
6290}
6291
6292// String returns the string representation
6293func (s UpdateBackendAuthPasswordPolicyConfig) String() string {
6294	return awsutil.Prettify(s)
6295}
6296
6297// GoString returns the string representation
6298func (s UpdateBackendAuthPasswordPolicyConfig) GoString() string {
6299	return s.String()
6300}
6301
6302// SetAdditionalConstraints sets the AdditionalConstraints field's value.
6303func (s *UpdateBackendAuthPasswordPolicyConfig) SetAdditionalConstraints(v []*string) *UpdateBackendAuthPasswordPolicyConfig {
6304	s.AdditionalConstraints = v
6305	return s
6306}
6307
6308// SetMinimumLength sets the MinimumLength field's value.
6309func (s *UpdateBackendAuthPasswordPolicyConfig) SetMinimumLength(v float64) *UpdateBackendAuthPasswordPolicyConfig {
6310	s.MinimumLength = &v
6311	return s
6312}
6313
6314// Defines the resource configuration when updating an authentication resource
6315// in your Amplify project.
6316type UpdateBackendAuthResourceConfig struct {
6317	_ struct{} `type:"structure"`
6318
6319	// Defines the service name to use when configuring an authentication resource
6320	// in your Amplify project.
6321	//
6322	// AuthResources is a required field
6323	AuthResources *string `locationName:"authResources" type:"string" required:"true" enum:"AuthResources"`
6324
6325	// Describes the authorization configuration for the Amazon Cognito identity
6326	// pool, provisioned as a part of the auth resource in your Amplify project.
6327	IdentityPoolConfigs *UpdateBackendAuthIdentityPoolConfig `locationName:"identityPoolConfigs" type:"structure"`
6328
6329	// Defines the service name to use when configuring an authentication resource
6330	// in your Amplify project.
6331	//
6332	// Service is a required field
6333	Service *string `locationName:"service" type:"string" required:"true" enum:"Service"`
6334
6335	// Describes the authentication configuration for the Amazon Cognito user pool,
6336	// provisioned as a part of the auth resource in your Amplify project.
6337	//
6338	// UserPoolConfigs is a required field
6339	UserPoolConfigs *UpdateBackendAuthUserPoolConfig `locationName:"userPoolConfigs" type:"structure" required:"true"`
6340}
6341
6342// String returns the string representation
6343func (s UpdateBackendAuthResourceConfig) String() string {
6344	return awsutil.Prettify(s)
6345}
6346
6347// GoString returns the string representation
6348func (s UpdateBackendAuthResourceConfig) GoString() string {
6349	return s.String()
6350}
6351
6352// Validate inspects the fields of the type to determine if they are valid.
6353func (s *UpdateBackendAuthResourceConfig) Validate() error {
6354	invalidParams := request.ErrInvalidParams{Context: "UpdateBackendAuthResourceConfig"}
6355	if s.AuthResources == nil {
6356		invalidParams.Add(request.NewErrParamRequired("AuthResources"))
6357	}
6358	if s.Service == nil {
6359		invalidParams.Add(request.NewErrParamRequired("Service"))
6360	}
6361	if s.UserPoolConfigs == nil {
6362		invalidParams.Add(request.NewErrParamRequired("UserPoolConfigs"))
6363	}
6364
6365	if invalidParams.Len() > 0 {
6366		return invalidParams
6367	}
6368	return nil
6369}
6370
6371// SetAuthResources sets the AuthResources field's value.
6372func (s *UpdateBackendAuthResourceConfig) SetAuthResources(v string) *UpdateBackendAuthResourceConfig {
6373	s.AuthResources = &v
6374	return s
6375}
6376
6377// SetIdentityPoolConfigs sets the IdentityPoolConfigs field's value.
6378func (s *UpdateBackendAuthResourceConfig) SetIdentityPoolConfigs(v *UpdateBackendAuthIdentityPoolConfig) *UpdateBackendAuthResourceConfig {
6379	s.IdentityPoolConfigs = v
6380	return s
6381}
6382
6383// SetService sets the Service field's value.
6384func (s *UpdateBackendAuthResourceConfig) SetService(v string) *UpdateBackendAuthResourceConfig {
6385	s.Service = &v
6386	return s
6387}
6388
6389// SetUserPoolConfigs sets the UserPoolConfigs field's value.
6390func (s *UpdateBackendAuthResourceConfig) SetUserPoolConfigs(v *UpdateBackendAuthUserPoolConfig) *UpdateBackendAuthResourceConfig {
6391	s.UserPoolConfigs = v
6392	return s
6393}
6394
6395// Describes the Amazon Cognito user pool configuration to configure the authorization
6396// resource for your Amplify project on an update.
6397type UpdateBackendAuthUserPoolConfig struct {
6398	_ struct{} `type:"structure"`
6399
6400	// Describes the forgot password policy for your Amazon Cognito user pool, configured
6401	// as a part of your Amplify project.
6402	ForgotPassword *UpdateBackendAuthForgotPasswordConfig `locationName:"forgotPassword" type:"structure"`
6403
6404	// Describes whether to apply multi-factor authentication (MFA) policies for
6405	// your Amazon Cognito user pool that's configured as a part of your Amplify
6406	// project.
6407	Mfa *UpdateBackendAuthMFAConfig `locationName:"mfa" type:"structure"`
6408
6409	// Describes the OAuth policy and rules for your Amazon Cognito user pool, configured
6410	// as a part of your Amplify project.
6411	OAuth *UpdateBackendAuthOAuthConfig `locationName:"oAuth" type:"structure"`
6412
6413	// Describes the password policy for your Amazon Cognito user pool, configured
6414	// as a part of your Amplify project.
6415	PasswordPolicy *UpdateBackendAuthPasswordPolicyConfig `locationName:"passwordPolicy" type:"structure"`
6416}
6417
6418// String returns the string representation
6419func (s UpdateBackendAuthUserPoolConfig) String() string {
6420	return awsutil.Prettify(s)
6421}
6422
6423// GoString returns the string representation
6424func (s UpdateBackendAuthUserPoolConfig) GoString() string {
6425	return s.String()
6426}
6427
6428// SetForgotPassword sets the ForgotPassword field's value.
6429func (s *UpdateBackendAuthUserPoolConfig) SetForgotPassword(v *UpdateBackendAuthForgotPasswordConfig) *UpdateBackendAuthUserPoolConfig {
6430	s.ForgotPassword = v
6431	return s
6432}
6433
6434// SetMfa sets the Mfa field's value.
6435func (s *UpdateBackendAuthUserPoolConfig) SetMfa(v *UpdateBackendAuthMFAConfig) *UpdateBackendAuthUserPoolConfig {
6436	s.Mfa = v
6437	return s
6438}
6439
6440// SetOAuth sets the OAuth field's value.
6441func (s *UpdateBackendAuthUserPoolConfig) SetOAuth(v *UpdateBackendAuthOAuthConfig) *UpdateBackendAuthUserPoolConfig {
6442	s.OAuth = v
6443	return s
6444}
6445
6446// SetPasswordPolicy sets the PasswordPolicy field's value.
6447func (s *UpdateBackendAuthUserPoolConfig) SetPasswordPolicy(v *UpdateBackendAuthPasswordPolicyConfig) *UpdateBackendAuthUserPoolConfig {
6448	s.PasswordPolicy = v
6449	return s
6450}
6451
6452type UpdateBackendConfigInput struct {
6453	_ struct{} `type:"structure"`
6454
6455	// AppId is a required field
6456	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
6457
6458	// The request object for this operation.
6459	LoginAuthConfig *LoginAuthConfigReqObj `locationName:"loginAuthConfig" type:"structure"`
6460}
6461
6462// String returns the string representation
6463func (s UpdateBackendConfigInput) String() string {
6464	return awsutil.Prettify(s)
6465}
6466
6467// GoString returns the string representation
6468func (s UpdateBackendConfigInput) GoString() string {
6469	return s.String()
6470}
6471
6472// Validate inspects the fields of the type to determine if they are valid.
6473func (s *UpdateBackendConfigInput) Validate() error {
6474	invalidParams := request.ErrInvalidParams{Context: "UpdateBackendConfigInput"}
6475	if s.AppId == nil {
6476		invalidParams.Add(request.NewErrParamRequired("AppId"))
6477	}
6478	if s.AppId != nil && len(*s.AppId) < 1 {
6479		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
6480	}
6481
6482	if invalidParams.Len() > 0 {
6483		return invalidParams
6484	}
6485	return nil
6486}
6487
6488// SetAppId sets the AppId field's value.
6489func (s *UpdateBackendConfigInput) SetAppId(v string) *UpdateBackendConfigInput {
6490	s.AppId = &v
6491	return s
6492}
6493
6494// SetLoginAuthConfig sets the LoginAuthConfig field's value.
6495func (s *UpdateBackendConfigInput) SetLoginAuthConfig(v *LoginAuthConfigReqObj) *UpdateBackendConfigInput {
6496	s.LoginAuthConfig = v
6497	return s
6498}
6499
6500type UpdateBackendConfigOutput struct {
6501	_ struct{} `type:"structure"`
6502
6503	AppId *string `locationName:"appId" type:"string"`
6504
6505	BackendManagerAppId *string `locationName:"backendManagerAppId" type:"string"`
6506
6507	Error *string `locationName:"error" type:"string"`
6508
6509	// The request object for this operation.
6510	LoginAuthConfig *LoginAuthConfigReqObj `locationName:"loginAuthConfig" type:"structure"`
6511}
6512
6513// String returns the string representation
6514func (s UpdateBackendConfigOutput) String() string {
6515	return awsutil.Prettify(s)
6516}
6517
6518// GoString returns the string representation
6519func (s UpdateBackendConfigOutput) GoString() string {
6520	return s.String()
6521}
6522
6523// SetAppId sets the AppId field's value.
6524func (s *UpdateBackendConfigOutput) SetAppId(v string) *UpdateBackendConfigOutput {
6525	s.AppId = &v
6526	return s
6527}
6528
6529// SetBackendManagerAppId sets the BackendManagerAppId field's value.
6530func (s *UpdateBackendConfigOutput) SetBackendManagerAppId(v string) *UpdateBackendConfigOutput {
6531	s.BackendManagerAppId = &v
6532	return s
6533}
6534
6535// SetError sets the Error field's value.
6536func (s *UpdateBackendConfigOutput) SetError(v string) *UpdateBackendConfigOutput {
6537	s.Error = &v
6538	return s
6539}
6540
6541// SetLoginAuthConfig sets the LoginAuthConfig field's value.
6542func (s *UpdateBackendConfigOutput) SetLoginAuthConfig(v *LoginAuthConfigReqObj) *UpdateBackendConfigOutput {
6543	s.LoginAuthConfig = v
6544	return s
6545}
6546
6547type UpdateBackendJobInput struct {
6548	_ struct{} `type:"structure"`
6549
6550	// AppId is a required field
6551	AppId *string `location:"uri" locationName:"appId" type:"string" required:"true"`
6552
6553	// BackendEnvironmentName is a required field
6554	BackendEnvironmentName *string `location:"uri" locationName:"backendEnvironmentName" type:"string" required:"true"`
6555
6556	// JobId is a required field
6557	JobId *string `location:"uri" locationName:"jobId" type:"string" required:"true"`
6558
6559	Operation *string `locationName:"operation" type:"string"`
6560
6561	Status *string `locationName:"status" type:"string"`
6562}
6563
6564// String returns the string representation
6565func (s UpdateBackendJobInput) String() string {
6566	return awsutil.Prettify(s)
6567}
6568
6569// GoString returns the string representation
6570func (s UpdateBackendJobInput) GoString() string {
6571	return s.String()
6572}
6573
6574// Validate inspects the fields of the type to determine if they are valid.
6575func (s *UpdateBackendJobInput) Validate() error {
6576	invalidParams := request.ErrInvalidParams{Context: "UpdateBackendJobInput"}
6577	if s.AppId == nil {
6578		invalidParams.Add(request.NewErrParamRequired("AppId"))
6579	}
6580	if s.AppId != nil && len(*s.AppId) < 1 {
6581		invalidParams.Add(request.NewErrParamMinLen("AppId", 1))
6582	}
6583	if s.BackendEnvironmentName == nil {
6584		invalidParams.Add(request.NewErrParamRequired("BackendEnvironmentName"))
6585	}
6586	if s.BackendEnvironmentName != nil && len(*s.BackendEnvironmentName) < 1 {
6587		invalidParams.Add(request.NewErrParamMinLen("BackendEnvironmentName", 1))
6588	}
6589	if s.JobId == nil {
6590		invalidParams.Add(request.NewErrParamRequired("JobId"))
6591	}
6592	if s.JobId != nil && len(*s.JobId) < 1 {
6593		invalidParams.Add(request.NewErrParamMinLen("JobId", 1))
6594	}
6595
6596	if invalidParams.Len() > 0 {
6597		return invalidParams
6598	}
6599	return nil
6600}
6601
6602// SetAppId sets the AppId field's value.
6603func (s *UpdateBackendJobInput) SetAppId(v string) *UpdateBackendJobInput {
6604	s.AppId = &v
6605	return s
6606}
6607
6608// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
6609func (s *UpdateBackendJobInput) SetBackendEnvironmentName(v string) *UpdateBackendJobInput {
6610	s.BackendEnvironmentName = &v
6611	return s
6612}
6613
6614// SetJobId sets the JobId field's value.
6615func (s *UpdateBackendJobInput) SetJobId(v string) *UpdateBackendJobInput {
6616	s.JobId = &v
6617	return s
6618}
6619
6620// SetOperation sets the Operation field's value.
6621func (s *UpdateBackendJobInput) SetOperation(v string) *UpdateBackendJobInput {
6622	s.Operation = &v
6623	return s
6624}
6625
6626// SetStatus sets the Status field's value.
6627func (s *UpdateBackendJobInput) SetStatus(v string) *UpdateBackendJobInput {
6628	s.Status = &v
6629	return s
6630}
6631
6632type UpdateBackendJobOutput struct {
6633	_ struct{} `type:"structure"`
6634
6635	AppId *string `locationName:"appId" type:"string"`
6636
6637	BackendEnvironmentName *string `locationName:"backendEnvironmentName" type:"string"`
6638
6639	CreateTime *string `locationName:"createTime" type:"string"`
6640
6641	Error *string `locationName:"error" type:"string"`
6642
6643	JobId *string `locationName:"jobId" type:"string"`
6644
6645	Operation *string `locationName:"operation" type:"string"`
6646
6647	Status *string `locationName:"status" type:"string"`
6648
6649	UpdateTime *string `locationName:"updateTime" type:"string"`
6650}
6651
6652// String returns the string representation
6653func (s UpdateBackendJobOutput) String() string {
6654	return awsutil.Prettify(s)
6655}
6656
6657// GoString returns the string representation
6658func (s UpdateBackendJobOutput) GoString() string {
6659	return s.String()
6660}
6661
6662// SetAppId sets the AppId field's value.
6663func (s *UpdateBackendJobOutput) SetAppId(v string) *UpdateBackendJobOutput {
6664	s.AppId = &v
6665	return s
6666}
6667
6668// SetBackendEnvironmentName sets the BackendEnvironmentName field's value.
6669func (s *UpdateBackendJobOutput) SetBackendEnvironmentName(v string) *UpdateBackendJobOutput {
6670	s.BackendEnvironmentName = &v
6671	return s
6672}
6673
6674// SetCreateTime sets the CreateTime field's value.
6675func (s *UpdateBackendJobOutput) SetCreateTime(v string) *UpdateBackendJobOutput {
6676	s.CreateTime = &v
6677	return s
6678}
6679
6680// SetError sets the Error field's value.
6681func (s *UpdateBackendJobOutput) SetError(v string) *UpdateBackendJobOutput {
6682	s.Error = &v
6683	return s
6684}
6685
6686// SetJobId sets the JobId field's value.
6687func (s *UpdateBackendJobOutput) SetJobId(v string) *UpdateBackendJobOutput {
6688	s.JobId = &v
6689	return s
6690}
6691
6692// SetOperation sets the Operation field's value.
6693func (s *UpdateBackendJobOutput) SetOperation(v string) *UpdateBackendJobOutput {
6694	s.Operation = &v
6695	return s
6696}
6697
6698// SetStatus sets the Status field's value.
6699func (s *UpdateBackendJobOutput) SetStatus(v string) *UpdateBackendJobOutput {
6700	s.Status = &v
6701	return s
6702}
6703
6704// SetUpdateTime sets the UpdateTime field's value.
6705func (s *UpdateBackendJobOutput) SetUpdateTime(v string) *UpdateBackendJobOutput {
6706	s.UpdateTime = &v
6707	return s
6708}
6709
6710const (
6711	// AdditionalConstraintsElementRequireDigit is a AdditionalConstraintsElement enum value
6712	AdditionalConstraintsElementRequireDigit = "REQUIRE_DIGIT"
6713
6714	// AdditionalConstraintsElementRequireLowercase is a AdditionalConstraintsElement enum value
6715	AdditionalConstraintsElementRequireLowercase = "REQUIRE_LOWERCASE"
6716
6717	// AdditionalConstraintsElementRequireSymbol is a AdditionalConstraintsElement enum value
6718	AdditionalConstraintsElementRequireSymbol = "REQUIRE_SYMBOL"
6719
6720	// AdditionalConstraintsElementRequireUppercase is a AdditionalConstraintsElement enum value
6721	AdditionalConstraintsElementRequireUppercase = "REQUIRE_UPPERCASE"
6722)
6723
6724// AdditionalConstraintsElement_Values returns all elements of the AdditionalConstraintsElement enum
6725func AdditionalConstraintsElement_Values() []string {
6726	return []string{
6727		AdditionalConstraintsElementRequireDigit,
6728		AdditionalConstraintsElementRequireLowercase,
6729		AdditionalConstraintsElementRequireSymbol,
6730		AdditionalConstraintsElementRequireUppercase,
6731	}
6732}
6733
6734const (
6735	// AuthResourcesUserPoolOnly is a AuthResources enum value
6736	AuthResourcesUserPoolOnly = "USER_POOL_ONLY"
6737
6738	// AuthResourcesIdentityPoolAndUserPool is a AuthResources enum value
6739	AuthResourcesIdentityPoolAndUserPool = "IDENTITY_POOL_AND_USER_POOL"
6740)
6741
6742// AuthResources_Values returns all elements of the AuthResources enum
6743func AuthResources_Values() []string {
6744	return []string{
6745		AuthResourcesUserPoolOnly,
6746		AuthResourcesIdentityPoolAndUserPool,
6747	}
6748}
6749
6750const (
6751	// DeliveryMethodEmail is a DeliveryMethod enum value
6752	DeliveryMethodEmail = "EMAIL"
6753
6754	// DeliveryMethodSms is a DeliveryMethod enum value
6755	DeliveryMethodSms = "SMS"
6756)
6757
6758// DeliveryMethod_Values returns all elements of the DeliveryMethod enum
6759func DeliveryMethod_Values() []string {
6760	return []string{
6761		DeliveryMethodEmail,
6762		DeliveryMethodSms,
6763	}
6764}
6765
6766const (
6767	// MFAModeOn is a MFAMode enum value
6768	MFAModeOn = "ON"
6769
6770	// MFAModeOff is a MFAMode enum value
6771	MFAModeOff = "OFF"
6772
6773	// MFAModeOptional is a MFAMode enum value
6774	MFAModeOptional = "OPTIONAL"
6775)
6776
6777// MFAMode_Values returns all elements of the MFAMode enum
6778func MFAMode_Values() []string {
6779	return []string{
6780		MFAModeOn,
6781		MFAModeOff,
6782		MFAModeOptional,
6783	}
6784}
6785
6786const (
6787	// MfaTypesElementSms is a MfaTypesElement enum value
6788	MfaTypesElementSms = "SMS"
6789
6790	// MfaTypesElementTotp is a MfaTypesElement enum value
6791	MfaTypesElementTotp = "TOTP"
6792)
6793
6794// MfaTypesElement_Values returns all elements of the MfaTypesElement enum
6795func MfaTypesElement_Values() []string {
6796	return []string{
6797		MfaTypesElementSms,
6798		MfaTypesElementTotp,
6799	}
6800}
6801
6802const (
6803	// ModeApiKey is a Mode enum value
6804	ModeApiKey = "API_KEY"
6805
6806	// ModeAwsIam is a Mode enum value
6807	ModeAwsIam = "AWS_IAM"
6808
6809	// ModeAmazonCognitoUserPools is a Mode enum value
6810	ModeAmazonCognitoUserPools = "AMAZON_COGNITO_USER_POOLS"
6811
6812	// ModeOpenidConnect is a Mode enum value
6813	ModeOpenidConnect = "OPENID_CONNECT"
6814)
6815
6816// Mode_Values returns all elements of the Mode enum
6817func Mode_Values() []string {
6818	return []string{
6819		ModeApiKey,
6820		ModeAwsIam,
6821		ModeAmazonCognitoUserPools,
6822		ModeOpenidConnect,
6823	}
6824}
6825
6826const (
6827	// OAuthGrantTypeCode is a OAuthGrantType enum value
6828	OAuthGrantTypeCode = "CODE"
6829
6830	// OAuthGrantTypeImplicit is a OAuthGrantType enum value
6831	OAuthGrantTypeImplicit = "IMPLICIT"
6832)
6833
6834// OAuthGrantType_Values returns all elements of the OAuthGrantType enum
6835func OAuthGrantType_Values() []string {
6836	return []string{
6837		OAuthGrantTypeCode,
6838		OAuthGrantTypeImplicit,
6839	}
6840}
6841
6842const (
6843	// OAuthScopesElementPhone is a OAuthScopesElement enum value
6844	OAuthScopesElementPhone = "PHONE"
6845
6846	// OAuthScopesElementEmail is a OAuthScopesElement enum value
6847	OAuthScopesElementEmail = "EMAIL"
6848
6849	// OAuthScopesElementOpenid is a OAuthScopesElement enum value
6850	OAuthScopesElementOpenid = "OPENID"
6851
6852	// OAuthScopesElementProfile is a OAuthScopesElement enum value
6853	OAuthScopesElementProfile = "PROFILE"
6854
6855	// OAuthScopesElementAwsCognitoSigninUserAdmin is a OAuthScopesElement enum value
6856	OAuthScopesElementAwsCognitoSigninUserAdmin = "AWS_COGNITO_SIGNIN_USER_ADMIN"
6857)
6858
6859// OAuthScopesElement_Values returns all elements of the OAuthScopesElement enum
6860func OAuthScopesElement_Values() []string {
6861	return []string{
6862		OAuthScopesElementPhone,
6863		OAuthScopesElementEmail,
6864		OAuthScopesElementOpenid,
6865		OAuthScopesElementProfile,
6866		OAuthScopesElementAwsCognitoSigninUserAdmin,
6867	}
6868}
6869
6870const (
6871	// RequiredSignUpAttributesElementAddress is a RequiredSignUpAttributesElement enum value
6872	RequiredSignUpAttributesElementAddress = "ADDRESS"
6873
6874	// RequiredSignUpAttributesElementBirthdate is a RequiredSignUpAttributesElement enum value
6875	RequiredSignUpAttributesElementBirthdate = "BIRTHDATE"
6876
6877	// RequiredSignUpAttributesElementEmail is a RequiredSignUpAttributesElement enum value
6878	RequiredSignUpAttributesElementEmail = "EMAIL"
6879
6880	// RequiredSignUpAttributesElementFamilyName is a RequiredSignUpAttributesElement enum value
6881	RequiredSignUpAttributesElementFamilyName = "FAMILY_NAME"
6882
6883	// RequiredSignUpAttributesElementGender is a RequiredSignUpAttributesElement enum value
6884	RequiredSignUpAttributesElementGender = "GENDER"
6885
6886	// RequiredSignUpAttributesElementGivenName is a RequiredSignUpAttributesElement enum value
6887	RequiredSignUpAttributesElementGivenName = "GIVEN_NAME"
6888
6889	// RequiredSignUpAttributesElementLocale is a RequiredSignUpAttributesElement enum value
6890	RequiredSignUpAttributesElementLocale = "LOCALE"
6891
6892	// RequiredSignUpAttributesElementMiddleName is a RequiredSignUpAttributesElement enum value
6893	RequiredSignUpAttributesElementMiddleName = "MIDDLE_NAME"
6894
6895	// RequiredSignUpAttributesElementName is a RequiredSignUpAttributesElement enum value
6896	RequiredSignUpAttributesElementName = "NAME"
6897
6898	// RequiredSignUpAttributesElementNickname is a RequiredSignUpAttributesElement enum value
6899	RequiredSignUpAttributesElementNickname = "NICKNAME"
6900
6901	// RequiredSignUpAttributesElementPhoneNumber is a RequiredSignUpAttributesElement enum value
6902	RequiredSignUpAttributesElementPhoneNumber = "PHONE_NUMBER"
6903
6904	// RequiredSignUpAttributesElementPicture is a RequiredSignUpAttributesElement enum value
6905	RequiredSignUpAttributesElementPicture = "PICTURE"
6906
6907	// RequiredSignUpAttributesElementPreferredUsername is a RequiredSignUpAttributesElement enum value
6908	RequiredSignUpAttributesElementPreferredUsername = "PREFERRED_USERNAME"
6909
6910	// RequiredSignUpAttributesElementProfile is a RequiredSignUpAttributesElement enum value
6911	RequiredSignUpAttributesElementProfile = "PROFILE"
6912
6913	// RequiredSignUpAttributesElementUpdatedAt is a RequiredSignUpAttributesElement enum value
6914	RequiredSignUpAttributesElementUpdatedAt = "UPDATED_AT"
6915
6916	// RequiredSignUpAttributesElementWebsite is a RequiredSignUpAttributesElement enum value
6917	RequiredSignUpAttributesElementWebsite = "WEBSITE"
6918
6919	// RequiredSignUpAttributesElementZoneInfo is a RequiredSignUpAttributesElement enum value
6920	RequiredSignUpAttributesElementZoneInfo = "ZONE_INFO"
6921)
6922
6923// RequiredSignUpAttributesElement_Values returns all elements of the RequiredSignUpAttributesElement enum
6924func RequiredSignUpAttributesElement_Values() []string {
6925	return []string{
6926		RequiredSignUpAttributesElementAddress,
6927		RequiredSignUpAttributesElementBirthdate,
6928		RequiredSignUpAttributesElementEmail,
6929		RequiredSignUpAttributesElementFamilyName,
6930		RequiredSignUpAttributesElementGender,
6931		RequiredSignUpAttributesElementGivenName,
6932		RequiredSignUpAttributesElementLocale,
6933		RequiredSignUpAttributesElementMiddleName,
6934		RequiredSignUpAttributesElementName,
6935		RequiredSignUpAttributesElementNickname,
6936		RequiredSignUpAttributesElementPhoneNumber,
6937		RequiredSignUpAttributesElementPicture,
6938		RequiredSignUpAttributesElementPreferredUsername,
6939		RequiredSignUpAttributesElementProfile,
6940		RequiredSignUpAttributesElementUpdatedAt,
6941		RequiredSignUpAttributesElementWebsite,
6942		RequiredSignUpAttributesElementZoneInfo,
6943	}
6944}
6945
6946const (
6947	// ResolutionStrategyOptimisticConcurrency is a ResolutionStrategy enum value
6948	ResolutionStrategyOptimisticConcurrency = "OPTIMISTIC_CONCURRENCY"
6949
6950	// ResolutionStrategyLambda is a ResolutionStrategy enum value
6951	ResolutionStrategyLambda = "LAMBDA"
6952
6953	// ResolutionStrategyAutomerge is a ResolutionStrategy enum value
6954	ResolutionStrategyAutomerge = "AUTOMERGE"
6955
6956	// ResolutionStrategyNone is a ResolutionStrategy enum value
6957	ResolutionStrategyNone = "NONE"
6958)
6959
6960// ResolutionStrategy_Values returns all elements of the ResolutionStrategy enum
6961func ResolutionStrategy_Values() []string {
6962	return []string{
6963		ResolutionStrategyOptimisticConcurrency,
6964		ResolutionStrategyLambda,
6965		ResolutionStrategyAutomerge,
6966		ResolutionStrategyNone,
6967	}
6968}
6969
6970const (
6971	// ServiceCognito is a Service enum value
6972	ServiceCognito = "COGNITO"
6973)
6974
6975// Service_Values returns all elements of the Service enum
6976func Service_Values() []string {
6977	return []string{
6978		ServiceCognito,
6979	}
6980}
6981
6982const (
6983	// SignInMethodEmail is a SignInMethod enum value
6984	SignInMethodEmail = "EMAIL"
6985
6986	// SignInMethodEmailAndPhoneNumber is a SignInMethod enum value
6987	SignInMethodEmailAndPhoneNumber = "EMAIL_AND_PHONE_NUMBER"
6988
6989	// SignInMethodPhoneNumber is a SignInMethod enum value
6990	SignInMethodPhoneNumber = "PHONE_NUMBER"
6991
6992	// SignInMethodUsername is a SignInMethod enum value
6993	SignInMethodUsername = "USERNAME"
6994)
6995
6996// SignInMethod_Values returns all elements of the SignInMethod enum
6997func SignInMethod_Values() []string {
6998	return []string{
6999		SignInMethodEmail,
7000		SignInMethodEmailAndPhoneNumber,
7001		SignInMethodPhoneNumber,
7002		SignInMethodUsername,
7003	}
7004}
7005
7006const (
7007	// StatusLatest is a Status enum value
7008	StatusLatest = "LATEST"
7009
7010	// StatusStale is a Status enum value
7011	StatusStale = "STALE"
7012)
7013
7014// Status_Values returns all elements of the Status enum
7015func Status_Values() []string {
7016	return []string{
7017		StatusLatest,
7018		StatusStale,
7019	}
7020}
7021