1// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.
2
3package appsync
4
5import (
6	"fmt"
7
8	"github.com/aws/aws-sdk-go/aws"
9	"github.com/aws/aws-sdk-go/aws/awsutil"
10	"github.com/aws/aws-sdk-go/aws/request"
11	"github.com/aws/aws-sdk-go/private/protocol"
12	"github.com/aws/aws-sdk-go/private/protocol/restjson"
13)
14
15const opCreateApiCache = "CreateApiCache"
16
17// CreateApiCacheRequest generates a "aws/request.Request" representing the
18// client's request for the CreateApiCache operation. The "output" return
19// value will be populated with the request's response once the request completes
20// successfully.
21//
22// Use "Send" method on the returned Request to send the API call to the service.
23// the "output" return value is not valid until after Send returns without error.
24//
25// See CreateApiCache for more information on using the CreateApiCache
26// API call, and error handling.
27//
28// This method is useful when you want to inject custom logic or configuration
29// into the SDK's request lifecycle. Such as custom headers, or retry logic.
30//
31//
32//    // Example sending a request using the CreateApiCacheRequest method.
33//    req, resp := client.CreateApiCacheRequest(params)
34//
35//    err := req.Send()
36//    if err == nil { // resp is now filled
37//        fmt.Println(resp)
38//    }
39//
40// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateApiCache
41func (c *AppSync) CreateApiCacheRequest(input *CreateApiCacheInput) (req *request.Request, output *CreateApiCacheOutput) {
42	op := &request.Operation{
43		Name:       opCreateApiCache,
44		HTTPMethod: "POST",
45		HTTPPath:   "/v1/apis/{apiId}/ApiCaches",
46	}
47
48	if input == nil {
49		input = &CreateApiCacheInput{}
50	}
51
52	output = &CreateApiCacheOutput{}
53	req = c.newRequest(op, input, output)
54	return
55}
56
57// CreateApiCache API operation for AWS AppSync.
58//
59// Creates a cache for the GraphQL API.
60//
61// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
62// with awserr.Error's Code and Message methods to get detailed information about
63// the error.
64//
65// See the AWS API reference guide for AWS AppSync's
66// API operation CreateApiCache for usage and error information.
67//
68// Returned Error Types:
69//   * BadRequestException
70//   The request is not well formed. For example, a value is invalid or a required
71//   field is missing. Check the field values, and then try again.
72//
73//   * ConcurrentModificationException
74//   Another modification is in progress at this time and it must complete before
75//   you can make your change.
76//
77//   * NotFoundException
78//   The resource specified in the request was not found. Check the resource,
79//   and then try again.
80//
81//   * UnauthorizedException
82//   You are not authorized to perform this operation.
83//
84//   * InternalFailureException
85//   An internal AWS AppSync error occurred. Try your request again.
86//
87// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateApiCache
88func (c *AppSync) CreateApiCache(input *CreateApiCacheInput) (*CreateApiCacheOutput, error) {
89	req, out := c.CreateApiCacheRequest(input)
90	return out, req.Send()
91}
92
93// CreateApiCacheWithContext is the same as CreateApiCache with the addition of
94// the ability to pass a context and additional request options.
95//
96// See CreateApiCache for details on how to use this API operation.
97//
98// The context must be non-nil and will be used for request cancellation. If
99// the context is nil a panic will occur. In the future the SDK may create
100// sub-contexts for http.Requests. See https://golang.org/pkg/context/
101// for more information on using Contexts.
102func (c *AppSync) CreateApiCacheWithContext(ctx aws.Context, input *CreateApiCacheInput, opts ...request.Option) (*CreateApiCacheOutput, error) {
103	req, out := c.CreateApiCacheRequest(input)
104	req.SetContext(ctx)
105	req.ApplyOptions(opts...)
106	return out, req.Send()
107}
108
109const opCreateApiKey = "CreateApiKey"
110
111// CreateApiKeyRequest generates a "aws/request.Request" representing the
112// client's request for the CreateApiKey operation. The "output" return
113// value will be populated with the request's response once the request completes
114// successfully.
115//
116// Use "Send" method on the returned Request to send the API call to the service.
117// the "output" return value is not valid until after Send returns without error.
118//
119// See CreateApiKey for more information on using the CreateApiKey
120// API call, and error handling.
121//
122// This method is useful when you want to inject custom logic or configuration
123// into the SDK's request lifecycle. Such as custom headers, or retry logic.
124//
125//
126//    // Example sending a request using the CreateApiKeyRequest method.
127//    req, resp := client.CreateApiKeyRequest(params)
128//
129//    err := req.Send()
130//    if err == nil { // resp is now filled
131//        fmt.Println(resp)
132//    }
133//
134// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateApiKey
135func (c *AppSync) CreateApiKeyRequest(input *CreateApiKeyInput) (req *request.Request, output *CreateApiKeyOutput) {
136	op := &request.Operation{
137		Name:       opCreateApiKey,
138		HTTPMethod: "POST",
139		HTTPPath:   "/v1/apis/{apiId}/apikeys",
140	}
141
142	if input == nil {
143		input = &CreateApiKeyInput{}
144	}
145
146	output = &CreateApiKeyOutput{}
147	req = c.newRequest(op, input, output)
148	return
149}
150
151// CreateApiKey API operation for AWS AppSync.
152//
153// Creates a unique key that you can distribute to clients who are executing
154// your API.
155//
156// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
157// with awserr.Error's Code and Message methods to get detailed information about
158// the error.
159//
160// See the AWS API reference guide for AWS AppSync's
161// API operation CreateApiKey for usage and error information.
162//
163// Returned Error Types:
164//   * BadRequestException
165//   The request is not well formed. For example, a value is invalid or a required
166//   field is missing. Check the field values, and then try again.
167//
168//   * NotFoundException
169//   The resource specified in the request was not found. Check the resource,
170//   and then try again.
171//
172//   * LimitExceededException
173//   The request exceeded a limit. Try your request again.
174//
175//   * UnauthorizedException
176//   You are not authorized to perform this operation.
177//
178//   * LimitExceededException
179//   The request exceeded a limit. Try your request again.
180//
181//   * InternalFailureException
182//   An internal AWS AppSync error occurred. Try your request again.
183//
184//   * ApiKeyLimitExceededException
185//   The API key exceeded a limit. Try your request again.
186//
187//   * ApiKeyValidityOutOfBoundsException
188//   The API key expiration must be set to a value between 1 and 365 days from
189//   creation (for CreateApiKey) or from update (for UpdateApiKey).
190//
191// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateApiKey
192func (c *AppSync) CreateApiKey(input *CreateApiKeyInput) (*CreateApiKeyOutput, error) {
193	req, out := c.CreateApiKeyRequest(input)
194	return out, req.Send()
195}
196
197// CreateApiKeyWithContext is the same as CreateApiKey with the addition of
198// the ability to pass a context and additional request options.
199//
200// See CreateApiKey for details on how to use this API operation.
201//
202// The context must be non-nil and will be used for request cancellation. If
203// the context is nil a panic will occur. In the future the SDK may create
204// sub-contexts for http.Requests. See https://golang.org/pkg/context/
205// for more information on using Contexts.
206func (c *AppSync) CreateApiKeyWithContext(ctx aws.Context, input *CreateApiKeyInput, opts ...request.Option) (*CreateApiKeyOutput, error) {
207	req, out := c.CreateApiKeyRequest(input)
208	req.SetContext(ctx)
209	req.ApplyOptions(opts...)
210	return out, req.Send()
211}
212
213const opCreateDataSource = "CreateDataSource"
214
215// CreateDataSourceRequest generates a "aws/request.Request" representing the
216// client's request for the CreateDataSource operation. The "output" return
217// value will be populated with the request's response once the request completes
218// successfully.
219//
220// Use "Send" method on the returned Request to send the API call to the service.
221// the "output" return value is not valid until after Send returns without error.
222//
223// See CreateDataSource for more information on using the CreateDataSource
224// API call, and error handling.
225//
226// This method is useful when you want to inject custom logic or configuration
227// into the SDK's request lifecycle. Such as custom headers, or retry logic.
228//
229//
230//    // Example sending a request using the CreateDataSourceRequest method.
231//    req, resp := client.CreateDataSourceRequest(params)
232//
233//    err := req.Send()
234//    if err == nil { // resp is now filled
235//        fmt.Println(resp)
236//    }
237//
238// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateDataSource
239func (c *AppSync) CreateDataSourceRequest(input *CreateDataSourceInput) (req *request.Request, output *CreateDataSourceOutput) {
240	op := &request.Operation{
241		Name:       opCreateDataSource,
242		HTTPMethod: "POST",
243		HTTPPath:   "/v1/apis/{apiId}/datasources",
244	}
245
246	if input == nil {
247		input = &CreateDataSourceInput{}
248	}
249
250	output = &CreateDataSourceOutput{}
251	req = c.newRequest(op, input, output)
252	return
253}
254
255// CreateDataSource API operation for AWS AppSync.
256//
257// Creates a DataSource object.
258//
259// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
260// with awserr.Error's Code and Message methods to get detailed information about
261// the error.
262//
263// See the AWS API reference guide for AWS AppSync's
264// API operation CreateDataSource for usage and error information.
265//
266// Returned Error Types:
267//   * BadRequestException
268//   The request is not well formed. For example, a value is invalid or a required
269//   field is missing. Check the field values, and then try again.
270//
271//   * ConcurrentModificationException
272//   Another modification is in progress at this time and it must complete before
273//   you can make your change.
274//
275//   * NotFoundException
276//   The resource specified in the request was not found. Check the resource,
277//   and then try again.
278//
279//   * UnauthorizedException
280//   You are not authorized to perform this operation.
281//
282//   * InternalFailureException
283//   An internal AWS AppSync error occurred. Try your request again.
284//
285// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateDataSource
286func (c *AppSync) CreateDataSource(input *CreateDataSourceInput) (*CreateDataSourceOutput, error) {
287	req, out := c.CreateDataSourceRequest(input)
288	return out, req.Send()
289}
290
291// CreateDataSourceWithContext is the same as CreateDataSource with the addition of
292// the ability to pass a context and additional request options.
293//
294// See CreateDataSource for details on how to use this API operation.
295//
296// The context must be non-nil and will be used for request cancellation. If
297// the context is nil a panic will occur. In the future the SDK may create
298// sub-contexts for http.Requests. See https://golang.org/pkg/context/
299// for more information on using Contexts.
300func (c *AppSync) CreateDataSourceWithContext(ctx aws.Context, input *CreateDataSourceInput, opts ...request.Option) (*CreateDataSourceOutput, error) {
301	req, out := c.CreateDataSourceRequest(input)
302	req.SetContext(ctx)
303	req.ApplyOptions(opts...)
304	return out, req.Send()
305}
306
307const opCreateFunction = "CreateFunction"
308
309// CreateFunctionRequest generates a "aws/request.Request" representing the
310// client's request for the CreateFunction operation. The "output" return
311// value will be populated with the request's response once the request completes
312// successfully.
313//
314// Use "Send" method on the returned Request to send the API call to the service.
315// the "output" return value is not valid until after Send returns without error.
316//
317// See CreateFunction for more information on using the CreateFunction
318// API call, and error handling.
319//
320// This method is useful when you want to inject custom logic or configuration
321// into the SDK's request lifecycle. Such as custom headers, or retry logic.
322//
323//
324//    // Example sending a request using the CreateFunctionRequest method.
325//    req, resp := client.CreateFunctionRequest(params)
326//
327//    err := req.Send()
328//    if err == nil { // resp is now filled
329//        fmt.Println(resp)
330//    }
331//
332// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateFunction
333func (c *AppSync) CreateFunctionRequest(input *CreateFunctionInput) (req *request.Request, output *CreateFunctionOutput) {
334	op := &request.Operation{
335		Name:       opCreateFunction,
336		HTTPMethod: "POST",
337		HTTPPath:   "/v1/apis/{apiId}/functions",
338	}
339
340	if input == nil {
341		input = &CreateFunctionInput{}
342	}
343
344	output = &CreateFunctionOutput{}
345	req = c.newRequest(op, input, output)
346	return
347}
348
349// CreateFunction API operation for AWS AppSync.
350//
351// Creates a Function object.
352//
353// A function is a reusable entity. Multiple functions can be used to compose
354// the resolver logic.
355//
356// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
357// with awserr.Error's Code and Message methods to get detailed information about
358// the error.
359//
360// See the AWS API reference guide for AWS AppSync's
361// API operation CreateFunction for usage and error information.
362//
363// Returned Error Types:
364//   * ConcurrentModificationException
365//   Another modification is in progress at this time and it must complete before
366//   you can make your change.
367//
368//   * NotFoundException
369//   The resource specified in the request was not found. Check the resource,
370//   and then try again.
371//
372//   * UnauthorizedException
373//   You are not authorized to perform this operation.
374//
375//   * InternalFailureException
376//   An internal AWS AppSync error occurred. Try your request again.
377//
378// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateFunction
379func (c *AppSync) CreateFunction(input *CreateFunctionInput) (*CreateFunctionOutput, error) {
380	req, out := c.CreateFunctionRequest(input)
381	return out, req.Send()
382}
383
384// CreateFunctionWithContext is the same as CreateFunction with the addition of
385// the ability to pass a context and additional request options.
386//
387// See CreateFunction for details on how to use this API operation.
388//
389// The context must be non-nil and will be used for request cancellation. If
390// the context is nil a panic will occur. In the future the SDK may create
391// sub-contexts for http.Requests. See https://golang.org/pkg/context/
392// for more information on using Contexts.
393func (c *AppSync) CreateFunctionWithContext(ctx aws.Context, input *CreateFunctionInput, opts ...request.Option) (*CreateFunctionOutput, error) {
394	req, out := c.CreateFunctionRequest(input)
395	req.SetContext(ctx)
396	req.ApplyOptions(opts...)
397	return out, req.Send()
398}
399
400const opCreateGraphqlApi = "CreateGraphqlApi"
401
402// CreateGraphqlApiRequest generates a "aws/request.Request" representing the
403// client's request for the CreateGraphqlApi operation. The "output" return
404// value will be populated with the request's response once the request completes
405// successfully.
406//
407// Use "Send" method on the returned Request to send the API call to the service.
408// the "output" return value is not valid until after Send returns without error.
409//
410// See CreateGraphqlApi for more information on using the CreateGraphqlApi
411// API call, and error handling.
412//
413// This method is useful when you want to inject custom logic or configuration
414// into the SDK's request lifecycle. Such as custom headers, or retry logic.
415//
416//
417//    // Example sending a request using the CreateGraphqlApiRequest method.
418//    req, resp := client.CreateGraphqlApiRequest(params)
419//
420//    err := req.Send()
421//    if err == nil { // resp is now filled
422//        fmt.Println(resp)
423//    }
424//
425// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateGraphqlApi
426func (c *AppSync) CreateGraphqlApiRequest(input *CreateGraphqlApiInput) (req *request.Request, output *CreateGraphqlApiOutput) {
427	op := &request.Operation{
428		Name:       opCreateGraphqlApi,
429		HTTPMethod: "POST",
430		HTTPPath:   "/v1/apis",
431	}
432
433	if input == nil {
434		input = &CreateGraphqlApiInput{}
435	}
436
437	output = &CreateGraphqlApiOutput{}
438	req = c.newRequest(op, input, output)
439	return
440}
441
442// CreateGraphqlApi API operation for AWS AppSync.
443//
444// Creates a GraphqlApi object.
445//
446// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
447// with awserr.Error's Code and Message methods to get detailed information about
448// the error.
449//
450// See the AWS API reference guide for AWS AppSync's
451// API operation CreateGraphqlApi for usage and error information.
452//
453// Returned Error Types:
454//   * BadRequestException
455//   The request is not well formed. For example, a value is invalid or a required
456//   field is missing. Check the field values, and then try again.
457//
458//   * LimitExceededException
459//   The request exceeded a limit. Try your request again.
460//
461//   * ConcurrentModificationException
462//   Another modification is in progress at this time and it must complete before
463//   you can make your change.
464//
465//   * UnauthorizedException
466//   You are not authorized to perform this operation.
467//
468//   * InternalFailureException
469//   An internal AWS AppSync error occurred. Try your request again.
470//
471//   * ApiLimitExceededException
472//   The GraphQL API exceeded a limit. Try your request again.
473//
474// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateGraphqlApi
475func (c *AppSync) CreateGraphqlApi(input *CreateGraphqlApiInput) (*CreateGraphqlApiOutput, error) {
476	req, out := c.CreateGraphqlApiRequest(input)
477	return out, req.Send()
478}
479
480// CreateGraphqlApiWithContext is the same as CreateGraphqlApi with the addition of
481// the ability to pass a context and additional request options.
482//
483// See CreateGraphqlApi for details on how to use this API operation.
484//
485// The context must be non-nil and will be used for request cancellation. If
486// the context is nil a panic will occur. In the future the SDK may create
487// sub-contexts for http.Requests. See https://golang.org/pkg/context/
488// for more information on using Contexts.
489func (c *AppSync) CreateGraphqlApiWithContext(ctx aws.Context, input *CreateGraphqlApiInput, opts ...request.Option) (*CreateGraphqlApiOutput, error) {
490	req, out := c.CreateGraphqlApiRequest(input)
491	req.SetContext(ctx)
492	req.ApplyOptions(opts...)
493	return out, req.Send()
494}
495
496const opCreateResolver = "CreateResolver"
497
498// CreateResolverRequest generates a "aws/request.Request" representing the
499// client's request for the CreateResolver operation. The "output" return
500// value will be populated with the request's response once the request completes
501// successfully.
502//
503// Use "Send" method on the returned Request to send the API call to the service.
504// the "output" return value is not valid until after Send returns without error.
505//
506// See CreateResolver for more information on using the CreateResolver
507// API call, and error handling.
508//
509// This method is useful when you want to inject custom logic or configuration
510// into the SDK's request lifecycle. Such as custom headers, or retry logic.
511//
512//
513//    // Example sending a request using the CreateResolverRequest method.
514//    req, resp := client.CreateResolverRequest(params)
515//
516//    err := req.Send()
517//    if err == nil { // resp is now filled
518//        fmt.Println(resp)
519//    }
520//
521// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateResolver
522func (c *AppSync) CreateResolverRequest(input *CreateResolverInput) (req *request.Request, output *CreateResolverOutput) {
523	op := &request.Operation{
524		Name:       opCreateResolver,
525		HTTPMethod: "POST",
526		HTTPPath:   "/v1/apis/{apiId}/types/{typeName}/resolvers",
527	}
528
529	if input == nil {
530		input = &CreateResolverInput{}
531	}
532
533	output = &CreateResolverOutput{}
534	req = c.newRequest(op, input, output)
535	return
536}
537
538// CreateResolver API operation for AWS AppSync.
539//
540// Creates a Resolver object.
541//
542// A resolver converts incoming requests into a format that a data source can
543// understand and converts the data source's responses into GraphQL.
544//
545// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
546// with awserr.Error's Code and Message methods to get detailed information about
547// the error.
548//
549// See the AWS API reference guide for AWS AppSync's
550// API operation CreateResolver for usage and error information.
551//
552// Returned Error Types:
553//   * ConcurrentModificationException
554//   Another modification is in progress at this time and it must complete before
555//   you can make your change.
556//
557//   * NotFoundException
558//   The resource specified in the request was not found. Check the resource,
559//   and then try again.
560//
561//   * UnauthorizedException
562//   You are not authorized to perform this operation.
563//
564//   * InternalFailureException
565//   An internal AWS AppSync error occurred. Try your request again.
566//
567// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateResolver
568func (c *AppSync) CreateResolver(input *CreateResolverInput) (*CreateResolverOutput, error) {
569	req, out := c.CreateResolverRequest(input)
570	return out, req.Send()
571}
572
573// CreateResolverWithContext is the same as CreateResolver with the addition of
574// the ability to pass a context and additional request options.
575//
576// See CreateResolver for details on how to use this API operation.
577//
578// The context must be non-nil and will be used for request cancellation. If
579// the context is nil a panic will occur. In the future the SDK may create
580// sub-contexts for http.Requests. See https://golang.org/pkg/context/
581// for more information on using Contexts.
582func (c *AppSync) CreateResolverWithContext(ctx aws.Context, input *CreateResolverInput, opts ...request.Option) (*CreateResolverOutput, error) {
583	req, out := c.CreateResolverRequest(input)
584	req.SetContext(ctx)
585	req.ApplyOptions(opts...)
586	return out, req.Send()
587}
588
589const opCreateType = "CreateType"
590
591// CreateTypeRequest generates a "aws/request.Request" representing the
592// client's request for the CreateType operation. The "output" return
593// value will be populated with the request's response once the request completes
594// successfully.
595//
596// Use "Send" method on the returned Request to send the API call to the service.
597// the "output" return value is not valid until after Send returns without error.
598//
599// See CreateType for more information on using the CreateType
600// API call, and error handling.
601//
602// This method is useful when you want to inject custom logic or configuration
603// into the SDK's request lifecycle. Such as custom headers, or retry logic.
604//
605//
606//    // Example sending a request using the CreateTypeRequest method.
607//    req, resp := client.CreateTypeRequest(params)
608//
609//    err := req.Send()
610//    if err == nil { // resp is now filled
611//        fmt.Println(resp)
612//    }
613//
614// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateType
615func (c *AppSync) CreateTypeRequest(input *CreateTypeInput) (req *request.Request, output *CreateTypeOutput) {
616	op := &request.Operation{
617		Name:       opCreateType,
618		HTTPMethod: "POST",
619		HTTPPath:   "/v1/apis/{apiId}/types",
620	}
621
622	if input == nil {
623		input = &CreateTypeInput{}
624	}
625
626	output = &CreateTypeOutput{}
627	req = c.newRequest(op, input, output)
628	return
629}
630
631// CreateType API operation for AWS AppSync.
632//
633// Creates a Type object.
634//
635// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
636// with awserr.Error's Code and Message methods to get detailed information about
637// the error.
638//
639// See the AWS API reference guide for AWS AppSync's
640// API operation CreateType for usage and error information.
641//
642// Returned Error Types:
643//   * BadRequestException
644//   The request is not well formed. For example, a value is invalid or a required
645//   field is missing. Check the field values, and then try again.
646//
647//   * ConcurrentModificationException
648//   Another modification is in progress at this time and it must complete before
649//   you can make your change.
650//
651//   * NotFoundException
652//   The resource specified in the request was not found. Check the resource,
653//   and then try again.
654//
655//   * UnauthorizedException
656//   You are not authorized to perform this operation.
657//
658//   * InternalFailureException
659//   An internal AWS AppSync error occurred. Try your request again.
660//
661// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/CreateType
662func (c *AppSync) CreateType(input *CreateTypeInput) (*CreateTypeOutput, error) {
663	req, out := c.CreateTypeRequest(input)
664	return out, req.Send()
665}
666
667// CreateTypeWithContext is the same as CreateType with the addition of
668// the ability to pass a context and additional request options.
669//
670// See CreateType for details on how to use this API operation.
671//
672// The context must be non-nil and will be used for request cancellation. If
673// the context is nil a panic will occur. In the future the SDK may create
674// sub-contexts for http.Requests. See https://golang.org/pkg/context/
675// for more information on using Contexts.
676func (c *AppSync) CreateTypeWithContext(ctx aws.Context, input *CreateTypeInput, opts ...request.Option) (*CreateTypeOutput, error) {
677	req, out := c.CreateTypeRequest(input)
678	req.SetContext(ctx)
679	req.ApplyOptions(opts...)
680	return out, req.Send()
681}
682
683const opDeleteApiCache = "DeleteApiCache"
684
685// DeleteApiCacheRequest generates a "aws/request.Request" representing the
686// client's request for the DeleteApiCache operation. The "output" return
687// value will be populated with the request's response once the request completes
688// successfully.
689//
690// Use "Send" method on the returned Request to send the API call to the service.
691// the "output" return value is not valid until after Send returns without error.
692//
693// See DeleteApiCache for more information on using the DeleteApiCache
694// API call, and error handling.
695//
696// This method is useful when you want to inject custom logic or configuration
697// into the SDK's request lifecycle. Such as custom headers, or retry logic.
698//
699//
700//    // Example sending a request using the DeleteApiCacheRequest method.
701//    req, resp := client.DeleteApiCacheRequest(params)
702//
703//    err := req.Send()
704//    if err == nil { // resp is now filled
705//        fmt.Println(resp)
706//    }
707//
708// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteApiCache
709func (c *AppSync) DeleteApiCacheRequest(input *DeleteApiCacheInput) (req *request.Request, output *DeleteApiCacheOutput) {
710	op := &request.Operation{
711		Name:       opDeleteApiCache,
712		HTTPMethod: "DELETE",
713		HTTPPath:   "/v1/apis/{apiId}/ApiCaches",
714	}
715
716	if input == nil {
717		input = &DeleteApiCacheInput{}
718	}
719
720	output = &DeleteApiCacheOutput{}
721	req = c.newRequest(op, input, output)
722	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
723	return
724}
725
726// DeleteApiCache API operation for AWS AppSync.
727//
728// Deletes an ApiCache object.
729//
730// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
731// with awserr.Error's Code and Message methods to get detailed information about
732// the error.
733//
734// See the AWS API reference guide for AWS AppSync's
735// API operation DeleteApiCache for usage and error information.
736//
737// Returned Error Types:
738//   * BadRequestException
739//   The request is not well formed. For example, a value is invalid or a required
740//   field is missing. Check the field values, and then try again.
741//
742//   * ConcurrentModificationException
743//   Another modification is in progress at this time and it must complete before
744//   you can make your change.
745//
746//   * NotFoundException
747//   The resource specified in the request was not found. Check the resource,
748//   and then try again.
749//
750//   * UnauthorizedException
751//   You are not authorized to perform this operation.
752//
753//   * InternalFailureException
754//   An internal AWS AppSync error occurred. Try your request again.
755//
756// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteApiCache
757func (c *AppSync) DeleteApiCache(input *DeleteApiCacheInput) (*DeleteApiCacheOutput, error) {
758	req, out := c.DeleteApiCacheRequest(input)
759	return out, req.Send()
760}
761
762// DeleteApiCacheWithContext is the same as DeleteApiCache with the addition of
763// the ability to pass a context and additional request options.
764//
765// See DeleteApiCache for details on how to use this API operation.
766//
767// The context must be non-nil and will be used for request cancellation. If
768// the context is nil a panic will occur. In the future the SDK may create
769// sub-contexts for http.Requests. See https://golang.org/pkg/context/
770// for more information on using Contexts.
771func (c *AppSync) DeleteApiCacheWithContext(ctx aws.Context, input *DeleteApiCacheInput, opts ...request.Option) (*DeleteApiCacheOutput, error) {
772	req, out := c.DeleteApiCacheRequest(input)
773	req.SetContext(ctx)
774	req.ApplyOptions(opts...)
775	return out, req.Send()
776}
777
778const opDeleteApiKey = "DeleteApiKey"
779
780// DeleteApiKeyRequest generates a "aws/request.Request" representing the
781// client's request for the DeleteApiKey operation. The "output" return
782// value will be populated with the request's response once the request completes
783// successfully.
784//
785// Use "Send" method on the returned Request to send the API call to the service.
786// the "output" return value is not valid until after Send returns without error.
787//
788// See DeleteApiKey for more information on using the DeleteApiKey
789// API call, and error handling.
790//
791// This method is useful when you want to inject custom logic or configuration
792// into the SDK's request lifecycle. Such as custom headers, or retry logic.
793//
794//
795//    // Example sending a request using the DeleteApiKeyRequest method.
796//    req, resp := client.DeleteApiKeyRequest(params)
797//
798//    err := req.Send()
799//    if err == nil { // resp is now filled
800//        fmt.Println(resp)
801//    }
802//
803// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteApiKey
804func (c *AppSync) DeleteApiKeyRequest(input *DeleteApiKeyInput) (req *request.Request, output *DeleteApiKeyOutput) {
805	op := &request.Operation{
806		Name:       opDeleteApiKey,
807		HTTPMethod: "DELETE",
808		HTTPPath:   "/v1/apis/{apiId}/apikeys/{id}",
809	}
810
811	if input == nil {
812		input = &DeleteApiKeyInput{}
813	}
814
815	output = &DeleteApiKeyOutput{}
816	req = c.newRequest(op, input, output)
817	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
818	return
819}
820
821// DeleteApiKey API operation for AWS AppSync.
822//
823// Deletes an API key.
824//
825// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
826// with awserr.Error's Code and Message methods to get detailed information about
827// the error.
828//
829// See the AWS API reference guide for AWS AppSync's
830// API operation DeleteApiKey for usage and error information.
831//
832// Returned Error Types:
833//   * BadRequestException
834//   The request is not well formed. For example, a value is invalid or a required
835//   field is missing. Check the field values, and then try again.
836//
837//   * NotFoundException
838//   The resource specified in the request was not found. Check the resource,
839//   and then try again.
840//
841//   * UnauthorizedException
842//   You are not authorized to perform this operation.
843//
844//   * InternalFailureException
845//   An internal AWS AppSync error occurred. Try your request again.
846//
847// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteApiKey
848func (c *AppSync) DeleteApiKey(input *DeleteApiKeyInput) (*DeleteApiKeyOutput, error) {
849	req, out := c.DeleteApiKeyRequest(input)
850	return out, req.Send()
851}
852
853// DeleteApiKeyWithContext is the same as DeleteApiKey with the addition of
854// the ability to pass a context and additional request options.
855//
856// See DeleteApiKey for details on how to use this API operation.
857//
858// The context must be non-nil and will be used for request cancellation. If
859// the context is nil a panic will occur. In the future the SDK may create
860// sub-contexts for http.Requests. See https://golang.org/pkg/context/
861// for more information on using Contexts.
862func (c *AppSync) DeleteApiKeyWithContext(ctx aws.Context, input *DeleteApiKeyInput, opts ...request.Option) (*DeleteApiKeyOutput, error) {
863	req, out := c.DeleteApiKeyRequest(input)
864	req.SetContext(ctx)
865	req.ApplyOptions(opts...)
866	return out, req.Send()
867}
868
869const opDeleteDataSource = "DeleteDataSource"
870
871// DeleteDataSourceRequest generates a "aws/request.Request" representing the
872// client's request for the DeleteDataSource operation. The "output" return
873// value will be populated with the request's response once the request completes
874// successfully.
875//
876// Use "Send" method on the returned Request to send the API call to the service.
877// the "output" return value is not valid until after Send returns without error.
878//
879// See DeleteDataSource for more information on using the DeleteDataSource
880// API call, and error handling.
881//
882// This method is useful when you want to inject custom logic or configuration
883// into the SDK's request lifecycle. Such as custom headers, or retry logic.
884//
885//
886//    // Example sending a request using the DeleteDataSourceRequest method.
887//    req, resp := client.DeleteDataSourceRequest(params)
888//
889//    err := req.Send()
890//    if err == nil { // resp is now filled
891//        fmt.Println(resp)
892//    }
893//
894// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteDataSource
895func (c *AppSync) DeleteDataSourceRequest(input *DeleteDataSourceInput) (req *request.Request, output *DeleteDataSourceOutput) {
896	op := &request.Operation{
897		Name:       opDeleteDataSource,
898		HTTPMethod: "DELETE",
899		HTTPPath:   "/v1/apis/{apiId}/datasources/{name}",
900	}
901
902	if input == nil {
903		input = &DeleteDataSourceInput{}
904	}
905
906	output = &DeleteDataSourceOutput{}
907	req = c.newRequest(op, input, output)
908	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
909	return
910}
911
912// DeleteDataSource API operation for AWS AppSync.
913//
914// Deletes a DataSource object.
915//
916// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
917// with awserr.Error's Code and Message methods to get detailed information about
918// the error.
919//
920// See the AWS API reference guide for AWS AppSync's
921// API operation DeleteDataSource for usage and error information.
922//
923// Returned Error Types:
924//   * BadRequestException
925//   The request is not well formed. For example, a value is invalid or a required
926//   field is missing. Check the field values, and then try again.
927//
928//   * ConcurrentModificationException
929//   Another modification is in progress at this time and it must complete before
930//   you can make your change.
931//
932//   * NotFoundException
933//   The resource specified in the request was not found. Check the resource,
934//   and then try again.
935//
936//   * UnauthorizedException
937//   You are not authorized to perform this operation.
938//
939//   * InternalFailureException
940//   An internal AWS AppSync error occurred. Try your request again.
941//
942// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteDataSource
943func (c *AppSync) DeleteDataSource(input *DeleteDataSourceInput) (*DeleteDataSourceOutput, error) {
944	req, out := c.DeleteDataSourceRequest(input)
945	return out, req.Send()
946}
947
948// DeleteDataSourceWithContext is the same as DeleteDataSource with the addition of
949// the ability to pass a context and additional request options.
950//
951// See DeleteDataSource for details on how to use this API operation.
952//
953// The context must be non-nil and will be used for request cancellation. If
954// the context is nil a panic will occur. In the future the SDK may create
955// sub-contexts for http.Requests. See https://golang.org/pkg/context/
956// for more information on using Contexts.
957func (c *AppSync) DeleteDataSourceWithContext(ctx aws.Context, input *DeleteDataSourceInput, opts ...request.Option) (*DeleteDataSourceOutput, error) {
958	req, out := c.DeleteDataSourceRequest(input)
959	req.SetContext(ctx)
960	req.ApplyOptions(opts...)
961	return out, req.Send()
962}
963
964const opDeleteFunction = "DeleteFunction"
965
966// DeleteFunctionRequest generates a "aws/request.Request" representing the
967// client's request for the DeleteFunction operation. The "output" return
968// value will be populated with the request's response once the request completes
969// successfully.
970//
971// Use "Send" method on the returned Request to send the API call to the service.
972// the "output" return value is not valid until after Send returns without error.
973//
974// See DeleteFunction for more information on using the DeleteFunction
975// API call, and error handling.
976//
977// This method is useful when you want to inject custom logic or configuration
978// into the SDK's request lifecycle. Such as custom headers, or retry logic.
979//
980//
981//    // Example sending a request using the DeleteFunctionRequest method.
982//    req, resp := client.DeleteFunctionRequest(params)
983//
984//    err := req.Send()
985//    if err == nil { // resp is now filled
986//        fmt.Println(resp)
987//    }
988//
989// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteFunction
990func (c *AppSync) DeleteFunctionRequest(input *DeleteFunctionInput) (req *request.Request, output *DeleteFunctionOutput) {
991	op := &request.Operation{
992		Name:       opDeleteFunction,
993		HTTPMethod: "DELETE",
994		HTTPPath:   "/v1/apis/{apiId}/functions/{functionId}",
995	}
996
997	if input == nil {
998		input = &DeleteFunctionInput{}
999	}
1000
1001	output = &DeleteFunctionOutput{}
1002	req = c.newRequest(op, input, output)
1003	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1004	return
1005}
1006
1007// DeleteFunction API operation for AWS AppSync.
1008//
1009// Deletes a Function.
1010//
1011// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1012// with awserr.Error's Code and Message methods to get detailed information about
1013// the error.
1014//
1015// See the AWS API reference guide for AWS AppSync's
1016// API operation DeleteFunction for usage and error information.
1017//
1018// Returned Error Types:
1019//   * ConcurrentModificationException
1020//   Another modification is in progress at this time and it must complete before
1021//   you can make your change.
1022//
1023//   * NotFoundException
1024//   The resource specified in the request was not found. Check the resource,
1025//   and then try again.
1026//
1027//   * UnauthorizedException
1028//   You are not authorized to perform this operation.
1029//
1030//   * InternalFailureException
1031//   An internal AWS AppSync error occurred. Try your request again.
1032//
1033// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteFunction
1034func (c *AppSync) DeleteFunction(input *DeleteFunctionInput) (*DeleteFunctionOutput, error) {
1035	req, out := c.DeleteFunctionRequest(input)
1036	return out, req.Send()
1037}
1038
1039// DeleteFunctionWithContext is the same as DeleteFunction with the addition of
1040// the ability to pass a context and additional request options.
1041//
1042// See DeleteFunction for details on how to use this API operation.
1043//
1044// The context must be non-nil and will be used for request cancellation. If
1045// the context is nil a panic will occur. In the future the SDK may create
1046// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1047// for more information on using Contexts.
1048func (c *AppSync) DeleteFunctionWithContext(ctx aws.Context, input *DeleteFunctionInput, opts ...request.Option) (*DeleteFunctionOutput, error) {
1049	req, out := c.DeleteFunctionRequest(input)
1050	req.SetContext(ctx)
1051	req.ApplyOptions(opts...)
1052	return out, req.Send()
1053}
1054
1055const opDeleteGraphqlApi = "DeleteGraphqlApi"
1056
1057// DeleteGraphqlApiRequest generates a "aws/request.Request" representing the
1058// client's request for the DeleteGraphqlApi operation. The "output" return
1059// value will be populated with the request's response once the request completes
1060// successfully.
1061//
1062// Use "Send" method on the returned Request to send the API call to the service.
1063// the "output" return value is not valid until after Send returns without error.
1064//
1065// See DeleteGraphqlApi for more information on using the DeleteGraphqlApi
1066// API call, and error handling.
1067//
1068// This method is useful when you want to inject custom logic or configuration
1069// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1070//
1071//
1072//    // Example sending a request using the DeleteGraphqlApiRequest method.
1073//    req, resp := client.DeleteGraphqlApiRequest(params)
1074//
1075//    err := req.Send()
1076//    if err == nil { // resp is now filled
1077//        fmt.Println(resp)
1078//    }
1079//
1080// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteGraphqlApi
1081func (c *AppSync) DeleteGraphqlApiRequest(input *DeleteGraphqlApiInput) (req *request.Request, output *DeleteGraphqlApiOutput) {
1082	op := &request.Operation{
1083		Name:       opDeleteGraphqlApi,
1084		HTTPMethod: "DELETE",
1085		HTTPPath:   "/v1/apis/{apiId}",
1086	}
1087
1088	if input == nil {
1089		input = &DeleteGraphqlApiInput{}
1090	}
1091
1092	output = &DeleteGraphqlApiOutput{}
1093	req = c.newRequest(op, input, output)
1094	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1095	return
1096}
1097
1098// DeleteGraphqlApi API operation for AWS AppSync.
1099//
1100// Deletes a GraphqlApi object.
1101//
1102// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1103// with awserr.Error's Code and Message methods to get detailed information about
1104// the error.
1105//
1106// See the AWS API reference guide for AWS AppSync's
1107// API operation DeleteGraphqlApi for usage and error information.
1108//
1109// Returned Error Types:
1110//   * BadRequestException
1111//   The request is not well formed. For example, a value is invalid or a required
1112//   field is missing. Check the field values, and then try again.
1113//
1114//   * ConcurrentModificationException
1115//   Another modification is in progress at this time and it must complete before
1116//   you can make your change.
1117//
1118//   * NotFoundException
1119//   The resource specified in the request was not found. Check the resource,
1120//   and then try again.
1121//
1122//   * UnauthorizedException
1123//   You are not authorized to perform this operation.
1124//
1125//   * InternalFailureException
1126//   An internal AWS AppSync error occurred. Try your request again.
1127//
1128//   * AccessDeniedException
1129//   You do not have access to perform this operation on this resource.
1130//
1131// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteGraphqlApi
1132func (c *AppSync) DeleteGraphqlApi(input *DeleteGraphqlApiInput) (*DeleteGraphqlApiOutput, error) {
1133	req, out := c.DeleteGraphqlApiRequest(input)
1134	return out, req.Send()
1135}
1136
1137// DeleteGraphqlApiWithContext is the same as DeleteGraphqlApi with the addition of
1138// the ability to pass a context and additional request options.
1139//
1140// See DeleteGraphqlApi for details on how to use this API operation.
1141//
1142// The context must be non-nil and will be used for request cancellation. If
1143// the context is nil a panic will occur. In the future the SDK may create
1144// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1145// for more information on using Contexts.
1146func (c *AppSync) DeleteGraphqlApiWithContext(ctx aws.Context, input *DeleteGraphqlApiInput, opts ...request.Option) (*DeleteGraphqlApiOutput, error) {
1147	req, out := c.DeleteGraphqlApiRequest(input)
1148	req.SetContext(ctx)
1149	req.ApplyOptions(opts...)
1150	return out, req.Send()
1151}
1152
1153const opDeleteResolver = "DeleteResolver"
1154
1155// DeleteResolverRequest generates a "aws/request.Request" representing the
1156// client's request for the DeleteResolver operation. The "output" return
1157// value will be populated with the request's response once the request completes
1158// successfully.
1159//
1160// Use "Send" method on the returned Request to send the API call to the service.
1161// the "output" return value is not valid until after Send returns without error.
1162//
1163// See DeleteResolver for more information on using the DeleteResolver
1164// API call, and error handling.
1165//
1166// This method is useful when you want to inject custom logic or configuration
1167// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1168//
1169//
1170//    // Example sending a request using the DeleteResolverRequest method.
1171//    req, resp := client.DeleteResolverRequest(params)
1172//
1173//    err := req.Send()
1174//    if err == nil { // resp is now filled
1175//        fmt.Println(resp)
1176//    }
1177//
1178// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteResolver
1179func (c *AppSync) DeleteResolverRequest(input *DeleteResolverInput) (req *request.Request, output *DeleteResolverOutput) {
1180	op := &request.Operation{
1181		Name:       opDeleteResolver,
1182		HTTPMethod: "DELETE",
1183		HTTPPath:   "/v1/apis/{apiId}/types/{typeName}/resolvers/{fieldName}",
1184	}
1185
1186	if input == nil {
1187		input = &DeleteResolverInput{}
1188	}
1189
1190	output = &DeleteResolverOutput{}
1191	req = c.newRequest(op, input, output)
1192	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1193	return
1194}
1195
1196// DeleteResolver API operation for AWS AppSync.
1197//
1198// Deletes a Resolver object.
1199//
1200// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1201// with awserr.Error's Code and Message methods to get detailed information about
1202// the error.
1203//
1204// See the AWS API reference guide for AWS AppSync's
1205// API operation DeleteResolver for usage and error information.
1206//
1207// Returned Error Types:
1208//   * ConcurrentModificationException
1209//   Another modification is in progress at this time and it must complete before
1210//   you can make your change.
1211//
1212//   * NotFoundException
1213//   The resource specified in the request was not found. Check the resource,
1214//   and then try again.
1215//
1216//   * UnauthorizedException
1217//   You are not authorized to perform this operation.
1218//
1219//   * InternalFailureException
1220//   An internal AWS AppSync error occurred. Try your request again.
1221//
1222// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteResolver
1223func (c *AppSync) DeleteResolver(input *DeleteResolverInput) (*DeleteResolverOutput, error) {
1224	req, out := c.DeleteResolverRequest(input)
1225	return out, req.Send()
1226}
1227
1228// DeleteResolverWithContext is the same as DeleteResolver with the addition of
1229// the ability to pass a context and additional request options.
1230//
1231// See DeleteResolver for details on how to use this API operation.
1232//
1233// The context must be non-nil and will be used for request cancellation. If
1234// the context is nil a panic will occur. In the future the SDK may create
1235// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1236// for more information on using Contexts.
1237func (c *AppSync) DeleteResolverWithContext(ctx aws.Context, input *DeleteResolverInput, opts ...request.Option) (*DeleteResolverOutput, error) {
1238	req, out := c.DeleteResolverRequest(input)
1239	req.SetContext(ctx)
1240	req.ApplyOptions(opts...)
1241	return out, req.Send()
1242}
1243
1244const opDeleteType = "DeleteType"
1245
1246// DeleteTypeRequest generates a "aws/request.Request" representing the
1247// client's request for the DeleteType operation. The "output" return
1248// value will be populated with the request's response once the request completes
1249// successfully.
1250//
1251// Use "Send" method on the returned Request to send the API call to the service.
1252// the "output" return value is not valid until after Send returns without error.
1253//
1254// See DeleteType for more information on using the DeleteType
1255// API call, and error handling.
1256//
1257// This method is useful when you want to inject custom logic or configuration
1258// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1259//
1260//
1261//    // Example sending a request using the DeleteTypeRequest method.
1262//    req, resp := client.DeleteTypeRequest(params)
1263//
1264//    err := req.Send()
1265//    if err == nil { // resp is now filled
1266//        fmt.Println(resp)
1267//    }
1268//
1269// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteType
1270func (c *AppSync) DeleteTypeRequest(input *DeleteTypeInput) (req *request.Request, output *DeleteTypeOutput) {
1271	op := &request.Operation{
1272		Name:       opDeleteType,
1273		HTTPMethod: "DELETE",
1274		HTTPPath:   "/v1/apis/{apiId}/types/{typeName}",
1275	}
1276
1277	if input == nil {
1278		input = &DeleteTypeInput{}
1279	}
1280
1281	output = &DeleteTypeOutput{}
1282	req = c.newRequest(op, input, output)
1283	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1284	return
1285}
1286
1287// DeleteType API operation for AWS AppSync.
1288//
1289// Deletes a Type object.
1290//
1291// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1292// with awserr.Error's Code and Message methods to get detailed information about
1293// the error.
1294//
1295// See the AWS API reference guide for AWS AppSync's
1296// API operation DeleteType for usage and error information.
1297//
1298// Returned Error Types:
1299//   * BadRequestException
1300//   The request is not well formed. For example, a value is invalid or a required
1301//   field is missing. Check the field values, and then try again.
1302//
1303//   * ConcurrentModificationException
1304//   Another modification is in progress at this time and it must complete before
1305//   you can make your change.
1306//
1307//   * NotFoundException
1308//   The resource specified in the request was not found. Check the resource,
1309//   and then try again.
1310//
1311//   * UnauthorizedException
1312//   You are not authorized to perform this operation.
1313//
1314//   * InternalFailureException
1315//   An internal AWS AppSync error occurred. Try your request again.
1316//
1317// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/DeleteType
1318func (c *AppSync) DeleteType(input *DeleteTypeInput) (*DeleteTypeOutput, error) {
1319	req, out := c.DeleteTypeRequest(input)
1320	return out, req.Send()
1321}
1322
1323// DeleteTypeWithContext is the same as DeleteType with the addition of
1324// the ability to pass a context and additional request options.
1325//
1326// See DeleteType for details on how to use this API operation.
1327//
1328// The context must be non-nil and will be used for request cancellation. If
1329// the context is nil a panic will occur. In the future the SDK may create
1330// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1331// for more information on using Contexts.
1332func (c *AppSync) DeleteTypeWithContext(ctx aws.Context, input *DeleteTypeInput, opts ...request.Option) (*DeleteTypeOutput, error) {
1333	req, out := c.DeleteTypeRequest(input)
1334	req.SetContext(ctx)
1335	req.ApplyOptions(opts...)
1336	return out, req.Send()
1337}
1338
1339const opFlushApiCache = "FlushApiCache"
1340
1341// FlushApiCacheRequest generates a "aws/request.Request" representing the
1342// client's request for the FlushApiCache operation. The "output" return
1343// value will be populated with the request's response once the request completes
1344// successfully.
1345//
1346// Use "Send" method on the returned Request to send the API call to the service.
1347// the "output" return value is not valid until after Send returns without error.
1348//
1349// See FlushApiCache for more information on using the FlushApiCache
1350// API call, and error handling.
1351//
1352// This method is useful when you want to inject custom logic or configuration
1353// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1354//
1355//
1356//    // Example sending a request using the FlushApiCacheRequest method.
1357//    req, resp := client.FlushApiCacheRequest(params)
1358//
1359//    err := req.Send()
1360//    if err == nil { // resp is now filled
1361//        fmt.Println(resp)
1362//    }
1363//
1364// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/FlushApiCache
1365func (c *AppSync) FlushApiCacheRequest(input *FlushApiCacheInput) (req *request.Request, output *FlushApiCacheOutput) {
1366	op := &request.Operation{
1367		Name:       opFlushApiCache,
1368		HTTPMethod: "DELETE",
1369		HTTPPath:   "/v1/apis/{apiId}/FlushCache",
1370	}
1371
1372	if input == nil {
1373		input = &FlushApiCacheInput{}
1374	}
1375
1376	output = &FlushApiCacheOutput{}
1377	req = c.newRequest(op, input, output)
1378	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
1379	return
1380}
1381
1382// FlushApiCache API operation for AWS AppSync.
1383//
1384// Flushes an ApiCache object.
1385//
1386// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1387// with awserr.Error's Code and Message methods to get detailed information about
1388// the error.
1389//
1390// See the AWS API reference guide for AWS AppSync's
1391// API operation FlushApiCache for usage and error information.
1392//
1393// Returned Error Types:
1394//   * BadRequestException
1395//   The request is not well formed. For example, a value is invalid or a required
1396//   field is missing. Check the field values, and then try again.
1397//
1398//   * ConcurrentModificationException
1399//   Another modification is in progress at this time and it must complete before
1400//   you can make your change.
1401//
1402//   * NotFoundException
1403//   The resource specified in the request was not found. Check the resource,
1404//   and then try again.
1405//
1406//   * UnauthorizedException
1407//   You are not authorized to perform this operation.
1408//
1409//   * InternalFailureException
1410//   An internal AWS AppSync error occurred. Try your request again.
1411//
1412// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/FlushApiCache
1413func (c *AppSync) FlushApiCache(input *FlushApiCacheInput) (*FlushApiCacheOutput, error) {
1414	req, out := c.FlushApiCacheRequest(input)
1415	return out, req.Send()
1416}
1417
1418// FlushApiCacheWithContext is the same as FlushApiCache with the addition of
1419// the ability to pass a context and additional request options.
1420//
1421// See FlushApiCache for details on how to use this API operation.
1422//
1423// The context must be non-nil and will be used for request cancellation. If
1424// the context is nil a panic will occur. In the future the SDK may create
1425// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1426// for more information on using Contexts.
1427func (c *AppSync) FlushApiCacheWithContext(ctx aws.Context, input *FlushApiCacheInput, opts ...request.Option) (*FlushApiCacheOutput, error) {
1428	req, out := c.FlushApiCacheRequest(input)
1429	req.SetContext(ctx)
1430	req.ApplyOptions(opts...)
1431	return out, req.Send()
1432}
1433
1434const opGetApiCache = "GetApiCache"
1435
1436// GetApiCacheRequest generates a "aws/request.Request" representing the
1437// client's request for the GetApiCache operation. The "output" return
1438// value will be populated with the request's response once the request completes
1439// successfully.
1440//
1441// Use "Send" method on the returned Request to send the API call to the service.
1442// the "output" return value is not valid until after Send returns without error.
1443//
1444// See GetApiCache for more information on using the GetApiCache
1445// API call, and error handling.
1446//
1447// This method is useful when you want to inject custom logic or configuration
1448// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1449//
1450//
1451//    // Example sending a request using the GetApiCacheRequest method.
1452//    req, resp := client.GetApiCacheRequest(params)
1453//
1454//    err := req.Send()
1455//    if err == nil { // resp is now filled
1456//        fmt.Println(resp)
1457//    }
1458//
1459// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetApiCache
1460func (c *AppSync) GetApiCacheRequest(input *GetApiCacheInput) (req *request.Request, output *GetApiCacheOutput) {
1461	op := &request.Operation{
1462		Name:       opGetApiCache,
1463		HTTPMethod: "GET",
1464		HTTPPath:   "/v1/apis/{apiId}/ApiCaches",
1465	}
1466
1467	if input == nil {
1468		input = &GetApiCacheInput{}
1469	}
1470
1471	output = &GetApiCacheOutput{}
1472	req = c.newRequest(op, input, output)
1473	return
1474}
1475
1476// GetApiCache API operation for AWS AppSync.
1477//
1478// Retrieves an ApiCache object.
1479//
1480// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1481// with awserr.Error's Code and Message methods to get detailed information about
1482// the error.
1483//
1484// See the AWS API reference guide for AWS AppSync's
1485// API operation GetApiCache for usage and error information.
1486//
1487// Returned Error Types:
1488//   * BadRequestException
1489//   The request is not well formed. For example, a value is invalid or a required
1490//   field is missing. Check the field values, and then try again.
1491//
1492//   * ConcurrentModificationException
1493//   Another modification is in progress at this time and it must complete before
1494//   you can make your change.
1495//
1496//   * NotFoundException
1497//   The resource specified in the request was not found. Check the resource,
1498//   and then try again.
1499//
1500//   * UnauthorizedException
1501//   You are not authorized to perform this operation.
1502//
1503//   * InternalFailureException
1504//   An internal AWS AppSync error occurred. Try your request again.
1505//
1506// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetApiCache
1507func (c *AppSync) GetApiCache(input *GetApiCacheInput) (*GetApiCacheOutput, error) {
1508	req, out := c.GetApiCacheRequest(input)
1509	return out, req.Send()
1510}
1511
1512// GetApiCacheWithContext is the same as GetApiCache with the addition of
1513// the ability to pass a context and additional request options.
1514//
1515// See GetApiCache for details on how to use this API operation.
1516//
1517// The context must be non-nil and will be used for request cancellation. If
1518// the context is nil a panic will occur. In the future the SDK may create
1519// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1520// for more information on using Contexts.
1521func (c *AppSync) GetApiCacheWithContext(ctx aws.Context, input *GetApiCacheInput, opts ...request.Option) (*GetApiCacheOutput, error) {
1522	req, out := c.GetApiCacheRequest(input)
1523	req.SetContext(ctx)
1524	req.ApplyOptions(opts...)
1525	return out, req.Send()
1526}
1527
1528const opGetDataSource = "GetDataSource"
1529
1530// GetDataSourceRequest generates a "aws/request.Request" representing the
1531// client's request for the GetDataSource operation. The "output" return
1532// value will be populated with the request's response once the request completes
1533// successfully.
1534//
1535// Use "Send" method on the returned Request to send the API call to the service.
1536// the "output" return value is not valid until after Send returns without error.
1537//
1538// See GetDataSource for more information on using the GetDataSource
1539// API call, and error handling.
1540//
1541// This method is useful when you want to inject custom logic or configuration
1542// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1543//
1544//
1545//    // Example sending a request using the GetDataSourceRequest method.
1546//    req, resp := client.GetDataSourceRequest(params)
1547//
1548//    err := req.Send()
1549//    if err == nil { // resp is now filled
1550//        fmt.Println(resp)
1551//    }
1552//
1553// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetDataSource
1554func (c *AppSync) GetDataSourceRequest(input *GetDataSourceInput) (req *request.Request, output *GetDataSourceOutput) {
1555	op := &request.Operation{
1556		Name:       opGetDataSource,
1557		HTTPMethod: "GET",
1558		HTTPPath:   "/v1/apis/{apiId}/datasources/{name}",
1559	}
1560
1561	if input == nil {
1562		input = &GetDataSourceInput{}
1563	}
1564
1565	output = &GetDataSourceOutput{}
1566	req = c.newRequest(op, input, output)
1567	return
1568}
1569
1570// GetDataSource API operation for AWS AppSync.
1571//
1572// Retrieves a DataSource object.
1573//
1574// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1575// with awserr.Error's Code and Message methods to get detailed information about
1576// the error.
1577//
1578// See the AWS API reference guide for AWS AppSync's
1579// API operation GetDataSource for usage and error information.
1580//
1581// Returned Error Types:
1582//   * BadRequestException
1583//   The request is not well formed. For example, a value is invalid or a required
1584//   field is missing. Check the field values, and then try again.
1585//
1586//   * ConcurrentModificationException
1587//   Another modification is in progress at this time and it must complete before
1588//   you can make your change.
1589//
1590//   * NotFoundException
1591//   The resource specified in the request was not found. Check the resource,
1592//   and then try again.
1593//
1594//   * UnauthorizedException
1595//   You are not authorized to perform this operation.
1596//
1597//   * InternalFailureException
1598//   An internal AWS AppSync error occurred. Try your request again.
1599//
1600// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetDataSource
1601func (c *AppSync) GetDataSource(input *GetDataSourceInput) (*GetDataSourceOutput, error) {
1602	req, out := c.GetDataSourceRequest(input)
1603	return out, req.Send()
1604}
1605
1606// GetDataSourceWithContext is the same as GetDataSource with the addition of
1607// the ability to pass a context and additional request options.
1608//
1609// See GetDataSource for details on how to use this API operation.
1610//
1611// The context must be non-nil and will be used for request cancellation. If
1612// the context is nil a panic will occur. In the future the SDK may create
1613// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1614// for more information on using Contexts.
1615func (c *AppSync) GetDataSourceWithContext(ctx aws.Context, input *GetDataSourceInput, opts ...request.Option) (*GetDataSourceOutput, error) {
1616	req, out := c.GetDataSourceRequest(input)
1617	req.SetContext(ctx)
1618	req.ApplyOptions(opts...)
1619	return out, req.Send()
1620}
1621
1622const opGetFunction = "GetFunction"
1623
1624// GetFunctionRequest generates a "aws/request.Request" representing the
1625// client's request for the GetFunction operation. The "output" return
1626// value will be populated with the request's response once the request completes
1627// successfully.
1628//
1629// Use "Send" method on the returned Request to send the API call to the service.
1630// the "output" return value is not valid until after Send returns without error.
1631//
1632// See GetFunction for more information on using the GetFunction
1633// API call, and error handling.
1634//
1635// This method is useful when you want to inject custom logic or configuration
1636// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1637//
1638//
1639//    // Example sending a request using the GetFunctionRequest method.
1640//    req, resp := client.GetFunctionRequest(params)
1641//
1642//    err := req.Send()
1643//    if err == nil { // resp is now filled
1644//        fmt.Println(resp)
1645//    }
1646//
1647// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetFunction
1648func (c *AppSync) GetFunctionRequest(input *GetFunctionInput) (req *request.Request, output *GetFunctionOutput) {
1649	op := &request.Operation{
1650		Name:       opGetFunction,
1651		HTTPMethod: "GET",
1652		HTTPPath:   "/v1/apis/{apiId}/functions/{functionId}",
1653	}
1654
1655	if input == nil {
1656		input = &GetFunctionInput{}
1657	}
1658
1659	output = &GetFunctionOutput{}
1660	req = c.newRequest(op, input, output)
1661	return
1662}
1663
1664// GetFunction API operation for AWS AppSync.
1665//
1666// Get a Function.
1667//
1668// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1669// with awserr.Error's Code and Message methods to get detailed information about
1670// the error.
1671//
1672// See the AWS API reference guide for AWS AppSync's
1673// API operation GetFunction for usage and error information.
1674//
1675// Returned Error Types:
1676//   * ConcurrentModificationException
1677//   Another modification is in progress at this time and it must complete before
1678//   you can make your change.
1679//
1680//   * NotFoundException
1681//   The resource specified in the request was not found. Check the resource,
1682//   and then try again.
1683//
1684//   * UnauthorizedException
1685//   You are not authorized to perform this operation.
1686//
1687// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetFunction
1688func (c *AppSync) GetFunction(input *GetFunctionInput) (*GetFunctionOutput, error) {
1689	req, out := c.GetFunctionRequest(input)
1690	return out, req.Send()
1691}
1692
1693// GetFunctionWithContext is the same as GetFunction with the addition of
1694// the ability to pass a context and additional request options.
1695//
1696// See GetFunction for details on how to use this API operation.
1697//
1698// The context must be non-nil and will be used for request cancellation. If
1699// the context is nil a panic will occur. In the future the SDK may create
1700// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1701// for more information on using Contexts.
1702func (c *AppSync) GetFunctionWithContext(ctx aws.Context, input *GetFunctionInput, opts ...request.Option) (*GetFunctionOutput, error) {
1703	req, out := c.GetFunctionRequest(input)
1704	req.SetContext(ctx)
1705	req.ApplyOptions(opts...)
1706	return out, req.Send()
1707}
1708
1709const opGetGraphqlApi = "GetGraphqlApi"
1710
1711// GetGraphqlApiRequest generates a "aws/request.Request" representing the
1712// client's request for the GetGraphqlApi operation. The "output" return
1713// value will be populated with the request's response once the request completes
1714// successfully.
1715//
1716// Use "Send" method on the returned Request to send the API call to the service.
1717// the "output" return value is not valid until after Send returns without error.
1718//
1719// See GetGraphqlApi for more information on using the GetGraphqlApi
1720// API call, and error handling.
1721//
1722// This method is useful when you want to inject custom logic or configuration
1723// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1724//
1725//
1726//    // Example sending a request using the GetGraphqlApiRequest method.
1727//    req, resp := client.GetGraphqlApiRequest(params)
1728//
1729//    err := req.Send()
1730//    if err == nil { // resp is now filled
1731//        fmt.Println(resp)
1732//    }
1733//
1734// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetGraphqlApi
1735func (c *AppSync) GetGraphqlApiRequest(input *GetGraphqlApiInput) (req *request.Request, output *GetGraphqlApiOutput) {
1736	op := &request.Operation{
1737		Name:       opGetGraphqlApi,
1738		HTTPMethod: "GET",
1739		HTTPPath:   "/v1/apis/{apiId}",
1740	}
1741
1742	if input == nil {
1743		input = &GetGraphqlApiInput{}
1744	}
1745
1746	output = &GetGraphqlApiOutput{}
1747	req = c.newRequest(op, input, output)
1748	return
1749}
1750
1751// GetGraphqlApi API operation for AWS AppSync.
1752//
1753// Retrieves a GraphqlApi object.
1754//
1755// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1756// with awserr.Error's Code and Message methods to get detailed information about
1757// the error.
1758//
1759// See the AWS API reference guide for AWS AppSync's
1760// API operation GetGraphqlApi for usage and error information.
1761//
1762// Returned Error Types:
1763//   * BadRequestException
1764//   The request is not well formed. For example, a value is invalid or a required
1765//   field is missing. Check the field values, and then try again.
1766//
1767//   * NotFoundException
1768//   The resource specified in the request was not found. Check the resource,
1769//   and then try again.
1770//
1771//   * UnauthorizedException
1772//   You are not authorized to perform this operation.
1773//
1774//   * InternalFailureException
1775//   An internal AWS AppSync error occurred. Try your request again.
1776//
1777//   * AccessDeniedException
1778//   You do not have access to perform this operation on this resource.
1779//
1780// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetGraphqlApi
1781func (c *AppSync) GetGraphqlApi(input *GetGraphqlApiInput) (*GetGraphqlApiOutput, error) {
1782	req, out := c.GetGraphqlApiRequest(input)
1783	return out, req.Send()
1784}
1785
1786// GetGraphqlApiWithContext is the same as GetGraphqlApi with the addition of
1787// the ability to pass a context and additional request options.
1788//
1789// See GetGraphqlApi for details on how to use this API operation.
1790//
1791// The context must be non-nil and will be used for request cancellation. If
1792// the context is nil a panic will occur. In the future the SDK may create
1793// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1794// for more information on using Contexts.
1795func (c *AppSync) GetGraphqlApiWithContext(ctx aws.Context, input *GetGraphqlApiInput, opts ...request.Option) (*GetGraphqlApiOutput, error) {
1796	req, out := c.GetGraphqlApiRequest(input)
1797	req.SetContext(ctx)
1798	req.ApplyOptions(opts...)
1799	return out, req.Send()
1800}
1801
1802const opGetIntrospectionSchema = "GetIntrospectionSchema"
1803
1804// GetIntrospectionSchemaRequest generates a "aws/request.Request" representing the
1805// client's request for the GetIntrospectionSchema operation. The "output" return
1806// value will be populated with the request's response once the request completes
1807// successfully.
1808//
1809// Use "Send" method on the returned Request to send the API call to the service.
1810// the "output" return value is not valid until after Send returns without error.
1811//
1812// See GetIntrospectionSchema for more information on using the GetIntrospectionSchema
1813// API call, and error handling.
1814//
1815// This method is useful when you want to inject custom logic or configuration
1816// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1817//
1818//
1819//    // Example sending a request using the GetIntrospectionSchemaRequest method.
1820//    req, resp := client.GetIntrospectionSchemaRequest(params)
1821//
1822//    err := req.Send()
1823//    if err == nil { // resp is now filled
1824//        fmt.Println(resp)
1825//    }
1826//
1827// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetIntrospectionSchema
1828func (c *AppSync) GetIntrospectionSchemaRequest(input *GetIntrospectionSchemaInput) (req *request.Request, output *GetIntrospectionSchemaOutput) {
1829	op := &request.Operation{
1830		Name:       opGetIntrospectionSchema,
1831		HTTPMethod: "GET",
1832		HTTPPath:   "/v1/apis/{apiId}/schema",
1833	}
1834
1835	if input == nil {
1836		input = &GetIntrospectionSchemaInput{}
1837	}
1838
1839	output = &GetIntrospectionSchemaOutput{}
1840	req = c.newRequest(op, input, output)
1841	return
1842}
1843
1844// GetIntrospectionSchema API operation for AWS AppSync.
1845//
1846// Retrieves the introspection schema for a GraphQL API.
1847//
1848// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1849// with awserr.Error's Code and Message methods to get detailed information about
1850// the error.
1851//
1852// See the AWS API reference guide for AWS AppSync's
1853// API operation GetIntrospectionSchema for usage and error information.
1854//
1855// Returned Error Types:
1856//   * GraphQLSchemaException
1857//   The GraphQL schema is not valid.
1858//
1859//   * NotFoundException
1860//   The resource specified in the request was not found. Check the resource,
1861//   and then try again.
1862//
1863//   * UnauthorizedException
1864//   You are not authorized to perform this operation.
1865//
1866//   * InternalFailureException
1867//   An internal AWS AppSync error occurred. Try your request again.
1868//
1869// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetIntrospectionSchema
1870func (c *AppSync) GetIntrospectionSchema(input *GetIntrospectionSchemaInput) (*GetIntrospectionSchemaOutput, error) {
1871	req, out := c.GetIntrospectionSchemaRequest(input)
1872	return out, req.Send()
1873}
1874
1875// GetIntrospectionSchemaWithContext is the same as GetIntrospectionSchema with the addition of
1876// the ability to pass a context and additional request options.
1877//
1878// See GetIntrospectionSchema for details on how to use this API operation.
1879//
1880// The context must be non-nil and will be used for request cancellation. If
1881// the context is nil a panic will occur. In the future the SDK may create
1882// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1883// for more information on using Contexts.
1884func (c *AppSync) GetIntrospectionSchemaWithContext(ctx aws.Context, input *GetIntrospectionSchemaInput, opts ...request.Option) (*GetIntrospectionSchemaOutput, error) {
1885	req, out := c.GetIntrospectionSchemaRequest(input)
1886	req.SetContext(ctx)
1887	req.ApplyOptions(opts...)
1888	return out, req.Send()
1889}
1890
1891const opGetResolver = "GetResolver"
1892
1893// GetResolverRequest generates a "aws/request.Request" representing the
1894// client's request for the GetResolver operation. The "output" return
1895// value will be populated with the request's response once the request completes
1896// successfully.
1897//
1898// Use "Send" method on the returned Request to send the API call to the service.
1899// the "output" return value is not valid until after Send returns without error.
1900//
1901// See GetResolver for more information on using the GetResolver
1902// API call, and error handling.
1903//
1904// This method is useful when you want to inject custom logic or configuration
1905// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1906//
1907//
1908//    // Example sending a request using the GetResolverRequest method.
1909//    req, resp := client.GetResolverRequest(params)
1910//
1911//    err := req.Send()
1912//    if err == nil { // resp is now filled
1913//        fmt.Println(resp)
1914//    }
1915//
1916// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetResolver
1917func (c *AppSync) GetResolverRequest(input *GetResolverInput) (req *request.Request, output *GetResolverOutput) {
1918	op := &request.Operation{
1919		Name:       opGetResolver,
1920		HTTPMethod: "GET",
1921		HTTPPath:   "/v1/apis/{apiId}/types/{typeName}/resolvers/{fieldName}",
1922	}
1923
1924	if input == nil {
1925		input = &GetResolverInput{}
1926	}
1927
1928	output = &GetResolverOutput{}
1929	req = c.newRequest(op, input, output)
1930	return
1931}
1932
1933// GetResolver API operation for AWS AppSync.
1934//
1935// Retrieves a Resolver object.
1936//
1937// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
1938// with awserr.Error's Code and Message methods to get detailed information about
1939// the error.
1940//
1941// See the AWS API reference guide for AWS AppSync's
1942// API operation GetResolver for usage and error information.
1943//
1944// Returned Error Types:
1945//   * ConcurrentModificationException
1946//   Another modification is in progress at this time and it must complete before
1947//   you can make your change.
1948//
1949//   * NotFoundException
1950//   The resource specified in the request was not found. Check the resource,
1951//   and then try again.
1952//
1953//   * UnauthorizedException
1954//   You are not authorized to perform this operation.
1955//
1956// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetResolver
1957func (c *AppSync) GetResolver(input *GetResolverInput) (*GetResolverOutput, error) {
1958	req, out := c.GetResolverRequest(input)
1959	return out, req.Send()
1960}
1961
1962// GetResolverWithContext is the same as GetResolver with the addition of
1963// the ability to pass a context and additional request options.
1964//
1965// See GetResolver for details on how to use this API operation.
1966//
1967// The context must be non-nil and will be used for request cancellation. If
1968// the context is nil a panic will occur. In the future the SDK may create
1969// sub-contexts for http.Requests. See https://golang.org/pkg/context/
1970// for more information on using Contexts.
1971func (c *AppSync) GetResolverWithContext(ctx aws.Context, input *GetResolverInput, opts ...request.Option) (*GetResolverOutput, error) {
1972	req, out := c.GetResolverRequest(input)
1973	req.SetContext(ctx)
1974	req.ApplyOptions(opts...)
1975	return out, req.Send()
1976}
1977
1978const opGetSchemaCreationStatus = "GetSchemaCreationStatus"
1979
1980// GetSchemaCreationStatusRequest generates a "aws/request.Request" representing the
1981// client's request for the GetSchemaCreationStatus operation. The "output" return
1982// value will be populated with the request's response once the request completes
1983// successfully.
1984//
1985// Use "Send" method on the returned Request to send the API call to the service.
1986// the "output" return value is not valid until after Send returns without error.
1987//
1988// See GetSchemaCreationStatus for more information on using the GetSchemaCreationStatus
1989// API call, and error handling.
1990//
1991// This method is useful when you want to inject custom logic or configuration
1992// into the SDK's request lifecycle. Such as custom headers, or retry logic.
1993//
1994//
1995//    // Example sending a request using the GetSchemaCreationStatusRequest method.
1996//    req, resp := client.GetSchemaCreationStatusRequest(params)
1997//
1998//    err := req.Send()
1999//    if err == nil { // resp is now filled
2000//        fmt.Println(resp)
2001//    }
2002//
2003// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetSchemaCreationStatus
2004func (c *AppSync) GetSchemaCreationStatusRequest(input *GetSchemaCreationStatusInput) (req *request.Request, output *GetSchemaCreationStatusOutput) {
2005	op := &request.Operation{
2006		Name:       opGetSchemaCreationStatus,
2007		HTTPMethod: "GET",
2008		HTTPPath:   "/v1/apis/{apiId}/schemacreation",
2009	}
2010
2011	if input == nil {
2012		input = &GetSchemaCreationStatusInput{}
2013	}
2014
2015	output = &GetSchemaCreationStatusOutput{}
2016	req = c.newRequest(op, input, output)
2017	return
2018}
2019
2020// GetSchemaCreationStatus API operation for AWS AppSync.
2021//
2022// Retrieves the current status of a schema creation operation.
2023//
2024// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2025// with awserr.Error's Code and Message methods to get detailed information about
2026// the error.
2027//
2028// See the AWS API reference guide for AWS AppSync's
2029// API operation GetSchemaCreationStatus for usage and error information.
2030//
2031// Returned Error Types:
2032//   * BadRequestException
2033//   The request is not well formed. For example, a value is invalid or a required
2034//   field is missing. Check the field values, and then try again.
2035//
2036//   * NotFoundException
2037//   The resource specified in the request was not found. Check the resource,
2038//   and then try again.
2039//
2040//   * UnauthorizedException
2041//   You are not authorized to perform this operation.
2042//
2043//   * InternalFailureException
2044//   An internal AWS AppSync error occurred. Try your request again.
2045//
2046// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetSchemaCreationStatus
2047func (c *AppSync) GetSchemaCreationStatus(input *GetSchemaCreationStatusInput) (*GetSchemaCreationStatusOutput, error) {
2048	req, out := c.GetSchemaCreationStatusRequest(input)
2049	return out, req.Send()
2050}
2051
2052// GetSchemaCreationStatusWithContext is the same as GetSchemaCreationStatus with the addition of
2053// the ability to pass a context and additional request options.
2054//
2055// See GetSchemaCreationStatus for details on how to use this API operation.
2056//
2057// The context must be non-nil and will be used for request cancellation. If
2058// the context is nil a panic will occur. In the future the SDK may create
2059// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2060// for more information on using Contexts.
2061func (c *AppSync) GetSchemaCreationStatusWithContext(ctx aws.Context, input *GetSchemaCreationStatusInput, opts ...request.Option) (*GetSchemaCreationStatusOutput, error) {
2062	req, out := c.GetSchemaCreationStatusRequest(input)
2063	req.SetContext(ctx)
2064	req.ApplyOptions(opts...)
2065	return out, req.Send()
2066}
2067
2068const opGetType = "GetType"
2069
2070// GetTypeRequest generates a "aws/request.Request" representing the
2071// client's request for the GetType operation. The "output" return
2072// value will be populated with the request's response once the request completes
2073// successfully.
2074//
2075// Use "Send" method on the returned Request to send the API call to the service.
2076// the "output" return value is not valid until after Send returns without error.
2077//
2078// See GetType for more information on using the GetType
2079// API call, and error handling.
2080//
2081// This method is useful when you want to inject custom logic or configuration
2082// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2083//
2084//
2085//    // Example sending a request using the GetTypeRequest method.
2086//    req, resp := client.GetTypeRequest(params)
2087//
2088//    err := req.Send()
2089//    if err == nil { // resp is now filled
2090//        fmt.Println(resp)
2091//    }
2092//
2093// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetType
2094func (c *AppSync) GetTypeRequest(input *GetTypeInput) (req *request.Request, output *GetTypeOutput) {
2095	op := &request.Operation{
2096		Name:       opGetType,
2097		HTTPMethod: "GET",
2098		HTTPPath:   "/v1/apis/{apiId}/types/{typeName}",
2099	}
2100
2101	if input == nil {
2102		input = &GetTypeInput{}
2103	}
2104
2105	output = &GetTypeOutput{}
2106	req = c.newRequest(op, input, output)
2107	return
2108}
2109
2110// GetType API operation for AWS AppSync.
2111//
2112// Retrieves a Type object.
2113//
2114// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2115// with awserr.Error's Code and Message methods to get detailed information about
2116// the error.
2117//
2118// See the AWS API reference guide for AWS AppSync's
2119// API operation GetType for usage and error information.
2120//
2121// Returned Error Types:
2122//   * BadRequestException
2123//   The request is not well formed. For example, a value is invalid or a required
2124//   field is missing. Check the field values, and then try again.
2125//
2126//   * ConcurrentModificationException
2127//   Another modification is in progress at this time and it must complete before
2128//   you can make your change.
2129//
2130//   * NotFoundException
2131//   The resource specified in the request was not found. Check the resource,
2132//   and then try again.
2133//
2134//   * UnauthorizedException
2135//   You are not authorized to perform this operation.
2136//
2137//   * InternalFailureException
2138//   An internal AWS AppSync error occurred. Try your request again.
2139//
2140// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/GetType
2141func (c *AppSync) GetType(input *GetTypeInput) (*GetTypeOutput, error) {
2142	req, out := c.GetTypeRequest(input)
2143	return out, req.Send()
2144}
2145
2146// GetTypeWithContext is the same as GetType with the addition of
2147// the ability to pass a context and additional request options.
2148//
2149// See GetType for details on how to use this API operation.
2150//
2151// The context must be non-nil and will be used for request cancellation. If
2152// the context is nil a panic will occur. In the future the SDK may create
2153// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2154// for more information on using Contexts.
2155func (c *AppSync) GetTypeWithContext(ctx aws.Context, input *GetTypeInput, opts ...request.Option) (*GetTypeOutput, error) {
2156	req, out := c.GetTypeRequest(input)
2157	req.SetContext(ctx)
2158	req.ApplyOptions(opts...)
2159	return out, req.Send()
2160}
2161
2162const opListApiKeys = "ListApiKeys"
2163
2164// ListApiKeysRequest generates a "aws/request.Request" representing the
2165// client's request for the ListApiKeys operation. The "output" return
2166// value will be populated with the request's response once the request completes
2167// successfully.
2168//
2169// Use "Send" method on the returned Request to send the API call to the service.
2170// the "output" return value is not valid until after Send returns without error.
2171//
2172// See ListApiKeys for more information on using the ListApiKeys
2173// API call, and error handling.
2174//
2175// This method is useful when you want to inject custom logic or configuration
2176// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2177//
2178//
2179//    // Example sending a request using the ListApiKeysRequest method.
2180//    req, resp := client.ListApiKeysRequest(params)
2181//
2182//    err := req.Send()
2183//    if err == nil { // resp is now filled
2184//        fmt.Println(resp)
2185//    }
2186//
2187// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListApiKeys
2188func (c *AppSync) ListApiKeysRequest(input *ListApiKeysInput) (req *request.Request, output *ListApiKeysOutput) {
2189	op := &request.Operation{
2190		Name:       opListApiKeys,
2191		HTTPMethod: "GET",
2192		HTTPPath:   "/v1/apis/{apiId}/apikeys",
2193	}
2194
2195	if input == nil {
2196		input = &ListApiKeysInput{}
2197	}
2198
2199	output = &ListApiKeysOutput{}
2200	req = c.newRequest(op, input, output)
2201	return
2202}
2203
2204// ListApiKeys API operation for AWS AppSync.
2205//
2206// Lists the API keys for a given API.
2207//
2208// API keys are deleted automatically 60 days after they expire. However, they
2209// may still be included in the response until they have actually been deleted.
2210// You can safely call DeleteApiKey to manually delete a key before it's automatically
2211// deleted.
2212//
2213// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2214// with awserr.Error's Code and Message methods to get detailed information about
2215// the error.
2216//
2217// See the AWS API reference guide for AWS AppSync's
2218// API operation ListApiKeys for usage and error information.
2219//
2220// Returned Error Types:
2221//   * BadRequestException
2222//   The request is not well formed. For example, a value is invalid or a required
2223//   field is missing. Check the field values, and then try again.
2224//
2225//   * NotFoundException
2226//   The resource specified in the request was not found. Check the resource,
2227//   and then try again.
2228//
2229//   * UnauthorizedException
2230//   You are not authorized to perform this operation.
2231//
2232//   * InternalFailureException
2233//   An internal AWS AppSync error occurred. Try your request again.
2234//
2235// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListApiKeys
2236func (c *AppSync) ListApiKeys(input *ListApiKeysInput) (*ListApiKeysOutput, error) {
2237	req, out := c.ListApiKeysRequest(input)
2238	return out, req.Send()
2239}
2240
2241// ListApiKeysWithContext is the same as ListApiKeys with the addition of
2242// the ability to pass a context and additional request options.
2243//
2244// See ListApiKeys for details on how to use this API operation.
2245//
2246// The context must be non-nil and will be used for request cancellation. If
2247// the context is nil a panic will occur. In the future the SDK may create
2248// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2249// for more information on using Contexts.
2250func (c *AppSync) ListApiKeysWithContext(ctx aws.Context, input *ListApiKeysInput, opts ...request.Option) (*ListApiKeysOutput, error) {
2251	req, out := c.ListApiKeysRequest(input)
2252	req.SetContext(ctx)
2253	req.ApplyOptions(opts...)
2254	return out, req.Send()
2255}
2256
2257const opListDataSources = "ListDataSources"
2258
2259// ListDataSourcesRequest generates a "aws/request.Request" representing the
2260// client's request for the ListDataSources operation. The "output" return
2261// value will be populated with the request's response once the request completes
2262// successfully.
2263//
2264// Use "Send" method on the returned Request to send the API call to the service.
2265// the "output" return value is not valid until after Send returns without error.
2266//
2267// See ListDataSources for more information on using the ListDataSources
2268// API call, and error handling.
2269//
2270// This method is useful when you want to inject custom logic or configuration
2271// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2272//
2273//
2274//    // Example sending a request using the ListDataSourcesRequest method.
2275//    req, resp := client.ListDataSourcesRequest(params)
2276//
2277//    err := req.Send()
2278//    if err == nil { // resp is now filled
2279//        fmt.Println(resp)
2280//    }
2281//
2282// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListDataSources
2283func (c *AppSync) ListDataSourcesRequest(input *ListDataSourcesInput) (req *request.Request, output *ListDataSourcesOutput) {
2284	op := &request.Operation{
2285		Name:       opListDataSources,
2286		HTTPMethod: "GET",
2287		HTTPPath:   "/v1/apis/{apiId}/datasources",
2288	}
2289
2290	if input == nil {
2291		input = &ListDataSourcesInput{}
2292	}
2293
2294	output = &ListDataSourcesOutput{}
2295	req = c.newRequest(op, input, output)
2296	return
2297}
2298
2299// ListDataSources API operation for AWS AppSync.
2300//
2301// Lists the data sources for a given API.
2302//
2303// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2304// with awserr.Error's Code and Message methods to get detailed information about
2305// the error.
2306//
2307// See the AWS API reference guide for AWS AppSync's
2308// API operation ListDataSources for usage and error information.
2309//
2310// Returned Error Types:
2311//   * BadRequestException
2312//   The request is not well formed. For example, a value is invalid or a required
2313//   field is missing. Check the field values, and then try again.
2314//
2315//   * NotFoundException
2316//   The resource specified in the request was not found. Check the resource,
2317//   and then try again.
2318//
2319//   * UnauthorizedException
2320//   You are not authorized to perform this operation.
2321//
2322//   * InternalFailureException
2323//   An internal AWS AppSync error occurred. Try your request again.
2324//
2325// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListDataSources
2326func (c *AppSync) ListDataSources(input *ListDataSourcesInput) (*ListDataSourcesOutput, error) {
2327	req, out := c.ListDataSourcesRequest(input)
2328	return out, req.Send()
2329}
2330
2331// ListDataSourcesWithContext is the same as ListDataSources with the addition of
2332// the ability to pass a context and additional request options.
2333//
2334// See ListDataSources for details on how to use this API operation.
2335//
2336// The context must be non-nil and will be used for request cancellation. If
2337// the context is nil a panic will occur. In the future the SDK may create
2338// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2339// for more information on using Contexts.
2340func (c *AppSync) ListDataSourcesWithContext(ctx aws.Context, input *ListDataSourcesInput, opts ...request.Option) (*ListDataSourcesOutput, error) {
2341	req, out := c.ListDataSourcesRequest(input)
2342	req.SetContext(ctx)
2343	req.ApplyOptions(opts...)
2344	return out, req.Send()
2345}
2346
2347const opListFunctions = "ListFunctions"
2348
2349// ListFunctionsRequest generates a "aws/request.Request" representing the
2350// client's request for the ListFunctions operation. The "output" return
2351// value will be populated with the request's response once the request completes
2352// successfully.
2353//
2354// Use "Send" method on the returned Request to send the API call to the service.
2355// the "output" return value is not valid until after Send returns without error.
2356//
2357// See ListFunctions for more information on using the ListFunctions
2358// API call, and error handling.
2359//
2360// This method is useful when you want to inject custom logic or configuration
2361// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2362//
2363//
2364//    // Example sending a request using the ListFunctionsRequest method.
2365//    req, resp := client.ListFunctionsRequest(params)
2366//
2367//    err := req.Send()
2368//    if err == nil { // resp is now filled
2369//        fmt.Println(resp)
2370//    }
2371//
2372// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListFunctions
2373func (c *AppSync) ListFunctionsRequest(input *ListFunctionsInput) (req *request.Request, output *ListFunctionsOutput) {
2374	op := &request.Operation{
2375		Name:       opListFunctions,
2376		HTTPMethod: "GET",
2377		HTTPPath:   "/v1/apis/{apiId}/functions",
2378	}
2379
2380	if input == nil {
2381		input = &ListFunctionsInput{}
2382	}
2383
2384	output = &ListFunctionsOutput{}
2385	req = c.newRequest(op, input, output)
2386	return
2387}
2388
2389// ListFunctions API operation for AWS AppSync.
2390//
2391// List multiple functions.
2392//
2393// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2394// with awserr.Error's Code and Message methods to get detailed information about
2395// the error.
2396//
2397// See the AWS API reference guide for AWS AppSync's
2398// API operation ListFunctions for usage and error information.
2399//
2400// Returned Error Types:
2401//   * BadRequestException
2402//   The request is not well formed. For example, a value is invalid or a required
2403//   field is missing. Check the field values, and then try again.
2404//
2405//   * NotFoundException
2406//   The resource specified in the request was not found. Check the resource,
2407//   and then try again.
2408//
2409//   * UnauthorizedException
2410//   You are not authorized to perform this operation.
2411//
2412//   * InternalFailureException
2413//   An internal AWS AppSync error occurred. Try your request again.
2414//
2415// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListFunctions
2416func (c *AppSync) ListFunctions(input *ListFunctionsInput) (*ListFunctionsOutput, error) {
2417	req, out := c.ListFunctionsRequest(input)
2418	return out, req.Send()
2419}
2420
2421// ListFunctionsWithContext is the same as ListFunctions with the addition of
2422// the ability to pass a context and additional request options.
2423//
2424// See ListFunctions for details on how to use this API operation.
2425//
2426// The context must be non-nil and will be used for request cancellation. If
2427// the context is nil a panic will occur. In the future the SDK may create
2428// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2429// for more information on using Contexts.
2430func (c *AppSync) ListFunctionsWithContext(ctx aws.Context, input *ListFunctionsInput, opts ...request.Option) (*ListFunctionsOutput, error) {
2431	req, out := c.ListFunctionsRequest(input)
2432	req.SetContext(ctx)
2433	req.ApplyOptions(opts...)
2434	return out, req.Send()
2435}
2436
2437const opListGraphqlApis = "ListGraphqlApis"
2438
2439// ListGraphqlApisRequest generates a "aws/request.Request" representing the
2440// client's request for the ListGraphqlApis operation. The "output" return
2441// value will be populated with the request's response once the request completes
2442// successfully.
2443//
2444// Use "Send" method on the returned Request to send the API call to the service.
2445// the "output" return value is not valid until after Send returns without error.
2446//
2447// See ListGraphqlApis for more information on using the ListGraphqlApis
2448// API call, and error handling.
2449//
2450// This method is useful when you want to inject custom logic or configuration
2451// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2452//
2453//
2454//    // Example sending a request using the ListGraphqlApisRequest method.
2455//    req, resp := client.ListGraphqlApisRequest(params)
2456//
2457//    err := req.Send()
2458//    if err == nil { // resp is now filled
2459//        fmt.Println(resp)
2460//    }
2461//
2462// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListGraphqlApis
2463func (c *AppSync) ListGraphqlApisRequest(input *ListGraphqlApisInput) (req *request.Request, output *ListGraphqlApisOutput) {
2464	op := &request.Operation{
2465		Name:       opListGraphqlApis,
2466		HTTPMethod: "GET",
2467		HTTPPath:   "/v1/apis",
2468	}
2469
2470	if input == nil {
2471		input = &ListGraphqlApisInput{}
2472	}
2473
2474	output = &ListGraphqlApisOutput{}
2475	req = c.newRequest(op, input, output)
2476	return
2477}
2478
2479// ListGraphqlApis API operation for AWS AppSync.
2480//
2481// Lists your GraphQL APIs.
2482//
2483// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2484// with awserr.Error's Code and Message methods to get detailed information about
2485// the error.
2486//
2487// See the AWS API reference guide for AWS AppSync's
2488// API operation ListGraphqlApis for usage and error information.
2489//
2490// Returned Error Types:
2491//   * BadRequestException
2492//   The request is not well formed. For example, a value is invalid or a required
2493//   field is missing. Check the field values, and then try again.
2494//
2495//   * UnauthorizedException
2496//   You are not authorized to perform this operation.
2497//
2498//   * InternalFailureException
2499//   An internal AWS AppSync error occurred. Try your request again.
2500//
2501// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListGraphqlApis
2502func (c *AppSync) ListGraphqlApis(input *ListGraphqlApisInput) (*ListGraphqlApisOutput, error) {
2503	req, out := c.ListGraphqlApisRequest(input)
2504	return out, req.Send()
2505}
2506
2507// ListGraphqlApisWithContext is the same as ListGraphqlApis with the addition of
2508// the ability to pass a context and additional request options.
2509//
2510// See ListGraphqlApis for details on how to use this API operation.
2511//
2512// The context must be non-nil and will be used for request cancellation. If
2513// the context is nil a panic will occur. In the future the SDK may create
2514// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2515// for more information on using Contexts.
2516func (c *AppSync) ListGraphqlApisWithContext(ctx aws.Context, input *ListGraphqlApisInput, opts ...request.Option) (*ListGraphqlApisOutput, error) {
2517	req, out := c.ListGraphqlApisRequest(input)
2518	req.SetContext(ctx)
2519	req.ApplyOptions(opts...)
2520	return out, req.Send()
2521}
2522
2523const opListResolvers = "ListResolvers"
2524
2525// ListResolversRequest generates a "aws/request.Request" representing the
2526// client's request for the ListResolvers operation. The "output" return
2527// value will be populated with the request's response once the request completes
2528// successfully.
2529//
2530// Use "Send" method on the returned Request to send the API call to the service.
2531// the "output" return value is not valid until after Send returns without error.
2532//
2533// See ListResolvers for more information on using the ListResolvers
2534// API call, and error handling.
2535//
2536// This method is useful when you want to inject custom logic or configuration
2537// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2538//
2539//
2540//    // Example sending a request using the ListResolversRequest method.
2541//    req, resp := client.ListResolversRequest(params)
2542//
2543//    err := req.Send()
2544//    if err == nil { // resp is now filled
2545//        fmt.Println(resp)
2546//    }
2547//
2548// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListResolvers
2549func (c *AppSync) ListResolversRequest(input *ListResolversInput) (req *request.Request, output *ListResolversOutput) {
2550	op := &request.Operation{
2551		Name:       opListResolvers,
2552		HTTPMethod: "GET",
2553		HTTPPath:   "/v1/apis/{apiId}/types/{typeName}/resolvers",
2554	}
2555
2556	if input == nil {
2557		input = &ListResolversInput{}
2558	}
2559
2560	output = &ListResolversOutput{}
2561	req = c.newRequest(op, input, output)
2562	return
2563}
2564
2565// ListResolvers API operation for AWS AppSync.
2566//
2567// Lists the resolvers for a given API and type.
2568//
2569// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2570// with awserr.Error's Code and Message methods to get detailed information about
2571// the error.
2572//
2573// See the AWS API reference guide for AWS AppSync's
2574// API operation ListResolvers for usage and error information.
2575//
2576// Returned Error Types:
2577//   * BadRequestException
2578//   The request is not well formed. For example, a value is invalid or a required
2579//   field is missing. Check the field values, and then try again.
2580//
2581//   * NotFoundException
2582//   The resource specified in the request was not found. Check the resource,
2583//   and then try again.
2584//
2585//   * UnauthorizedException
2586//   You are not authorized to perform this operation.
2587//
2588//   * InternalFailureException
2589//   An internal AWS AppSync error occurred. Try your request again.
2590//
2591// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListResolvers
2592func (c *AppSync) ListResolvers(input *ListResolversInput) (*ListResolversOutput, error) {
2593	req, out := c.ListResolversRequest(input)
2594	return out, req.Send()
2595}
2596
2597// ListResolversWithContext is the same as ListResolvers with the addition of
2598// the ability to pass a context and additional request options.
2599//
2600// See ListResolvers for details on how to use this API operation.
2601//
2602// The context must be non-nil and will be used for request cancellation. If
2603// the context is nil a panic will occur. In the future the SDK may create
2604// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2605// for more information on using Contexts.
2606func (c *AppSync) ListResolversWithContext(ctx aws.Context, input *ListResolversInput, opts ...request.Option) (*ListResolversOutput, error) {
2607	req, out := c.ListResolversRequest(input)
2608	req.SetContext(ctx)
2609	req.ApplyOptions(opts...)
2610	return out, req.Send()
2611}
2612
2613const opListResolversByFunction = "ListResolversByFunction"
2614
2615// ListResolversByFunctionRequest generates a "aws/request.Request" representing the
2616// client's request for the ListResolversByFunction operation. The "output" return
2617// value will be populated with the request's response once the request completes
2618// successfully.
2619//
2620// Use "Send" method on the returned Request to send the API call to the service.
2621// the "output" return value is not valid until after Send returns without error.
2622//
2623// See ListResolversByFunction for more information on using the ListResolversByFunction
2624// API call, and error handling.
2625//
2626// This method is useful when you want to inject custom logic or configuration
2627// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2628//
2629//
2630//    // Example sending a request using the ListResolversByFunctionRequest method.
2631//    req, resp := client.ListResolversByFunctionRequest(params)
2632//
2633//    err := req.Send()
2634//    if err == nil { // resp is now filled
2635//        fmt.Println(resp)
2636//    }
2637//
2638// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListResolversByFunction
2639func (c *AppSync) ListResolversByFunctionRequest(input *ListResolversByFunctionInput) (req *request.Request, output *ListResolversByFunctionOutput) {
2640	op := &request.Operation{
2641		Name:       opListResolversByFunction,
2642		HTTPMethod: "GET",
2643		HTTPPath:   "/v1/apis/{apiId}/functions/{functionId}/resolvers",
2644	}
2645
2646	if input == nil {
2647		input = &ListResolversByFunctionInput{}
2648	}
2649
2650	output = &ListResolversByFunctionOutput{}
2651	req = c.newRequest(op, input, output)
2652	return
2653}
2654
2655// ListResolversByFunction API operation for AWS AppSync.
2656//
2657// List the resolvers that are associated with a specific function.
2658//
2659// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2660// with awserr.Error's Code and Message methods to get detailed information about
2661// the error.
2662//
2663// See the AWS API reference guide for AWS AppSync's
2664// API operation ListResolversByFunction for usage and error information.
2665//
2666// Returned Error Types:
2667//   * BadRequestException
2668//   The request is not well formed. For example, a value is invalid or a required
2669//   field is missing. Check the field values, and then try again.
2670//
2671//   * NotFoundException
2672//   The resource specified in the request was not found. Check the resource,
2673//   and then try again.
2674//
2675//   * UnauthorizedException
2676//   You are not authorized to perform this operation.
2677//
2678//   * InternalFailureException
2679//   An internal AWS AppSync error occurred. Try your request again.
2680//
2681// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListResolversByFunction
2682func (c *AppSync) ListResolversByFunction(input *ListResolversByFunctionInput) (*ListResolversByFunctionOutput, error) {
2683	req, out := c.ListResolversByFunctionRequest(input)
2684	return out, req.Send()
2685}
2686
2687// ListResolversByFunctionWithContext is the same as ListResolversByFunction with the addition of
2688// the ability to pass a context and additional request options.
2689//
2690// See ListResolversByFunction for details on how to use this API operation.
2691//
2692// The context must be non-nil and will be used for request cancellation. If
2693// the context is nil a panic will occur. In the future the SDK may create
2694// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2695// for more information on using Contexts.
2696func (c *AppSync) ListResolversByFunctionWithContext(ctx aws.Context, input *ListResolversByFunctionInput, opts ...request.Option) (*ListResolversByFunctionOutput, error) {
2697	req, out := c.ListResolversByFunctionRequest(input)
2698	req.SetContext(ctx)
2699	req.ApplyOptions(opts...)
2700	return out, req.Send()
2701}
2702
2703const opListTagsForResource = "ListTagsForResource"
2704
2705// ListTagsForResourceRequest generates a "aws/request.Request" representing the
2706// client's request for the ListTagsForResource operation. The "output" return
2707// value will be populated with the request's response once the request completes
2708// successfully.
2709//
2710// Use "Send" method on the returned Request to send the API call to the service.
2711// the "output" return value is not valid until after Send returns without error.
2712//
2713// See ListTagsForResource for more information on using the ListTagsForResource
2714// API call, and error handling.
2715//
2716// This method is useful when you want to inject custom logic or configuration
2717// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2718//
2719//
2720//    // Example sending a request using the ListTagsForResourceRequest method.
2721//    req, resp := client.ListTagsForResourceRequest(params)
2722//
2723//    err := req.Send()
2724//    if err == nil { // resp is now filled
2725//        fmt.Println(resp)
2726//    }
2727//
2728// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListTagsForResource
2729func (c *AppSync) ListTagsForResourceRequest(input *ListTagsForResourceInput) (req *request.Request, output *ListTagsForResourceOutput) {
2730	op := &request.Operation{
2731		Name:       opListTagsForResource,
2732		HTTPMethod: "GET",
2733		HTTPPath:   "/v1/tags/{resourceArn}",
2734	}
2735
2736	if input == nil {
2737		input = &ListTagsForResourceInput{}
2738	}
2739
2740	output = &ListTagsForResourceOutput{}
2741	req = c.newRequest(op, input, output)
2742	return
2743}
2744
2745// ListTagsForResource API operation for AWS AppSync.
2746//
2747// Lists the tags for a resource.
2748//
2749// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2750// with awserr.Error's Code and Message methods to get detailed information about
2751// the error.
2752//
2753// See the AWS API reference guide for AWS AppSync's
2754// API operation ListTagsForResource for usage and error information.
2755//
2756// Returned Error Types:
2757//   * BadRequestException
2758//   The request is not well formed. For example, a value is invalid or a required
2759//   field is missing. Check the field values, and then try again.
2760//
2761//   * NotFoundException
2762//   The resource specified in the request was not found. Check the resource,
2763//   and then try again.
2764//
2765//   * LimitExceededException
2766//   The request exceeded a limit. Try your request again.
2767//
2768//   * UnauthorizedException
2769//   You are not authorized to perform this operation.
2770//
2771//   * InternalFailureException
2772//   An internal AWS AppSync error occurred. Try your request again.
2773//
2774//   * AccessDeniedException
2775//   You do not have access to perform this operation on this resource.
2776//
2777// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListTagsForResource
2778func (c *AppSync) ListTagsForResource(input *ListTagsForResourceInput) (*ListTagsForResourceOutput, error) {
2779	req, out := c.ListTagsForResourceRequest(input)
2780	return out, req.Send()
2781}
2782
2783// ListTagsForResourceWithContext is the same as ListTagsForResource with the addition of
2784// the ability to pass a context and additional request options.
2785//
2786// See ListTagsForResource for details on how to use this API operation.
2787//
2788// The context must be non-nil and will be used for request cancellation. If
2789// the context is nil a panic will occur. In the future the SDK may create
2790// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2791// for more information on using Contexts.
2792func (c *AppSync) ListTagsForResourceWithContext(ctx aws.Context, input *ListTagsForResourceInput, opts ...request.Option) (*ListTagsForResourceOutput, error) {
2793	req, out := c.ListTagsForResourceRequest(input)
2794	req.SetContext(ctx)
2795	req.ApplyOptions(opts...)
2796	return out, req.Send()
2797}
2798
2799const opListTypes = "ListTypes"
2800
2801// ListTypesRequest generates a "aws/request.Request" representing the
2802// client's request for the ListTypes operation. The "output" return
2803// value will be populated with the request's response once the request completes
2804// successfully.
2805//
2806// Use "Send" method on the returned Request to send the API call to the service.
2807// the "output" return value is not valid until after Send returns without error.
2808//
2809// See ListTypes for more information on using the ListTypes
2810// API call, and error handling.
2811//
2812// This method is useful when you want to inject custom logic or configuration
2813// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2814//
2815//
2816//    // Example sending a request using the ListTypesRequest method.
2817//    req, resp := client.ListTypesRequest(params)
2818//
2819//    err := req.Send()
2820//    if err == nil { // resp is now filled
2821//        fmt.Println(resp)
2822//    }
2823//
2824// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListTypes
2825func (c *AppSync) ListTypesRequest(input *ListTypesInput) (req *request.Request, output *ListTypesOutput) {
2826	op := &request.Operation{
2827		Name:       opListTypes,
2828		HTTPMethod: "GET",
2829		HTTPPath:   "/v1/apis/{apiId}/types",
2830	}
2831
2832	if input == nil {
2833		input = &ListTypesInput{}
2834	}
2835
2836	output = &ListTypesOutput{}
2837	req = c.newRequest(op, input, output)
2838	return
2839}
2840
2841// ListTypes API operation for AWS AppSync.
2842//
2843// Lists the types for a given API.
2844//
2845// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2846// with awserr.Error's Code and Message methods to get detailed information about
2847// the error.
2848//
2849// See the AWS API reference guide for AWS AppSync's
2850// API operation ListTypes for usage and error information.
2851//
2852// Returned Error Types:
2853//   * BadRequestException
2854//   The request is not well formed. For example, a value is invalid or a required
2855//   field is missing. Check the field values, and then try again.
2856//
2857//   * ConcurrentModificationException
2858//   Another modification is in progress at this time and it must complete before
2859//   you can make your change.
2860//
2861//   * NotFoundException
2862//   The resource specified in the request was not found. Check the resource,
2863//   and then try again.
2864//
2865//   * UnauthorizedException
2866//   You are not authorized to perform this operation.
2867//
2868//   * InternalFailureException
2869//   An internal AWS AppSync error occurred. Try your request again.
2870//
2871// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/ListTypes
2872func (c *AppSync) ListTypes(input *ListTypesInput) (*ListTypesOutput, error) {
2873	req, out := c.ListTypesRequest(input)
2874	return out, req.Send()
2875}
2876
2877// ListTypesWithContext is the same as ListTypes with the addition of
2878// the ability to pass a context and additional request options.
2879//
2880// See ListTypes for details on how to use this API operation.
2881//
2882// The context must be non-nil and will be used for request cancellation. If
2883// the context is nil a panic will occur. In the future the SDK may create
2884// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2885// for more information on using Contexts.
2886func (c *AppSync) ListTypesWithContext(ctx aws.Context, input *ListTypesInput, opts ...request.Option) (*ListTypesOutput, error) {
2887	req, out := c.ListTypesRequest(input)
2888	req.SetContext(ctx)
2889	req.ApplyOptions(opts...)
2890	return out, req.Send()
2891}
2892
2893const opStartSchemaCreation = "StartSchemaCreation"
2894
2895// StartSchemaCreationRequest generates a "aws/request.Request" representing the
2896// client's request for the StartSchemaCreation operation. The "output" return
2897// value will be populated with the request's response once the request completes
2898// successfully.
2899//
2900// Use "Send" method on the returned Request to send the API call to the service.
2901// the "output" return value is not valid until after Send returns without error.
2902//
2903// See StartSchemaCreation for more information on using the StartSchemaCreation
2904// API call, and error handling.
2905//
2906// This method is useful when you want to inject custom logic or configuration
2907// into the SDK's request lifecycle. Such as custom headers, or retry logic.
2908//
2909//
2910//    // Example sending a request using the StartSchemaCreationRequest method.
2911//    req, resp := client.StartSchemaCreationRequest(params)
2912//
2913//    err := req.Send()
2914//    if err == nil { // resp is now filled
2915//        fmt.Println(resp)
2916//    }
2917//
2918// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/StartSchemaCreation
2919func (c *AppSync) StartSchemaCreationRequest(input *StartSchemaCreationInput) (req *request.Request, output *StartSchemaCreationOutput) {
2920	op := &request.Operation{
2921		Name:       opStartSchemaCreation,
2922		HTTPMethod: "POST",
2923		HTTPPath:   "/v1/apis/{apiId}/schemacreation",
2924	}
2925
2926	if input == nil {
2927		input = &StartSchemaCreationInput{}
2928	}
2929
2930	output = &StartSchemaCreationOutput{}
2931	req = c.newRequest(op, input, output)
2932	return
2933}
2934
2935// StartSchemaCreation API operation for AWS AppSync.
2936//
2937// Adds a new schema to your GraphQL API.
2938//
2939// This operation is asynchronous. Use to determine when it has completed.
2940//
2941// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
2942// with awserr.Error's Code and Message methods to get detailed information about
2943// the error.
2944//
2945// See the AWS API reference guide for AWS AppSync's
2946// API operation StartSchemaCreation for usage and error information.
2947//
2948// Returned Error Types:
2949//   * BadRequestException
2950//   The request is not well formed. For example, a value is invalid or a required
2951//   field is missing. Check the field values, and then try again.
2952//
2953//   * ConcurrentModificationException
2954//   Another modification is in progress at this time and it must complete before
2955//   you can make your change.
2956//
2957//   * NotFoundException
2958//   The resource specified in the request was not found. Check the resource,
2959//   and then try again.
2960//
2961//   * UnauthorizedException
2962//   You are not authorized to perform this operation.
2963//
2964//   * InternalFailureException
2965//   An internal AWS AppSync error occurred. Try your request again.
2966//
2967// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/StartSchemaCreation
2968func (c *AppSync) StartSchemaCreation(input *StartSchemaCreationInput) (*StartSchemaCreationOutput, error) {
2969	req, out := c.StartSchemaCreationRequest(input)
2970	return out, req.Send()
2971}
2972
2973// StartSchemaCreationWithContext is the same as StartSchemaCreation with the addition of
2974// the ability to pass a context and additional request options.
2975//
2976// See StartSchemaCreation for details on how to use this API operation.
2977//
2978// The context must be non-nil and will be used for request cancellation. If
2979// the context is nil a panic will occur. In the future the SDK may create
2980// sub-contexts for http.Requests. See https://golang.org/pkg/context/
2981// for more information on using Contexts.
2982func (c *AppSync) StartSchemaCreationWithContext(ctx aws.Context, input *StartSchemaCreationInput, opts ...request.Option) (*StartSchemaCreationOutput, error) {
2983	req, out := c.StartSchemaCreationRequest(input)
2984	req.SetContext(ctx)
2985	req.ApplyOptions(opts...)
2986	return out, req.Send()
2987}
2988
2989const opTagResource = "TagResource"
2990
2991// TagResourceRequest generates a "aws/request.Request" representing the
2992// client's request for the TagResource operation. The "output" return
2993// value will be populated with the request's response once the request completes
2994// successfully.
2995//
2996// Use "Send" method on the returned Request to send the API call to the service.
2997// the "output" return value is not valid until after Send returns without error.
2998//
2999// See TagResource for more information on using the TagResource
3000// API call, and error handling.
3001//
3002// This method is useful when you want to inject custom logic or configuration
3003// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3004//
3005//
3006//    // Example sending a request using the TagResourceRequest method.
3007//    req, resp := client.TagResourceRequest(params)
3008//
3009//    err := req.Send()
3010//    if err == nil { // resp is now filled
3011//        fmt.Println(resp)
3012//    }
3013//
3014// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/TagResource
3015func (c *AppSync) TagResourceRequest(input *TagResourceInput) (req *request.Request, output *TagResourceOutput) {
3016	op := &request.Operation{
3017		Name:       opTagResource,
3018		HTTPMethod: "POST",
3019		HTTPPath:   "/v1/tags/{resourceArn}",
3020	}
3021
3022	if input == nil {
3023		input = &TagResourceInput{}
3024	}
3025
3026	output = &TagResourceOutput{}
3027	req = c.newRequest(op, input, output)
3028	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3029	return
3030}
3031
3032// TagResource API operation for AWS AppSync.
3033//
3034// Tags a resource with user-supplied tags.
3035//
3036// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3037// with awserr.Error's Code and Message methods to get detailed information about
3038// the error.
3039//
3040// See the AWS API reference guide for AWS AppSync's
3041// API operation TagResource for usage and error information.
3042//
3043// Returned Error Types:
3044//   * BadRequestException
3045//   The request is not well formed. For example, a value is invalid or a required
3046//   field is missing. Check the field values, and then try again.
3047//
3048//   * NotFoundException
3049//   The resource specified in the request was not found. Check the resource,
3050//   and then try again.
3051//
3052//   * LimitExceededException
3053//   The request exceeded a limit. Try your request again.
3054//
3055//   * UnauthorizedException
3056//   You are not authorized to perform this operation.
3057//
3058//   * InternalFailureException
3059//   An internal AWS AppSync error occurred. Try your request again.
3060//
3061//   * AccessDeniedException
3062//   You do not have access to perform this operation on this resource.
3063//
3064// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/TagResource
3065func (c *AppSync) TagResource(input *TagResourceInput) (*TagResourceOutput, error) {
3066	req, out := c.TagResourceRequest(input)
3067	return out, req.Send()
3068}
3069
3070// TagResourceWithContext is the same as TagResource with the addition of
3071// the ability to pass a context and additional request options.
3072//
3073// See TagResource for details on how to use this API operation.
3074//
3075// The context must be non-nil and will be used for request cancellation. If
3076// the context is nil a panic will occur. In the future the SDK may create
3077// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3078// for more information on using Contexts.
3079func (c *AppSync) TagResourceWithContext(ctx aws.Context, input *TagResourceInput, opts ...request.Option) (*TagResourceOutput, error) {
3080	req, out := c.TagResourceRequest(input)
3081	req.SetContext(ctx)
3082	req.ApplyOptions(opts...)
3083	return out, req.Send()
3084}
3085
3086const opUntagResource = "UntagResource"
3087
3088// UntagResourceRequest generates a "aws/request.Request" representing the
3089// client's request for the UntagResource operation. The "output" return
3090// value will be populated with the request's response once the request completes
3091// successfully.
3092//
3093// Use "Send" method on the returned Request to send the API call to the service.
3094// the "output" return value is not valid until after Send returns without error.
3095//
3096// See UntagResource for more information on using the UntagResource
3097// API call, and error handling.
3098//
3099// This method is useful when you want to inject custom logic or configuration
3100// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3101//
3102//
3103//    // Example sending a request using the UntagResourceRequest method.
3104//    req, resp := client.UntagResourceRequest(params)
3105//
3106//    err := req.Send()
3107//    if err == nil { // resp is now filled
3108//        fmt.Println(resp)
3109//    }
3110//
3111// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UntagResource
3112func (c *AppSync) UntagResourceRequest(input *UntagResourceInput) (req *request.Request, output *UntagResourceOutput) {
3113	op := &request.Operation{
3114		Name:       opUntagResource,
3115		HTTPMethod: "DELETE",
3116		HTTPPath:   "/v1/tags/{resourceArn}",
3117	}
3118
3119	if input == nil {
3120		input = &UntagResourceInput{}
3121	}
3122
3123	output = &UntagResourceOutput{}
3124	req = c.newRequest(op, input, output)
3125	req.Handlers.Unmarshal.Swap(restjson.UnmarshalHandler.Name, protocol.UnmarshalDiscardBodyHandler)
3126	return
3127}
3128
3129// UntagResource API operation for AWS AppSync.
3130//
3131// Untags a resource.
3132//
3133// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3134// with awserr.Error's Code and Message methods to get detailed information about
3135// the error.
3136//
3137// See the AWS API reference guide for AWS AppSync's
3138// API operation UntagResource for usage and error information.
3139//
3140// Returned Error Types:
3141//   * BadRequestException
3142//   The request is not well formed. For example, a value is invalid or a required
3143//   field is missing. Check the field values, and then try again.
3144//
3145//   * NotFoundException
3146//   The resource specified in the request was not found. Check the resource,
3147//   and then try again.
3148//
3149//   * LimitExceededException
3150//   The request exceeded a limit. Try your request again.
3151//
3152//   * UnauthorizedException
3153//   You are not authorized to perform this operation.
3154//
3155//   * InternalFailureException
3156//   An internal AWS AppSync error occurred. Try your request again.
3157//
3158//   * AccessDeniedException
3159//   You do not have access to perform this operation on this resource.
3160//
3161// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UntagResource
3162func (c *AppSync) UntagResource(input *UntagResourceInput) (*UntagResourceOutput, error) {
3163	req, out := c.UntagResourceRequest(input)
3164	return out, req.Send()
3165}
3166
3167// UntagResourceWithContext is the same as UntagResource with the addition of
3168// the ability to pass a context and additional request options.
3169//
3170// See UntagResource for details on how to use this API operation.
3171//
3172// The context must be non-nil and will be used for request cancellation. If
3173// the context is nil a panic will occur. In the future the SDK may create
3174// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3175// for more information on using Contexts.
3176func (c *AppSync) UntagResourceWithContext(ctx aws.Context, input *UntagResourceInput, opts ...request.Option) (*UntagResourceOutput, error) {
3177	req, out := c.UntagResourceRequest(input)
3178	req.SetContext(ctx)
3179	req.ApplyOptions(opts...)
3180	return out, req.Send()
3181}
3182
3183const opUpdateApiCache = "UpdateApiCache"
3184
3185// UpdateApiCacheRequest generates a "aws/request.Request" representing the
3186// client's request for the UpdateApiCache operation. The "output" return
3187// value will be populated with the request's response once the request completes
3188// successfully.
3189//
3190// Use "Send" method on the returned Request to send the API call to the service.
3191// the "output" return value is not valid until after Send returns without error.
3192//
3193// See UpdateApiCache for more information on using the UpdateApiCache
3194// API call, and error handling.
3195//
3196// This method is useful when you want to inject custom logic or configuration
3197// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3198//
3199//
3200//    // Example sending a request using the UpdateApiCacheRequest method.
3201//    req, resp := client.UpdateApiCacheRequest(params)
3202//
3203//    err := req.Send()
3204//    if err == nil { // resp is now filled
3205//        fmt.Println(resp)
3206//    }
3207//
3208// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateApiCache
3209func (c *AppSync) UpdateApiCacheRequest(input *UpdateApiCacheInput) (req *request.Request, output *UpdateApiCacheOutput) {
3210	op := &request.Operation{
3211		Name:       opUpdateApiCache,
3212		HTTPMethod: "POST",
3213		HTTPPath:   "/v1/apis/{apiId}/ApiCaches/update",
3214	}
3215
3216	if input == nil {
3217		input = &UpdateApiCacheInput{}
3218	}
3219
3220	output = &UpdateApiCacheOutput{}
3221	req = c.newRequest(op, input, output)
3222	return
3223}
3224
3225// UpdateApiCache API operation for AWS AppSync.
3226//
3227// Updates the cache for the GraphQL API.
3228//
3229// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3230// with awserr.Error's Code and Message methods to get detailed information about
3231// the error.
3232//
3233// See the AWS API reference guide for AWS AppSync's
3234// API operation UpdateApiCache for usage and error information.
3235//
3236// Returned Error Types:
3237//   * BadRequestException
3238//   The request is not well formed. For example, a value is invalid or a required
3239//   field is missing. Check the field values, and then try again.
3240//
3241//   * ConcurrentModificationException
3242//   Another modification is in progress at this time and it must complete before
3243//   you can make your change.
3244//
3245//   * NotFoundException
3246//   The resource specified in the request was not found. Check the resource,
3247//   and then try again.
3248//
3249//   * UnauthorizedException
3250//   You are not authorized to perform this operation.
3251//
3252//   * InternalFailureException
3253//   An internal AWS AppSync error occurred. Try your request again.
3254//
3255// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateApiCache
3256func (c *AppSync) UpdateApiCache(input *UpdateApiCacheInput) (*UpdateApiCacheOutput, error) {
3257	req, out := c.UpdateApiCacheRequest(input)
3258	return out, req.Send()
3259}
3260
3261// UpdateApiCacheWithContext is the same as UpdateApiCache with the addition of
3262// the ability to pass a context and additional request options.
3263//
3264// See UpdateApiCache for details on how to use this API operation.
3265//
3266// The context must be non-nil and will be used for request cancellation. If
3267// the context is nil a panic will occur. In the future the SDK may create
3268// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3269// for more information on using Contexts.
3270func (c *AppSync) UpdateApiCacheWithContext(ctx aws.Context, input *UpdateApiCacheInput, opts ...request.Option) (*UpdateApiCacheOutput, error) {
3271	req, out := c.UpdateApiCacheRequest(input)
3272	req.SetContext(ctx)
3273	req.ApplyOptions(opts...)
3274	return out, req.Send()
3275}
3276
3277const opUpdateApiKey = "UpdateApiKey"
3278
3279// UpdateApiKeyRequest generates a "aws/request.Request" representing the
3280// client's request for the UpdateApiKey operation. The "output" return
3281// value will be populated with the request's response once the request completes
3282// successfully.
3283//
3284// Use "Send" method on the returned Request to send the API call to the service.
3285// the "output" return value is not valid until after Send returns without error.
3286//
3287// See UpdateApiKey for more information on using the UpdateApiKey
3288// API call, and error handling.
3289//
3290// This method is useful when you want to inject custom logic or configuration
3291// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3292//
3293//
3294//    // Example sending a request using the UpdateApiKeyRequest method.
3295//    req, resp := client.UpdateApiKeyRequest(params)
3296//
3297//    err := req.Send()
3298//    if err == nil { // resp is now filled
3299//        fmt.Println(resp)
3300//    }
3301//
3302// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateApiKey
3303func (c *AppSync) UpdateApiKeyRequest(input *UpdateApiKeyInput) (req *request.Request, output *UpdateApiKeyOutput) {
3304	op := &request.Operation{
3305		Name:       opUpdateApiKey,
3306		HTTPMethod: "POST",
3307		HTTPPath:   "/v1/apis/{apiId}/apikeys/{id}",
3308	}
3309
3310	if input == nil {
3311		input = &UpdateApiKeyInput{}
3312	}
3313
3314	output = &UpdateApiKeyOutput{}
3315	req = c.newRequest(op, input, output)
3316	return
3317}
3318
3319// UpdateApiKey API operation for AWS AppSync.
3320//
3321// Updates an API key. The key can be updated while it is not deleted.
3322//
3323// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3324// with awserr.Error's Code and Message methods to get detailed information about
3325// the error.
3326//
3327// See the AWS API reference guide for AWS AppSync's
3328// API operation UpdateApiKey for usage and error information.
3329//
3330// Returned Error Types:
3331//   * BadRequestException
3332//   The request is not well formed. For example, a value is invalid or a required
3333//   field is missing. Check the field values, and then try again.
3334//
3335//   * NotFoundException
3336//   The resource specified in the request was not found. Check the resource,
3337//   and then try again.
3338//
3339//   * UnauthorizedException
3340//   You are not authorized to perform this operation.
3341//
3342//   * LimitExceededException
3343//   The request exceeded a limit. Try your request again.
3344//
3345//   * InternalFailureException
3346//   An internal AWS AppSync error occurred. Try your request again.
3347//
3348//   * ApiKeyValidityOutOfBoundsException
3349//   The API key expiration must be set to a value between 1 and 365 days from
3350//   creation (for CreateApiKey) or from update (for UpdateApiKey).
3351//
3352// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateApiKey
3353func (c *AppSync) UpdateApiKey(input *UpdateApiKeyInput) (*UpdateApiKeyOutput, error) {
3354	req, out := c.UpdateApiKeyRequest(input)
3355	return out, req.Send()
3356}
3357
3358// UpdateApiKeyWithContext is the same as UpdateApiKey with the addition of
3359// the ability to pass a context and additional request options.
3360//
3361// See UpdateApiKey for details on how to use this API operation.
3362//
3363// The context must be non-nil and will be used for request cancellation. If
3364// the context is nil a panic will occur. In the future the SDK may create
3365// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3366// for more information on using Contexts.
3367func (c *AppSync) UpdateApiKeyWithContext(ctx aws.Context, input *UpdateApiKeyInput, opts ...request.Option) (*UpdateApiKeyOutput, error) {
3368	req, out := c.UpdateApiKeyRequest(input)
3369	req.SetContext(ctx)
3370	req.ApplyOptions(opts...)
3371	return out, req.Send()
3372}
3373
3374const opUpdateDataSource = "UpdateDataSource"
3375
3376// UpdateDataSourceRequest generates a "aws/request.Request" representing the
3377// client's request for the UpdateDataSource operation. The "output" return
3378// value will be populated with the request's response once the request completes
3379// successfully.
3380//
3381// Use "Send" method on the returned Request to send the API call to the service.
3382// the "output" return value is not valid until after Send returns without error.
3383//
3384// See UpdateDataSource for more information on using the UpdateDataSource
3385// API call, and error handling.
3386//
3387// This method is useful when you want to inject custom logic or configuration
3388// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3389//
3390//
3391//    // Example sending a request using the UpdateDataSourceRequest method.
3392//    req, resp := client.UpdateDataSourceRequest(params)
3393//
3394//    err := req.Send()
3395//    if err == nil { // resp is now filled
3396//        fmt.Println(resp)
3397//    }
3398//
3399// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateDataSource
3400func (c *AppSync) UpdateDataSourceRequest(input *UpdateDataSourceInput) (req *request.Request, output *UpdateDataSourceOutput) {
3401	op := &request.Operation{
3402		Name:       opUpdateDataSource,
3403		HTTPMethod: "POST",
3404		HTTPPath:   "/v1/apis/{apiId}/datasources/{name}",
3405	}
3406
3407	if input == nil {
3408		input = &UpdateDataSourceInput{}
3409	}
3410
3411	output = &UpdateDataSourceOutput{}
3412	req = c.newRequest(op, input, output)
3413	return
3414}
3415
3416// UpdateDataSource API operation for AWS AppSync.
3417//
3418// Updates a DataSource object.
3419//
3420// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3421// with awserr.Error's Code and Message methods to get detailed information about
3422// the error.
3423//
3424// See the AWS API reference guide for AWS AppSync's
3425// API operation UpdateDataSource for usage and error information.
3426//
3427// Returned Error Types:
3428//   * BadRequestException
3429//   The request is not well formed. For example, a value is invalid or a required
3430//   field is missing. Check the field values, and then try again.
3431//
3432//   * ConcurrentModificationException
3433//   Another modification is in progress at this time and it must complete before
3434//   you can make your change.
3435//
3436//   * NotFoundException
3437//   The resource specified in the request was not found. Check the resource,
3438//   and then try again.
3439//
3440//   * UnauthorizedException
3441//   You are not authorized to perform this operation.
3442//
3443//   * InternalFailureException
3444//   An internal AWS AppSync error occurred. Try your request again.
3445//
3446// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateDataSource
3447func (c *AppSync) UpdateDataSource(input *UpdateDataSourceInput) (*UpdateDataSourceOutput, error) {
3448	req, out := c.UpdateDataSourceRequest(input)
3449	return out, req.Send()
3450}
3451
3452// UpdateDataSourceWithContext is the same as UpdateDataSource with the addition of
3453// the ability to pass a context and additional request options.
3454//
3455// See UpdateDataSource for details on how to use this API operation.
3456//
3457// The context must be non-nil and will be used for request cancellation. If
3458// the context is nil a panic will occur. In the future the SDK may create
3459// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3460// for more information on using Contexts.
3461func (c *AppSync) UpdateDataSourceWithContext(ctx aws.Context, input *UpdateDataSourceInput, opts ...request.Option) (*UpdateDataSourceOutput, error) {
3462	req, out := c.UpdateDataSourceRequest(input)
3463	req.SetContext(ctx)
3464	req.ApplyOptions(opts...)
3465	return out, req.Send()
3466}
3467
3468const opUpdateFunction = "UpdateFunction"
3469
3470// UpdateFunctionRequest generates a "aws/request.Request" representing the
3471// client's request for the UpdateFunction operation. The "output" return
3472// value will be populated with the request's response once the request completes
3473// successfully.
3474//
3475// Use "Send" method on the returned Request to send the API call to the service.
3476// the "output" return value is not valid until after Send returns without error.
3477//
3478// See UpdateFunction for more information on using the UpdateFunction
3479// API call, and error handling.
3480//
3481// This method is useful when you want to inject custom logic or configuration
3482// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3483//
3484//
3485//    // Example sending a request using the UpdateFunctionRequest method.
3486//    req, resp := client.UpdateFunctionRequest(params)
3487//
3488//    err := req.Send()
3489//    if err == nil { // resp is now filled
3490//        fmt.Println(resp)
3491//    }
3492//
3493// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateFunction
3494func (c *AppSync) UpdateFunctionRequest(input *UpdateFunctionInput) (req *request.Request, output *UpdateFunctionOutput) {
3495	op := &request.Operation{
3496		Name:       opUpdateFunction,
3497		HTTPMethod: "POST",
3498		HTTPPath:   "/v1/apis/{apiId}/functions/{functionId}",
3499	}
3500
3501	if input == nil {
3502		input = &UpdateFunctionInput{}
3503	}
3504
3505	output = &UpdateFunctionOutput{}
3506	req = c.newRequest(op, input, output)
3507	return
3508}
3509
3510// UpdateFunction API operation for AWS AppSync.
3511//
3512// Updates a Function object.
3513//
3514// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3515// with awserr.Error's Code and Message methods to get detailed information about
3516// the error.
3517//
3518// See the AWS API reference guide for AWS AppSync's
3519// API operation UpdateFunction for usage and error information.
3520//
3521// Returned Error Types:
3522//   * ConcurrentModificationException
3523//   Another modification is in progress at this time and it must complete before
3524//   you can make your change.
3525//
3526//   * NotFoundException
3527//   The resource specified in the request was not found. Check the resource,
3528//   and then try again.
3529//
3530//   * UnauthorizedException
3531//   You are not authorized to perform this operation.
3532//
3533//   * InternalFailureException
3534//   An internal AWS AppSync error occurred. Try your request again.
3535//
3536// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateFunction
3537func (c *AppSync) UpdateFunction(input *UpdateFunctionInput) (*UpdateFunctionOutput, error) {
3538	req, out := c.UpdateFunctionRequest(input)
3539	return out, req.Send()
3540}
3541
3542// UpdateFunctionWithContext is the same as UpdateFunction with the addition of
3543// the ability to pass a context and additional request options.
3544//
3545// See UpdateFunction for details on how to use this API operation.
3546//
3547// The context must be non-nil and will be used for request cancellation. If
3548// the context is nil a panic will occur. In the future the SDK may create
3549// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3550// for more information on using Contexts.
3551func (c *AppSync) UpdateFunctionWithContext(ctx aws.Context, input *UpdateFunctionInput, opts ...request.Option) (*UpdateFunctionOutput, error) {
3552	req, out := c.UpdateFunctionRequest(input)
3553	req.SetContext(ctx)
3554	req.ApplyOptions(opts...)
3555	return out, req.Send()
3556}
3557
3558const opUpdateGraphqlApi = "UpdateGraphqlApi"
3559
3560// UpdateGraphqlApiRequest generates a "aws/request.Request" representing the
3561// client's request for the UpdateGraphqlApi operation. The "output" return
3562// value will be populated with the request's response once the request completes
3563// successfully.
3564//
3565// Use "Send" method on the returned Request to send the API call to the service.
3566// the "output" return value is not valid until after Send returns without error.
3567//
3568// See UpdateGraphqlApi for more information on using the UpdateGraphqlApi
3569// API call, and error handling.
3570//
3571// This method is useful when you want to inject custom logic or configuration
3572// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3573//
3574//
3575//    // Example sending a request using the UpdateGraphqlApiRequest method.
3576//    req, resp := client.UpdateGraphqlApiRequest(params)
3577//
3578//    err := req.Send()
3579//    if err == nil { // resp is now filled
3580//        fmt.Println(resp)
3581//    }
3582//
3583// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateGraphqlApi
3584func (c *AppSync) UpdateGraphqlApiRequest(input *UpdateGraphqlApiInput) (req *request.Request, output *UpdateGraphqlApiOutput) {
3585	op := &request.Operation{
3586		Name:       opUpdateGraphqlApi,
3587		HTTPMethod: "POST",
3588		HTTPPath:   "/v1/apis/{apiId}",
3589	}
3590
3591	if input == nil {
3592		input = &UpdateGraphqlApiInput{}
3593	}
3594
3595	output = &UpdateGraphqlApiOutput{}
3596	req = c.newRequest(op, input, output)
3597	return
3598}
3599
3600// UpdateGraphqlApi API operation for AWS AppSync.
3601//
3602// Updates a GraphqlApi object.
3603//
3604// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3605// with awserr.Error's Code and Message methods to get detailed information about
3606// the error.
3607//
3608// See the AWS API reference guide for AWS AppSync's
3609// API operation UpdateGraphqlApi for usage and error information.
3610//
3611// Returned Error Types:
3612//   * BadRequestException
3613//   The request is not well formed. For example, a value is invalid or a required
3614//   field is missing. Check the field values, and then try again.
3615//
3616//   * ConcurrentModificationException
3617//   Another modification is in progress at this time and it must complete before
3618//   you can make your change.
3619//
3620//   * NotFoundException
3621//   The resource specified in the request was not found. Check the resource,
3622//   and then try again.
3623//
3624//   * UnauthorizedException
3625//   You are not authorized to perform this operation.
3626//
3627//   * InternalFailureException
3628//   An internal AWS AppSync error occurred. Try your request again.
3629//
3630//   * AccessDeniedException
3631//   You do not have access to perform this operation on this resource.
3632//
3633// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateGraphqlApi
3634func (c *AppSync) UpdateGraphqlApi(input *UpdateGraphqlApiInput) (*UpdateGraphqlApiOutput, error) {
3635	req, out := c.UpdateGraphqlApiRequest(input)
3636	return out, req.Send()
3637}
3638
3639// UpdateGraphqlApiWithContext is the same as UpdateGraphqlApi with the addition of
3640// the ability to pass a context and additional request options.
3641//
3642// See UpdateGraphqlApi for details on how to use this API operation.
3643//
3644// The context must be non-nil and will be used for request cancellation. If
3645// the context is nil a panic will occur. In the future the SDK may create
3646// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3647// for more information on using Contexts.
3648func (c *AppSync) UpdateGraphqlApiWithContext(ctx aws.Context, input *UpdateGraphqlApiInput, opts ...request.Option) (*UpdateGraphqlApiOutput, error) {
3649	req, out := c.UpdateGraphqlApiRequest(input)
3650	req.SetContext(ctx)
3651	req.ApplyOptions(opts...)
3652	return out, req.Send()
3653}
3654
3655const opUpdateResolver = "UpdateResolver"
3656
3657// UpdateResolverRequest generates a "aws/request.Request" representing the
3658// client's request for the UpdateResolver operation. The "output" return
3659// value will be populated with the request's response once the request completes
3660// successfully.
3661//
3662// Use "Send" method on the returned Request to send the API call to the service.
3663// the "output" return value is not valid until after Send returns without error.
3664//
3665// See UpdateResolver for more information on using the UpdateResolver
3666// API call, and error handling.
3667//
3668// This method is useful when you want to inject custom logic or configuration
3669// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3670//
3671//
3672//    // Example sending a request using the UpdateResolverRequest method.
3673//    req, resp := client.UpdateResolverRequest(params)
3674//
3675//    err := req.Send()
3676//    if err == nil { // resp is now filled
3677//        fmt.Println(resp)
3678//    }
3679//
3680// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateResolver
3681func (c *AppSync) UpdateResolverRequest(input *UpdateResolverInput) (req *request.Request, output *UpdateResolverOutput) {
3682	op := &request.Operation{
3683		Name:       opUpdateResolver,
3684		HTTPMethod: "POST",
3685		HTTPPath:   "/v1/apis/{apiId}/types/{typeName}/resolvers/{fieldName}",
3686	}
3687
3688	if input == nil {
3689		input = &UpdateResolverInput{}
3690	}
3691
3692	output = &UpdateResolverOutput{}
3693	req = c.newRequest(op, input, output)
3694	return
3695}
3696
3697// UpdateResolver API operation for AWS AppSync.
3698//
3699// Updates a Resolver object.
3700//
3701// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3702// with awserr.Error's Code and Message methods to get detailed information about
3703// the error.
3704//
3705// See the AWS API reference guide for AWS AppSync's
3706// API operation UpdateResolver for usage and error information.
3707//
3708// Returned Error Types:
3709//   * ConcurrentModificationException
3710//   Another modification is in progress at this time and it must complete before
3711//   you can make your change.
3712//
3713//   * NotFoundException
3714//   The resource specified in the request was not found. Check the resource,
3715//   and then try again.
3716//
3717//   * UnauthorizedException
3718//   You are not authorized to perform this operation.
3719//
3720//   * InternalFailureException
3721//   An internal AWS AppSync error occurred. Try your request again.
3722//
3723// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateResolver
3724func (c *AppSync) UpdateResolver(input *UpdateResolverInput) (*UpdateResolverOutput, error) {
3725	req, out := c.UpdateResolverRequest(input)
3726	return out, req.Send()
3727}
3728
3729// UpdateResolverWithContext is the same as UpdateResolver with the addition of
3730// the ability to pass a context and additional request options.
3731//
3732// See UpdateResolver for details on how to use this API operation.
3733//
3734// The context must be non-nil and will be used for request cancellation. If
3735// the context is nil a panic will occur. In the future the SDK may create
3736// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3737// for more information on using Contexts.
3738func (c *AppSync) UpdateResolverWithContext(ctx aws.Context, input *UpdateResolverInput, opts ...request.Option) (*UpdateResolverOutput, error) {
3739	req, out := c.UpdateResolverRequest(input)
3740	req.SetContext(ctx)
3741	req.ApplyOptions(opts...)
3742	return out, req.Send()
3743}
3744
3745const opUpdateType = "UpdateType"
3746
3747// UpdateTypeRequest generates a "aws/request.Request" representing the
3748// client's request for the UpdateType operation. The "output" return
3749// value will be populated with the request's response once the request completes
3750// successfully.
3751//
3752// Use "Send" method on the returned Request to send the API call to the service.
3753// the "output" return value is not valid until after Send returns without error.
3754//
3755// See UpdateType for more information on using the UpdateType
3756// API call, and error handling.
3757//
3758// This method is useful when you want to inject custom logic or configuration
3759// into the SDK's request lifecycle. Such as custom headers, or retry logic.
3760//
3761//
3762//    // Example sending a request using the UpdateTypeRequest method.
3763//    req, resp := client.UpdateTypeRequest(params)
3764//
3765//    err := req.Send()
3766//    if err == nil { // resp is now filled
3767//        fmt.Println(resp)
3768//    }
3769//
3770// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateType
3771func (c *AppSync) UpdateTypeRequest(input *UpdateTypeInput) (req *request.Request, output *UpdateTypeOutput) {
3772	op := &request.Operation{
3773		Name:       opUpdateType,
3774		HTTPMethod: "POST",
3775		HTTPPath:   "/v1/apis/{apiId}/types/{typeName}",
3776	}
3777
3778	if input == nil {
3779		input = &UpdateTypeInput{}
3780	}
3781
3782	output = &UpdateTypeOutput{}
3783	req = c.newRequest(op, input, output)
3784	return
3785}
3786
3787// UpdateType API operation for AWS AppSync.
3788//
3789// Updates a Type object.
3790//
3791// Returns awserr.Error for service API and SDK errors. Use runtime type assertions
3792// with awserr.Error's Code and Message methods to get detailed information about
3793// the error.
3794//
3795// See the AWS API reference guide for AWS AppSync's
3796// API operation UpdateType for usage and error information.
3797//
3798// Returned Error Types:
3799//   * BadRequestException
3800//   The request is not well formed. For example, a value is invalid or a required
3801//   field is missing. Check the field values, and then try again.
3802//
3803//   * ConcurrentModificationException
3804//   Another modification is in progress at this time and it must complete before
3805//   you can make your change.
3806//
3807//   * NotFoundException
3808//   The resource specified in the request was not found. Check the resource,
3809//   and then try again.
3810//
3811//   * UnauthorizedException
3812//   You are not authorized to perform this operation.
3813//
3814//   * InternalFailureException
3815//   An internal AWS AppSync error occurred. Try your request again.
3816//
3817// See also, https://docs.aws.amazon.com/goto/WebAPI/appsync-2017-07-25/UpdateType
3818func (c *AppSync) UpdateType(input *UpdateTypeInput) (*UpdateTypeOutput, error) {
3819	req, out := c.UpdateTypeRequest(input)
3820	return out, req.Send()
3821}
3822
3823// UpdateTypeWithContext is the same as UpdateType with the addition of
3824// the ability to pass a context and additional request options.
3825//
3826// See UpdateType for details on how to use this API operation.
3827//
3828// The context must be non-nil and will be used for request cancellation. If
3829// the context is nil a panic will occur. In the future the SDK may create
3830// sub-contexts for http.Requests. See https://golang.org/pkg/context/
3831// for more information on using Contexts.
3832func (c *AppSync) UpdateTypeWithContext(ctx aws.Context, input *UpdateTypeInput, opts ...request.Option) (*UpdateTypeOutput, error) {
3833	req, out := c.UpdateTypeRequest(input)
3834	req.SetContext(ctx)
3835	req.ApplyOptions(opts...)
3836	return out, req.Send()
3837}
3838
3839// You do not have access to perform this operation on this resource.
3840type AccessDeniedException struct {
3841	_            struct{}                  `type:"structure"`
3842	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
3843
3844	Message_ *string `locationName:"message" type:"string"`
3845}
3846
3847// String returns the string representation
3848func (s AccessDeniedException) String() string {
3849	return awsutil.Prettify(s)
3850}
3851
3852// GoString returns the string representation
3853func (s AccessDeniedException) GoString() string {
3854	return s.String()
3855}
3856
3857func newErrorAccessDeniedException(v protocol.ResponseMetadata) error {
3858	return &AccessDeniedException{
3859		RespMetadata: v,
3860	}
3861}
3862
3863// Code returns the exception type name.
3864func (s *AccessDeniedException) Code() string {
3865	return "AccessDeniedException"
3866}
3867
3868// Message returns the exception's message.
3869func (s *AccessDeniedException) Message() string {
3870	if s.Message_ != nil {
3871		return *s.Message_
3872	}
3873	return ""
3874}
3875
3876// OrigErr always returns nil, satisfies awserr.Error interface.
3877func (s *AccessDeniedException) OrigErr() error {
3878	return nil
3879}
3880
3881func (s *AccessDeniedException) Error() string {
3882	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
3883}
3884
3885// Status code returns the HTTP status code for the request's response error.
3886func (s *AccessDeniedException) StatusCode() int {
3887	return s.RespMetadata.StatusCode
3888}
3889
3890// RequestID returns the service's response RequestID for request.
3891func (s *AccessDeniedException) RequestID() string {
3892	return s.RespMetadata.RequestID
3893}
3894
3895// Describes an additional authentication provider.
3896type AdditionalAuthenticationProvider struct {
3897	_ struct{} `type:"structure"`
3898
3899	// The authentication type: API key, AWS IAM, OIDC, or Amazon Cognito user pools.
3900	AuthenticationType *string `locationName:"authenticationType" type:"string" enum:"AuthenticationType"`
3901
3902	// The OpenID Connect configuration.
3903	OpenIDConnectConfig *OpenIDConnectConfig `locationName:"openIDConnectConfig" type:"structure"`
3904
3905	// The Amazon Cognito user pool configuration.
3906	UserPoolConfig *CognitoUserPoolConfig `locationName:"userPoolConfig" type:"structure"`
3907}
3908
3909// String returns the string representation
3910func (s AdditionalAuthenticationProvider) String() string {
3911	return awsutil.Prettify(s)
3912}
3913
3914// GoString returns the string representation
3915func (s AdditionalAuthenticationProvider) GoString() string {
3916	return s.String()
3917}
3918
3919// Validate inspects the fields of the type to determine if they are valid.
3920func (s *AdditionalAuthenticationProvider) Validate() error {
3921	invalidParams := request.ErrInvalidParams{Context: "AdditionalAuthenticationProvider"}
3922	if s.OpenIDConnectConfig != nil {
3923		if err := s.OpenIDConnectConfig.Validate(); err != nil {
3924			invalidParams.AddNested("OpenIDConnectConfig", err.(request.ErrInvalidParams))
3925		}
3926	}
3927	if s.UserPoolConfig != nil {
3928		if err := s.UserPoolConfig.Validate(); err != nil {
3929			invalidParams.AddNested("UserPoolConfig", err.(request.ErrInvalidParams))
3930		}
3931	}
3932
3933	if invalidParams.Len() > 0 {
3934		return invalidParams
3935	}
3936	return nil
3937}
3938
3939// SetAuthenticationType sets the AuthenticationType field's value.
3940func (s *AdditionalAuthenticationProvider) SetAuthenticationType(v string) *AdditionalAuthenticationProvider {
3941	s.AuthenticationType = &v
3942	return s
3943}
3944
3945// SetOpenIDConnectConfig sets the OpenIDConnectConfig field's value.
3946func (s *AdditionalAuthenticationProvider) SetOpenIDConnectConfig(v *OpenIDConnectConfig) *AdditionalAuthenticationProvider {
3947	s.OpenIDConnectConfig = v
3948	return s
3949}
3950
3951// SetUserPoolConfig sets the UserPoolConfig field's value.
3952func (s *AdditionalAuthenticationProvider) SetUserPoolConfig(v *CognitoUserPoolConfig) *AdditionalAuthenticationProvider {
3953	s.UserPoolConfig = v
3954	return s
3955}
3956
3957// The ApiCache object.
3958type ApiCache struct {
3959	_ struct{} `type:"structure"`
3960
3961	// Caching behavior.
3962	//
3963	//    * FULL_REQUEST_CACHING: All requests are fully cached.
3964	//
3965	//    * PER_RESOLVER_CACHING: Individual resolvers that you specify are cached.
3966	ApiCachingBehavior *string `locationName:"apiCachingBehavior" type:"string" enum:"ApiCachingBehavior"`
3967
3968	// At rest encryption flag for cache. This setting cannot be updated after creation.
3969	AtRestEncryptionEnabled *bool `locationName:"atRestEncryptionEnabled" type:"boolean"`
3970
3971	// The cache instance status.
3972	//
3973	//    * AVAILABLE: The instance is available for use.
3974	//
3975	//    * CREATING: The instance is currently creating.
3976	//
3977	//    * DELETING: The instance is currently deleting.
3978	//
3979	//    * MODIFYING: The instance is currently modifying.
3980	//
3981	//    * FAILED: The instance has failed creation.
3982	Status *string `locationName:"status" type:"string" enum:"ApiCacheStatus"`
3983
3984	// Transit encryption flag when connecting to cache. This setting cannot be
3985	// updated after creation.
3986	TransitEncryptionEnabled *bool `locationName:"transitEncryptionEnabled" type:"boolean"`
3987
3988	// TTL in seconds for cache entries.
3989	//
3990	// Valid values are between 1 and 3600 seconds.
3991	Ttl *int64 `locationName:"ttl" type:"long"`
3992
3993	// The cache instance type. Valid values are
3994	//
3995	//    * SMALL
3996	//
3997	//    * MEDIUM
3998	//
3999	//    * LARGE
4000	//
4001	//    * XLARGE
4002	//
4003	//    * LARGE_2X
4004	//
4005	//    * LARGE_4X
4006	//
4007	//    * LARGE_8X (not available in all regions)
4008	//
4009	//    * LARGE_12X
4010	//
4011	// Historically, instance types were identified by an EC2-style value. As of
4012	// July 2020, this is deprecated, and the generic identifiers above should be
4013	// used.
4014	//
4015	// The following legacy instance types are available, but their use is discouraged:
4016	//
4017	//    * T2_SMALL: A t2.small instance type.
4018	//
4019	//    * T2_MEDIUM: A t2.medium instance type.
4020	//
4021	//    * R4_LARGE: A r4.large instance type.
4022	//
4023	//    * R4_XLARGE: A r4.xlarge instance type.
4024	//
4025	//    * R4_2XLARGE: A r4.2xlarge instance type.
4026	//
4027	//    * R4_4XLARGE: A r4.4xlarge instance type.
4028	//
4029	//    * R4_8XLARGE: A r4.8xlarge instance type.
4030	Type *string `locationName:"type" type:"string" enum:"ApiCacheType"`
4031}
4032
4033// String returns the string representation
4034func (s ApiCache) String() string {
4035	return awsutil.Prettify(s)
4036}
4037
4038// GoString returns the string representation
4039func (s ApiCache) GoString() string {
4040	return s.String()
4041}
4042
4043// SetApiCachingBehavior sets the ApiCachingBehavior field's value.
4044func (s *ApiCache) SetApiCachingBehavior(v string) *ApiCache {
4045	s.ApiCachingBehavior = &v
4046	return s
4047}
4048
4049// SetAtRestEncryptionEnabled sets the AtRestEncryptionEnabled field's value.
4050func (s *ApiCache) SetAtRestEncryptionEnabled(v bool) *ApiCache {
4051	s.AtRestEncryptionEnabled = &v
4052	return s
4053}
4054
4055// SetStatus sets the Status field's value.
4056func (s *ApiCache) SetStatus(v string) *ApiCache {
4057	s.Status = &v
4058	return s
4059}
4060
4061// SetTransitEncryptionEnabled sets the TransitEncryptionEnabled field's value.
4062func (s *ApiCache) SetTransitEncryptionEnabled(v bool) *ApiCache {
4063	s.TransitEncryptionEnabled = &v
4064	return s
4065}
4066
4067// SetTtl sets the Ttl field's value.
4068func (s *ApiCache) SetTtl(v int64) *ApiCache {
4069	s.Ttl = &v
4070	return s
4071}
4072
4073// SetType sets the Type field's value.
4074func (s *ApiCache) SetType(v string) *ApiCache {
4075	s.Type = &v
4076	return s
4077}
4078
4079// Describes an API key.
4080//
4081// Customers invoke AWS AppSync GraphQL API operations with API keys as an identity
4082// mechanism. There are two key versions:
4083//
4084// da1: This version was introduced at launch in November 2017. These keys always
4085// expire after 7 days. Key expiration is managed by Amazon DynamoDB TTL. The
4086// keys ceased to be valid after February 21, 2018 and should not be used after
4087// that date.
4088//
4089//    * ListApiKeys returns the expiration time in milliseconds.
4090//
4091//    * CreateApiKey returns the expiration time in milliseconds.
4092//
4093//    * UpdateApiKey is not available for this key version.
4094//
4095//    * DeleteApiKey deletes the item from the table.
4096//
4097//    * Expiration is stored in Amazon DynamoDB as milliseconds. This results
4098//    in a bug where keys are not automatically deleted because DynamoDB expects
4099//    the TTL to be stored in seconds. As a one-time action, we will delete
4100//    these keys from the table after February 21, 2018.
4101//
4102// da2: This version was introduced in February 2018 when AppSync added support
4103// to extend key expiration.
4104//
4105//    * ListApiKeys returns the expiration time and deletion time in seconds.
4106//
4107//    * CreateApiKey returns the expiration time and deletion time in seconds
4108//    and accepts a user-provided expiration time in seconds.
4109//
4110//    * UpdateApiKey returns the expiration time and and deletion time in seconds
4111//    and accepts a user-provided expiration time in seconds. Expired API keys
4112//    are kept for 60 days after the expiration time. Key expiration time can
4113//    be updated while the key is not deleted.
4114//
4115//    * DeleteApiKey deletes the item from the table.
4116//
4117//    * Expiration is stored in Amazon DynamoDB as seconds. After the expiration
4118//    time, using the key to authenticate will fail. But the key can be reinstated
4119//    before deletion.
4120//
4121//    * Deletion is stored in Amazon DynamoDB as seconds. The key will be deleted
4122//    after deletion time.
4123type ApiKey struct {
4124	_ struct{} `type:"structure"`
4125
4126	// The time after which the API key is deleted. The date is represented as seconds
4127	// since the epoch, rounded down to the nearest hour.
4128	Deletes *int64 `locationName:"deletes" type:"long"`
4129
4130	// A description of the purpose of the API key.
4131	Description *string `locationName:"description" type:"string"`
4132
4133	// The time after which the API key expires. The date is represented as seconds
4134	// since the epoch, rounded down to the nearest hour.
4135	Expires *int64 `locationName:"expires" type:"long"`
4136
4137	// The API key ID.
4138	Id *string `locationName:"id" type:"string"`
4139}
4140
4141// String returns the string representation
4142func (s ApiKey) String() string {
4143	return awsutil.Prettify(s)
4144}
4145
4146// GoString returns the string representation
4147func (s ApiKey) GoString() string {
4148	return s.String()
4149}
4150
4151// SetDeletes sets the Deletes field's value.
4152func (s *ApiKey) SetDeletes(v int64) *ApiKey {
4153	s.Deletes = &v
4154	return s
4155}
4156
4157// SetDescription sets the Description field's value.
4158func (s *ApiKey) SetDescription(v string) *ApiKey {
4159	s.Description = &v
4160	return s
4161}
4162
4163// SetExpires sets the Expires field's value.
4164func (s *ApiKey) SetExpires(v int64) *ApiKey {
4165	s.Expires = &v
4166	return s
4167}
4168
4169// SetId sets the Id field's value.
4170func (s *ApiKey) SetId(v string) *ApiKey {
4171	s.Id = &v
4172	return s
4173}
4174
4175// The API key exceeded a limit. Try your request again.
4176type ApiKeyLimitExceededException struct {
4177	_            struct{}                  `type:"structure"`
4178	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4179
4180	Message_ *string `locationName:"message" type:"string"`
4181}
4182
4183// String returns the string representation
4184func (s ApiKeyLimitExceededException) String() string {
4185	return awsutil.Prettify(s)
4186}
4187
4188// GoString returns the string representation
4189func (s ApiKeyLimitExceededException) GoString() string {
4190	return s.String()
4191}
4192
4193func newErrorApiKeyLimitExceededException(v protocol.ResponseMetadata) error {
4194	return &ApiKeyLimitExceededException{
4195		RespMetadata: v,
4196	}
4197}
4198
4199// Code returns the exception type name.
4200func (s *ApiKeyLimitExceededException) Code() string {
4201	return "ApiKeyLimitExceededException"
4202}
4203
4204// Message returns the exception's message.
4205func (s *ApiKeyLimitExceededException) Message() string {
4206	if s.Message_ != nil {
4207		return *s.Message_
4208	}
4209	return ""
4210}
4211
4212// OrigErr always returns nil, satisfies awserr.Error interface.
4213func (s *ApiKeyLimitExceededException) OrigErr() error {
4214	return nil
4215}
4216
4217func (s *ApiKeyLimitExceededException) Error() string {
4218	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4219}
4220
4221// Status code returns the HTTP status code for the request's response error.
4222func (s *ApiKeyLimitExceededException) StatusCode() int {
4223	return s.RespMetadata.StatusCode
4224}
4225
4226// RequestID returns the service's response RequestID for request.
4227func (s *ApiKeyLimitExceededException) RequestID() string {
4228	return s.RespMetadata.RequestID
4229}
4230
4231// The API key expiration must be set to a value between 1 and 365 days from
4232// creation (for CreateApiKey) or from update (for UpdateApiKey).
4233type ApiKeyValidityOutOfBoundsException struct {
4234	_            struct{}                  `type:"structure"`
4235	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4236
4237	Message_ *string `locationName:"message" type:"string"`
4238}
4239
4240// String returns the string representation
4241func (s ApiKeyValidityOutOfBoundsException) String() string {
4242	return awsutil.Prettify(s)
4243}
4244
4245// GoString returns the string representation
4246func (s ApiKeyValidityOutOfBoundsException) GoString() string {
4247	return s.String()
4248}
4249
4250func newErrorApiKeyValidityOutOfBoundsException(v protocol.ResponseMetadata) error {
4251	return &ApiKeyValidityOutOfBoundsException{
4252		RespMetadata: v,
4253	}
4254}
4255
4256// Code returns the exception type name.
4257func (s *ApiKeyValidityOutOfBoundsException) Code() string {
4258	return "ApiKeyValidityOutOfBoundsException"
4259}
4260
4261// Message returns the exception's message.
4262func (s *ApiKeyValidityOutOfBoundsException) Message() string {
4263	if s.Message_ != nil {
4264		return *s.Message_
4265	}
4266	return ""
4267}
4268
4269// OrigErr always returns nil, satisfies awserr.Error interface.
4270func (s *ApiKeyValidityOutOfBoundsException) OrigErr() error {
4271	return nil
4272}
4273
4274func (s *ApiKeyValidityOutOfBoundsException) Error() string {
4275	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4276}
4277
4278// Status code returns the HTTP status code for the request's response error.
4279func (s *ApiKeyValidityOutOfBoundsException) StatusCode() int {
4280	return s.RespMetadata.StatusCode
4281}
4282
4283// RequestID returns the service's response RequestID for request.
4284func (s *ApiKeyValidityOutOfBoundsException) RequestID() string {
4285	return s.RespMetadata.RequestID
4286}
4287
4288// The GraphQL API exceeded a limit. Try your request again.
4289type ApiLimitExceededException struct {
4290	_            struct{}                  `type:"structure"`
4291	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4292
4293	Message_ *string `locationName:"message" type:"string"`
4294}
4295
4296// String returns the string representation
4297func (s ApiLimitExceededException) String() string {
4298	return awsutil.Prettify(s)
4299}
4300
4301// GoString returns the string representation
4302func (s ApiLimitExceededException) GoString() string {
4303	return s.String()
4304}
4305
4306func newErrorApiLimitExceededException(v protocol.ResponseMetadata) error {
4307	return &ApiLimitExceededException{
4308		RespMetadata: v,
4309	}
4310}
4311
4312// Code returns the exception type name.
4313func (s *ApiLimitExceededException) Code() string {
4314	return "ApiLimitExceededException"
4315}
4316
4317// Message returns the exception's message.
4318func (s *ApiLimitExceededException) Message() string {
4319	if s.Message_ != nil {
4320		return *s.Message_
4321	}
4322	return ""
4323}
4324
4325// OrigErr always returns nil, satisfies awserr.Error interface.
4326func (s *ApiLimitExceededException) OrigErr() error {
4327	return nil
4328}
4329
4330func (s *ApiLimitExceededException) Error() string {
4331	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4332}
4333
4334// Status code returns the HTTP status code for the request's response error.
4335func (s *ApiLimitExceededException) StatusCode() int {
4336	return s.RespMetadata.StatusCode
4337}
4338
4339// RequestID returns the service's response RequestID for request.
4340func (s *ApiLimitExceededException) RequestID() string {
4341	return s.RespMetadata.RequestID
4342}
4343
4344// The authorization config in case the HTTP endpoint requires authorization.
4345type AuthorizationConfig struct {
4346	_ struct{} `type:"structure"`
4347
4348	// The authorization type required by the HTTP endpoint.
4349	//
4350	//    * AWS_IAM: The authorization type is Sigv4.
4351	//
4352	// AuthorizationType is a required field
4353	AuthorizationType *string `locationName:"authorizationType" type:"string" required:"true" enum:"AuthorizationType"`
4354
4355	// The AWS IAM settings.
4356	AwsIamConfig *AwsIamConfig `locationName:"awsIamConfig" type:"structure"`
4357}
4358
4359// String returns the string representation
4360func (s AuthorizationConfig) String() string {
4361	return awsutil.Prettify(s)
4362}
4363
4364// GoString returns the string representation
4365func (s AuthorizationConfig) GoString() string {
4366	return s.String()
4367}
4368
4369// Validate inspects the fields of the type to determine if they are valid.
4370func (s *AuthorizationConfig) Validate() error {
4371	invalidParams := request.ErrInvalidParams{Context: "AuthorizationConfig"}
4372	if s.AuthorizationType == nil {
4373		invalidParams.Add(request.NewErrParamRequired("AuthorizationType"))
4374	}
4375
4376	if invalidParams.Len() > 0 {
4377		return invalidParams
4378	}
4379	return nil
4380}
4381
4382// SetAuthorizationType sets the AuthorizationType field's value.
4383func (s *AuthorizationConfig) SetAuthorizationType(v string) *AuthorizationConfig {
4384	s.AuthorizationType = &v
4385	return s
4386}
4387
4388// SetAwsIamConfig sets the AwsIamConfig field's value.
4389func (s *AuthorizationConfig) SetAwsIamConfig(v *AwsIamConfig) *AuthorizationConfig {
4390	s.AwsIamConfig = v
4391	return s
4392}
4393
4394// The AWS IAM configuration.
4395type AwsIamConfig struct {
4396	_ struct{} `type:"structure"`
4397
4398	// The signing region for AWS IAM authorization.
4399	SigningRegion *string `locationName:"signingRegion" type:"string"`
4400
4401	// The signing service name for AWS IAM authorization.
4402	SigningServiceName *string `locationName:"signingServiceName" type:"string"`
4403}
4404
4405// String returns the string representation
4406func (s AwsIamConfig) String() string {
4407	return awsutil.Prettify(s)
4408}
4409
4410// GoString returns the string representation
4411func (s AwsIamConfig) GoString() string {
4412	return s.String()
4413}
4414
4415// SetSigningRegion sets the SigningRegion field's value.
4416func (s *AwsIamConfig) SetSigningRegion(v string) *AwsIamConfig {
4417	s.SigningRegion = &v
4418	return s
4419}
4420
4421// SetSigningServiceName sets the SigningServiceName field's value.
4422func (s *AwsIamConfig) SetSigningServiceName(v string) *AwsIamConfig {
4423	s.SigningServiceName = &v
4424	return s
4425}
4426
4427// The request is not well formed. For example, a value is invalid or a required
4428// field is missing. Check the field values, and then try again.
4429type BadRequestException struct {
4430	_            struct{}                  `type:"structure"`
4431	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4432
4433	Message_ *string `locationName:"message" type:"string"`
4434}
4435
4436// String returns the string representation
4437func (s BadRequestException) String() string {
4438	return awsutil.Prettify(s)
4439}
4440
4441// GoString returns the string representation
4442func (s BadRequestException) GoString() string {
4443	return s.String()
4444}
4445
4446func newErrorBadRequestException(v protocol.ResponseMetadata) error {
4447	return &BadRequestException{
4448		RespMetadata: v,
4449	}
4450}
4451
4452// Code returns the exception type name.
4453func (s *BadRequestException) Code() string {
4454	return "BadRequestException"
4455}
4456
4457// Message returns the exception's message.
4458func (s *BadRequestException) Message() string {
4459	if s.Message_ != nil {
4460		return *s.Message_
4461	}
4462	return ""
4463}
4464
4465// OrigErr always returns nil, satisfies awserr.Error interface.
4466func (s *BadRequestException) OrigErr() error {
4467	return nil
4468}
4469
4470func (s *BadRequestException) Error() string {
4471	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4472}
4473
4474// Status code returns the HTTP status code for the request's response error.
4475func (s *BadRequestException) StatusCode() int {
4476	return s.RespMetadata.StatusCode
4477}
4478
4479// RequestID returns the service's response RequestID for request.
4480func (s *BadRequestException) RequestID() string {
4481	return s.RespMetadata.RequestID
4482}
4483
4484// The caching configuration for a resolver that has caching enabled.
4485type CachingConfig struct {
4486	_ struct{} `type:"structure"`
4487
4488	// The caching keys for a resolver that has caching enabled.
4489	//
4490	// Valid values are entries from the $context.arguments, $context.source, and
4491	// $context.identity maps.
4492	CachingKeys []*string `locationName:"cachingKeys" type:"list"`
4493
4494	// The TTL in seconds for a resolver that has caching enabled.
4495	//
4496	// Valid values are between 1 and 3600 seconds.
4497	Ttl *int64 `locationName:"ttl" type:"long"`
4498}
4499
4500// String returns the string representation
4501func (s CachingConfig) String() string {
4502	return awsutil.Prettify(s)
4503}
4504
4505// GoString returns the string representation
4506func (s CachingConfig) GoString() string {
4507	return s.String()
4508}
4509
4510// SetCachingKeys sets the CachingKeys field's value.
4511func (s *CachingConfig) SetCachingKeys(v []*string) *CachingConfig {
4512	s.CachingKeys = v
4513	return s
4514}
4515
4516// SetTtl sets the Ttl field's value.
4517func (s *CachingConfig) SetTtl(v int64) *CachingConfig {
4518	s.Ttl = &v
4519	return s
4520}
4521
4522// Describes an Amazon Cognito user pool configuration.
4523type CognitoUserPoolConfig struct {
4524	_ struct{} `type:"structure"`
4525
4526	// A regular expression for validating the incoming Amazon Cognito user pool
4527	// app client ID.
4528	AppIdClientRegex *string `locationName:"appIdClientRegex" type:"string"`
4529
4530	// The AWS Region in which the user pool was created.
4531	//
4532	// AwsRegion is a required field
4533	AwsRegion *string `locationName:"awsRegion" type:"string" required:"true"`
4534
4535	// The user pool ID.
4536	//
4537	// UserPoolId is a required field
4538	UserPoolId *string `locationName:"userPoolId" type:"string" required:"true"`
4539}
4540
4541// String returns the string representation
4542func (s CognitoUserPoolConfig) String() string {
4543	return awsutil.Prettify(s)
4544}
4545
4546// GoString returns the string representation
4547func (s CognitoUserPoolConfig) GoString() string {
4548	return s.String()
4549}
4550
4551// Validate inspects the fields of the type to determine if they are valid.
4552func (s *CognitoUserPoolConfig) Validate() error {
4553	invalidParams := request.ErrInvalidParams{Context: "CognitoUserPoolConfig"}
4554	if s.AwsRegion == nil {
4555		invalidParams.Add(request.NewErrParamRequired("AwsRegion"))
4556	}
4557	if s.UserPoolId == nil {
4558		invalidParams.Add(request.NewErrParamRequired("UserPoolId"))
4559	}
4560
4561	if invalidParams.Len() > 0 {
4562		return invalidParams
4563	}
4564	return nil
4565}
4566
4567// SetAppIdClientRegex sets the AppIdClientRegex field's value.
4568func (s *CognitoUserPoolConfig) SetAppIdClientRegex(v string) *CognitoUserPoolConfig {
4569	s.AppIdClientRegex = &v
4570	return s
4571}
4572
4573// SetAwsRegion sets the AwsRegion field's value.
4574func (s *CognitoUserPoolConfig) SetAwsRegion(v string) *CognitoUserPoolConfig {
4575	s.AwsRegion = &v
4576	return s
4577}
4578
4579// SetUserPoolId sets the UserPoolId field's value.
4580func (s *CognitoUserPoolConfig) SetUserPoolId(v string) *CognitoUserPoolConfig {
4581	s.UserPoolId = &v
4582	return s
4583}
4584
4585// Another modification is in progress at this time and it must complete before
4586// you can make your change.
4587type ConcurrentModificationException struct {
4588	_            struct{}                  `type:"structure"`
4589	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
4590
4591	Message_ *string `locationName:"message" type:"string"`
4592}
4593
4594// String returns the string representation
4595func (s ConcurrentModificationException) String() string {
4596	return awsutil.Prettify(s)
4597}
4598
4599// GoString returns the string representation
4600func (s ConcurrentModificationException) GoString() string {
4601	return s.String()
4602}
4603
4604func newErrorConcurrentModificationException(v protocol.ResponseMetadata) error {
4605	return &ConcurrentModificationException{
4606		RespMetadata: v,
4607	}
4608}
4609
4610// Code returns the exception type name.
4611func (s *ConcurrentModificationException) Code() string {
4612	return "ConcurrentModificationException"
4613}
4614
4615// Message returns the exception's message.
4616func (s *ConcurrentModificationException) Message() string {
4617	if s.Message_ != nil {
4618		return *s.Message_
4619	}
4620	return ""
4621}
4622
4623// OrigErr always returns nil, satisfies awserr.Error interface.
4624func (s *ConcurrentModificationException) OrigErr() error {
4625	return nil
4626}
4627
4628func (s *ConcurrentModificationException) Error() string {
4629	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
4630}
4631
4632// Status code returns the HTTP status code for the request's response error.
4633func (s *ConcurrentModificationException) StatusCode() int {
4634	return s.RespMetadata.StatusCode
4635}
4636
4637// RequestID returns the service's response RequestID for request.
4638func (s *ConcurrentModificationException) RequestID() string {
4639	return s.RespMetadata.RequestID
4640}
4641
4642// Represents the input of a CreateApiCache operation.
4643type CreateApiCacheInput struct {
4644	_ struct{} `type:"structure"`
4645
4646	// Caching behavior.
4647	//
4648	//    * FULL_REQUEST_CACHING: All requests are fully cached.
4649	//
4650	//    * PER_RESOLVER_CACHING: Individual resolvers that you specify are cached.
4651	//
4652	// ApiCachingBehavior is a required field
4653	ApiCachingBehavior *string `locationName:"apiCachingBehavior" type:"string" required:"true" enum:"ApiCachingBehavior"`
4654
4655	// The GraphQL API Id.
4656	//
4657	// ApiId is a required field
4658	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
4659
4660	// At rest encryption flag for cache. This setting cannot be updated after creation.
4661	AtRestEncryptionEnabled *bool `locationName:"atRestEncryptionEnabled" type:"boolean"`
4662
4663	// Transit encryption flag when connecting to cache. This setting cannot be
4664	// updated after creation.
4665	TransitEncryptionEnabled *bool `locationName:"transitEncryptionEnabled" type:"boolean"`
4666
4667	// TTL in seconds for cache entries.
4668	//
4669	// Valid values are between 1 and 3600 seconds.
4670	//
4671	// Ttl is a required field
4672	Ttl *int64 `locationName:"ttl" type:"long" required:"true"`
4673
4674	// The cache instance type. Valid values are
4675	//
4676	//    * SMALL
4677	//
4678	//    * MEDIUM
4679	//
4680	//    * LARGE
4681	//
4682	//    * XLARGE
4683	//
4684	//    * LARGE_2X
4685	//
4686	//    * LARGE_4X
4687	//
4688	//    * LARGE_8X (not available in all regions)
4689	//
4690	//    * LARGE_12X
4691	//
4692	// Historically, instance types were identified by an EC2-style value. As of
4693	// July 2020, this is deprecated, and the generic identifiers above should be
4694	// used.
4695	//
4696	// The following legacy instance types are available, but their use is discouraged:
4697	//
4698	//    * T2_SMALL: A t2.small instance type.
4699	//
4700	//    * T2_MEDIUM: A t2.medium instance type.
4701	//
4702	//    * R4_LARGE: A r4.large instance type.
4703	//
4704	//    * R4_XLARGE: A r4.xlarge instance type.
4705	//
4706	//    * R4_2XLARGE: A r4.2xlarge instance type.
4707	//
4708	//    * R4_4XLARGE: A r4.4xlarge instance type.
4709	//
4710	//    * R4_8XLARGE: A r4.8xlarge instance type.
4711	//
4712	// Type is a required field
4713	Type *string `locationName:"type" type:"string" required:"true" enum:"ApiCacheType"`
4714}
4715
4716// String returns the string representation
4717func (s CreateApiCacheInput) String() string {
4718	return awsutil.Prettify(s)
4719}
4720
4721// GoString returns the string representation
4722func (s CreateApiCacheInput) GoString() string {
4723	return s.String()
4724}
4725
4726// Validate inspects the fields of the type to determine if they are valid.
4727func (s *CreateApiCacheInput) Validate() error {
4728	invalidParams := request.ErrInvalidParams{Context: "CreateApiCacheInput"}
4729	if s.ApiCachingBehavior == nil {
4730		invalidParams.Add(request.NewErrParamRequired("ApiCachingBehavior"))
4731	}
4732	if s.ApiId == nil {
4733		invalidParams.Add(request.NewErrParamRequired("ApiId"))
4734	}
4735	if s.ApiId != nil && len(*s.ApiId) < 1 {
4736		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
4737	}
4738	if s.Ttl == nil {
4739		invalidParams.Add(request.NewErrParamRequired("Ttl"))
4740	}
4741	if s.Type == nil {
4742		invalidParams.Add(request.NewErrParamRequired("Type"))
4743	}
4744
4745	if invalidParams.Len() > 0 {
4746		return invalidParams
4747	}
4748	return nil
4749}
4750
4751// SetApiCachingBehavior sets the ApiCachingBehavior field's value.
4752func (s *CreateApiCacheInput) SetApiCachingBehavior(v string) *CreateApiCacheInput {
4753	s.ApiCachingBehavior = &v
4754	return s
4755}
4756
4757// SetApiId sets the ApiId field's value.
4758func (s *CreateApiCacheInput) SetApiId(v string) *CreateApiCacheInput {
4759	s.ApiId = &v
4760	return s
4761}
4762
4763// SetAtRestEncryptionEnabled sets the AtRestEncryptionEnabled field's value.
4764func (s *CreateApiCacheInput) SetAtRestEncryptionEnabled(v bool) *CreateApiCacheInput {
4765	s.AtRestEncryptionEnabled = &v
4766	return s
4767}
4768
4769// SetTransitEncryptionEnabled sets the TransitEncryptionEnabled field's value.
4770func (s *CreateApiCacheInput) SetTransitEncryptionEnabled(v bool) *CreateApiCacheInput {
4771	s.TransitEncryptionEnabled = &v
4772	return s
4773}
4774
4775// SetTtl sets the Ttl field's value.
4776func (s *CreateApiCacheInput) SetTtl(v int64) *CreateApiCacheInput {
4777	s.Ttl = &v
4778	return s
4779}
4780
4781// SetType sets the Type field's value.
4782func (s *CreateApiCacheInput) SetType(v string) *CreateApiCacheInput {
4783	s.Type = &v
4784	return s
4785}
4786
4787// Represents the output of a CreateApiCache operation.
4788type CreateApiCacheOutput struct {
4789	_ struct{} `type:"structure"`
4790
4791	// The ApiCache object.
4792	ApiCache *ApiCache `locationName:"apiCache" type:"structure"`
4793}
4794
4795// String returns the string representation
4796func (s CreateApiCacheOutput) String() string {
4797	return awsutil.Prettify(s)
4798}
4799
4800// GoString returns the string representation
4801func (s CreateApiCacheOutput) GoString() string {
4802	return s.String()
4803}
4804
4805// SetApiCache sets the ApiCache field's value.
4806func (s *CreateApiCacheOutput) SetApiCache(v *ApiCache) *CreateApiCacheOutput {
4807	s.ApiCache = v
4808	return s
4809}
4810
4811type CreateApiKeyInput struct {
4812	_ struct{} `type:"structure"`
4813
4814	// The ID for your GraphQL API.
4815	//
4816	// ApiId is a required field
4817	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
4818
4819	// A description of the purpose of the API key.
4820	Description *string `locationName:"description" type:"string"`
4821
4822	// The time from creation time after which the API key expires. The date is
4823	// represented as seconds since the epoch, rounded down to the nearest hour.
4824	// The default value for this parameter is 7 days from creation time. For more
4825	// information, see .
4826	Expires *int64 `locationName:"expires" type:"long"`
4827}
4828
4829// String returns the string representation
4830func (s CreateApiKeyInput) String() string {
4831	return awsutil.Prettify(s)
4832}
4833
4834// GoString returns the string representation
4835func (s CreateApiKeyInput) GoString() string {
4836	return s.String()
4837}
4838
4839// Validate inspects the fields of the type to determine if they are valid.
4840func (s *CreateApiKeyInput) Validate() error {
4841	invalidParams := request.ErrInvalidParams{Context: "CreateApiKeyInput"}
4842	if s.ApiId == nil {
4843		invalidParams.Add(request.NewErrParamRequired("ApiId"))
4844	}
4845	if s.ApiId != nil && len(*s.ApiId) < 1 {
4846		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
4847	}
4848
4849	if invalidParams.Len() > 0 {
4850		return invalidParams
4851	}
4852	return nil
4853}
4854
4855// SetApiId sets the ApiId field's value.
4856func (s *CreateApiKeyInput) SetApiId(v string) *CreateApiKeyInput {
4857	s.ApiId = &v
4858	return s
4859}
4860
4861// SetDescription sets the Description field's value.
4862func (s *CreateApiKeyInput) SetDescription(v string) *CreateApiKeyInput {
4863	s.Description = &v
4864	return s
4865}
4866
4867// SetExpires sets the Expires field's value.
4868func (s *CreateApiKeyInput) SetExpires(v int64) *CreateApiKeyInput {
4869	s.Expires = &v
4870	return s
4871}
4872
4873type CreateApiKeyOutput struct {
4874	_ struct{} `type:"structure"`
4875
4876	// The API key.
4877	ApiKey *ApiKey `locationName:"apiKey" type:"structure"`
4878}
4879
4880// String returns the string representation
4881func (s CreateApiKeyOutput) String() string {
4882	return awsutil.Prettify(s)
4883}
4884
4885// GoString returns the string representation
4886func (s CreateApiKeyOutput) GoString() string {
4887	return s.String()
4888}
4889
4890// SetApiKey sets the ApiKey field's value.
4891func (s *CreateApiKeyOutput) SetApiKey(v *ApiKey) *CreateApiKeyOutput {
4892	s.ApiKey = v
4893	return s
4894}
4895
4896type CreateDataSourceInput struct {
4897	_ struct{} `type:"structure"`
4898
4899	// The API ID for the GraphQL API for the DataSource.
4900	//
4901	// ApiId is a required field
4902	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
4903
4904	// A description of the DataSource.
4905	Description *string `locationName:"description" type:"string"`
4906
4907	// Amazon DynamoDB settings.
4908	DynamodbConfig *DynamodbDataSourceConfig `locationName:"dynamodbConfig" type:"structure"`
4909
4910	// Amazon Elasticsearch Service settings.
4911	ElasticsearchConfig *ElasticsearchDataSourceConfig `locationName:"elasticsearchConfig" type:"structure"`
4912
4913	// HTTP endpoint settings.
4914	HttpConfig *HttpDataSourceConfig `locationName:"httpConfig" type:"structure"`
4915
4916	// AWS Lambda settings.
4917	LambdaConfig *LambdaDataSourceConfig `locationName:"lambdaConfig" type:"structure"`
4918
4919	// A user-supplied name for the DataSource.
4920	//
4921	// Name is a required field
4922	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
4923
4924	// Relational database settings.
4925	RelationalDatabaseConfig *RelationalDatabaseDataSourceConfig `locationName:"relationalDatabaseConfig" type:"structure"`
4926
4927	// The AWS IAM service role ARN for the data source. The system assumes this
4928	// role when accessing the data source.
4929	ServiceRoleArn *string `locationName:"serviceRoleArn" type:"string"`
4930
4931	// The type of the DataSource.
4932	//
4933	// Type is a required field
4934	Type *string `locationName:"type" type:"string" required:"true" enum:"DataSourceType"`
4935}
4936
4937// String returns the string representation
4938func (s CreateDataSourceInput) String() string {
4939	return awsutil.Prettify(s)
4940}
4941
4942// GoString returns the string representation
4943func (s CreateDataSourceInput) GoString() string {
4944	return s.String()
4945}
4946
4947// Validate inspects the fields of the type to determine if they are valid.
4948func (s *CreateDataSourceInput) Validate() error {
4949	invalidParams := request.ErrInvalidParams{Context: "CreateDataSourceInput"}
4950	if s.ApiId == nil {
4951		invalidParams.Add(request.NewErrParamRequired("ApiId"))
4952	}
4953	if s.ApiId != nil && len(*s.ApiId) < 1 {
4954		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
4955	}
4956	if s.Name == nil {
4957		invalidParams.Add(request.NewErrParamRequired("Name"))
4958	}
4959	if s.Name != nil && len(*s.Name) < 1 {
4960		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
4961	}
4962	if s.Type == nil {
4963		invalidParams.Add(request.NewErrParamRequired("Type"))
4964	}
4965	if s.DynamodbConfig != nil {
4966		if err := s.DynamodbConfig.Validate(); err != nil {
4967			invalidParams.AddNested("DynamodbConfig", err.(request.ErrInvalidParams))
4968		}
4969	}
4970	if s.ElasticsearchConfig != nil {
4971		if err := s.ElasticsearchConfig.Validate(); err != nil {
4972			invalidParams.AddNested("ElasticsearchConfig", err.(request.ErrInvalidParams))
4973		}
4974	}
4975	if s.HttpConfig != nil {
4976		if err := s.HttpConfig.Validate(); err != nil {
4977			invalidParams.AddNested("HttpConfig", err.(request.ErrInvalidParams))
4978		}
4979	}
4980	if s.LambdaConfig != nil {
4981		if err := s.LambdaConfig.Validate(); err != nil {
4982			invalidParams.AddNested("LambdaConfig", err.(request.ErrInvalidParams))
4983		}
4984	}
4985
4986	if invalidParams.Len() > 0 {
4987		return invalidParams
4988	}
4989	return nil
4990}
4991
4992// SetApiId sets the ApiId field's value.
4993func (s *CreateDataSourceInput) SetApiId(v string) *CreateDataSourceInput {
4994	s.ApiId = &v
4995	return s
4996}
4997
4998// SetDescription sets the Description field's value.
4999func (s *CreateDataSourceInput) SetDescription(v string) *CreateDataSourceInput {
5000	s.Description = &v
5001	return s
5002}
5003
5004// SetDynamodbConfig sets the DynamodbConfig field's value.
5005func (s *CreateDataSourceInput) SetDynamodbConfig(v *DynamodbDataSourceConfig) *CreateDataSourceInput {
5006	s.DynamodbConfig = v
5007	return s
5008}
5009
5010// SetElasticsearchConfig sets the ElasticsearchConfig field's value.
5011func (s *CreateDataSourceInput) SetElasticsearchConfig(v *ElasticsearchDataSourceConfig) *CreateDataSourceInput {
5012	s.ElasticsearchConfig = v
5013	return s
5014}
5015
5016// SetHttpConfig sets the HttpConfig field's value.
5017func (s *CreateDataSourceInput) SetHttpConfig(v *HttpDataSourceConfig) *CreateDataSourceInput {
5018	s.HttpConfig = v
5019	return s
5020}
5021
5022// SetLambdaConfig sets the LambdaConfig field's value.
5023func (s *CreateDataSourceInput) SetLambdaConfig(v *LambdaDataSourceConfig) *CreateDataSourceInput {
5024	s.LambdaConfig = v
5025	return s
5026}
5027
5028// SetName sets the Name field's value.
5029func (s *CreateDataSourceInput) SetName(v string) *CreateDataSourceInput {
5030	s.Name = &v
5031	return s
5032}
5033
5034// SetRelationalDatabaseConfig sets the RelationalDatabaseConfig field's value.
5035func (s *CreateDataSourceInput) SetRelationalDatabaseConfig(v *RelationalDatabaseDataSourceConfig) *CreateDataSourceInput {
5036	s.RelationalDatabaseConfig = v
5037	return s
5038}
5039
5040// SetServiceRoleArn sets the ServiceRoleArn field's value.
5041func (s *CreateDataSourceInput) SetServiceRoleArn(v string) *CreateDataSourceInput {
5042	s.ServiceRoleArn = &v
5043	return s
5044}
5045
5046// SetType sets the Type field's value.
5047func (s *CreateDataSourceInput) SetType(v string) *CreateDataSourceInput {
5048	s.Type = &v
5049	return s
5050}
5051
5052type CreateDataSourceOutput struct {
5053	_ struct{} `type:"structure"`
5054
5055	// The DataSource object.
5056	DataSource *DataSource `locationName:"dataSource" type:"structure"`
5057}
5058
5059// String returns the string representation
5060func (s CreateDataSourceOutput) String() string {
5061	return awsutil.Prettify(s)
5062}
5063
5064// GoString returns the string representation
5065func (s CreateDataSourceOutput) GoString() string {
5066	return s.String()
5067}
5068
5069// SetDataSource sets the DataSource field's value.
5070func (s *CreateDataSourceOutput) SetDataSource(v *DataSource) *CreateDataSourceOutput {
5071	s.DataSource = v
5072	return s
5073}
5074
5075type CreateFunctionInput struct {
5076	_ struct{} `type:"structure"`
5077
5078	// The GraphQL API ID.
5079	//
5080	// ApiId is a required field
5081	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
5082
5083	// The Function DataSource name.
5084	//
5085	// DataSourceName is a required field
5086	DataSourceName *string `locationName:"dataSourceName" min:"1" type:"string" required:"true"`
5087
5088	// The Function description.
5089	Description *string `locationName:"description" type:"string"`
5090
5091	// The version of the request mapping template. Currently the supported value
5092	// is 2018-05-29.
5093	//
5094	// FunctionVersion is a required field
5095	FunctionVersion *string `locationName:"functionVersion" type:"string" required:"true"`
5096
5097	// The Function name. The function name does not have to be unique.
5098	//
5099	// Name is a required field
5100	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
5101
5102	// The Function request mapping template. Functions support only the 2018-05-29
5103	// version of the request mapping template.
5104	RequestMappingTemplate *string `locationName:"requestMappingTemplate" min:"1" type:"string"`
5105
5106	// The Function response mapping template.
5107	ResponseMappingTemplate *string `locationName:"responseMappingTemplate" min:"1" type:"string"`
5108}
5109
5110// String returns the string representation
5111func (s CreateFunctionInput) String() string {
5112	return awsutil.Prettify(s)
5113}
5114
5115// GoString returns the string representation
5116func (s CreateFunctionInput) GoString() string {
5117	return s.String()
5118}
5119
5120// Validate inspects the fields of the type to determine if they are valid.
5121func (s *CreateFunctionInput) Validate() error {
5122	invalidParams := request.ErrInvalidParams{Context: "CreateFunctionInput"}
5123	if s.ApiId == nil {
5124		invalidParams.Add(request.NewErrParamRequired("ApiId"))
5125	}
5126	if s.ApiId != nil && len(*s.ApiId) < 1 {
5127		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
5128	}
5129	if s.DataSourceName == nil {
5130		invalidParams.Add(request.NewErrParamRequired("DataSourceName"))
5131	}
5132	if s.DataSourceName != nil && len(*s.DataSourceName) < 1 {
5133		invalidParams.Add(request.NewErrParamMinLen("DataSourceName", 1))
5134	}
5135	if s.FunctionVersion == nil {
5136		invalidParams.Add(request.NewErrParamRequired("FunctionVersion"))
5137	}
5138	if s.Name == nil {
5139		invalidParams.Add(request.NewErrParamRequired("Name"))
5140	}
5141	if s.Name != nil && len(*s.Name) < 1 {
5142		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
5143	}
5144	if s.RequestMappingTemplate != nil && len(*s.RequestMappingTemplate) < 1 {
5145		invalidParams.Add(request.NewErrParamMinLen("RequestMappingTemplate", 1))
5146	}
5147	if s.ResponseMappingTemplate != nil && len(*s.ResponseMappingTemplate) < 1 {
5148		invalidParams.Add(request.NewErrParamMinLen("ResponseMappingTemplate", 1))
5149	}
5150
5151	if invalidParams.Len() > 0 {
5152		return invalidParams
5153	}
5154	return nil
5155}
5156
5157// SetApiId sets the ApiId field's value.
5158func (s *CreateFunctionInput) SetApiId(v string) *CreateFunctionInput {
5159	s.ApiId = &v
5160	return s
5161}
5162
5163// SetDataSourceName sets the DataSourceName field's value.
5164func (s *CreateFunctionInput) SetDataSourceName(v string) *CreateFunctionInput {
5165	s.DataSourceName = &v
5166	return s
5167}
5168
5169// SetDescription sets the Description field's value.
5170func (s *CreateFunctionInput) SetDescription(v string) *CreateFunctionInput {
5171	s.Description = &v
5172	return s
5173}
5174
5175// SetFunctionVersion sets the FunctionVersion field's value.
5176func (s *CreateFunctionInput) SetFunctionVersion(v string) *CreateFunctionInput {
5177	s.FunctionVersion = &v
5178	return s
5179}
5180
5181// SetName sets the Name field's value.
5182func (s *CreateFunctionInput) SetName(v string) *CreateFunctionInput {
5183	s.Name = &v
5184	return s
5185}
5186
5187// SetRequestMappingTemplate sets the RequestMappingTemplate field's value.
5188func (s *CreateFunctionInput) SetRequestMappingTemplate(v string) *CreateFunctionInput {
5189	s.RequestMappingTemplate = &v
5190	return s
5191}
5192
5193// SetResponseMappingTemplate sets the ResponseMappingTemplate field's value.
5194func (s *CreateFunctionInput) SetResponseMappingTemplate(v string) *CreateFunctionInput {
5195	s.ResponseMappingTemplate = &v
5196	return s
5197}
5198
5199type CreateFunctionOutput struct {
5200	_ struct{} `type:"structure"`
5201
5202	// The Function object.
5203	FunctionConfiguration *FunctionConfiguration `locationName:"functionConfiguration" type:"structure"`
5204}
5205
5206// String returns the string representation
5207func (s CreateFunctionOutput) String() string {
5208	return awsutil.Prettify(s)
5209}
5210
5211// GoString returns the string representation
5212func (s CreateFunctionOutput) GoString() string {
5213	return s.String()
5214}
5215
5216// SetFunctionConfiguration sets the FunctionConfiguration field's value.
5217func (s *CreateFunctionOutput) SetFunctionConfiguration(v *FunctionConfiguration) *CreateFunctionOutput {
5218	s.FunctionConfiguration = v
5219	return s
5220}
5221
5222type CreateGraphqlApiInput struct {
5223	_ struct{} `type:"structure"`
5224
5225	// A list of additional authentication providers for the GraphqlApi API.
5226	AdditionalAuthenticationProviders []*AdditionalAuthenticationProvider `locationName:"additionalAuthenticationProviders" type:"list"`
5227
5228	// The authentication type: API key, AWS IAM, OIDC, or Amazon Cognito user pools.
5229	//
5230	// AuthenticationType is a required field
5231	AuthenticationType *string `locationName:"authenticationType" type:"string" required:"true" enum:"AuthenticationType"`
5232
5233	// The Amazon CloudWatch Logs configuration.
5234	LogConfig *LogConfig `locationName:"logConfig" type:"structure"`
5235
5236	// A user-supplied name for the GraphqlApi.
5237	//
5238	// Name is a required field
5239	Name *string `locationName:"name" type:"string" required:"true"`
5240
5241	// The OpenID Connect configuration.
5242	OpenIDConnectConfig *OpenIDConnectConfig `locationName:"openIDConnectConfig" type:"structure"`
5243
5244	// A TagMap object.
5245	Tags map[string]*string `locationName:"tags" min:"1" type:"map"`
5246
5247	// The Amazon Cognito user pool configuration.
5248	UserPoolConfig *UserPoolConfig `locationName:"userPoolConfig" type:"structure"`
5249
5250	// A flag indicating whether to enable X-Ray tracing for the GraphqlApi.
5251	XrayEnabled *bool `locationName:"xrayEnabled" type:"boolean"`
5252}
5253
5254// String returns the string representation
5255func (s CreateGraphqlApiInput) String() string {
5256	return awsutil.Prettify(s)
5257}
5258
5259// GoString returns the string representation
5260func (s CreateGraphqlApiInput) GoString() string {
5261	return s.String()
5262}
5263
5264// Validate inspects the fields of the type to determine if they are valid.
5265func (s *CreateGraphqlApiInput) Validate() error {
5266	invalidParams := request.ErrInvalidParams{Context: "CreateGraphqlApiInput"}
5267	if s.AuthenticationType == nil {
5268		invalidParams.Add(request.NewErrParamRequired("AuthenticationType"))
5269	}
5270	if s.Name == nil {
5271		invalidParams.Add(request.NewErrParamRequired("Name"))
5272	}
5273	if s.Tags != nil && len(s.Tags) < 1 {
5274		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
5275	}
5276	if s.AdditionalAuthenticationProviders != nil {
5277		for i, v := range s.AdditionalAuthenticationProviders {
5278			if v == nil {
5279				continue
5280			}
5281			if err := v.Validate(); err != nil {
5282				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AdditionalAuthenticationProviders", i), err.(request.ErrInvalidParams))
5283			}
5284		}
5285	}
5286	if s.LogConfig != nil {
5287		if err := s.LogConfig.Validate(); err != nil {
5288			invalidParams.AddNested("LogConfig", err.(request.ErrInvalidParams))
5289		}
5290	}
5291	if s.OpenIDConnectConfig != nil {
5292		if err := s.OpenIDConnectConfig.Validate(); err != nil {
5293			invalidParams.AddNested("OpenIDConnectConfig", err.(request.ErrInvalidParams))
5294		}
5295	}
5296	if s.UserPoolConfig != nil {
5297		if err := s.UserPoolConfig.Validate(); err != nil {
5298			invalidParams.AddNested("UserPoolConfig", err.(request.ErrInvalidParams))
5299		}
5300	}
5301
5302	if invalidParams.Len() > 0 {
5303		return invalidParams
5304	}
5305	return nil
5306}
5307
5308// SetAdditionalAuthenticationProviders sets the AdditionalAuthenticationProviders field's value.
5309func (s *CreateGraphqlApiInput) SetAdditionalAuthenticationProviders(v []*AdditionalAuthenticationProvider) *CreateGraphqlApiInput {
5310	s.AdditionalAuthenticationProviders = v
5311	return s
5312}
5313
5314// SetAuthenticationType sets the AuthenticationType field's value.
5315func (s *CreateGraphqlApiInput) SetAuthenticationType(v string) *CreateGraphqlApiInput {
5316	s.AuthenticationType = &v
5317	return s
5318}
5319
5320// SetLogConfig sets the LogConfig field's value.
5321func (s *CreateGraphqlApiInput) SetLogConfig(v *LogConfig) *CreateGraphqlApiInput {
5322	s.LogConfig = v
5323	return s
5324}
5325
5326// SetName sets the Name field's value.
5327func (s *CreateGraphqlApiInput) SetName(v string) *CreateGraphqlApiInput {
5328	s.Name = &v
5329	return s
5330}
5331
5332// SetOpenIDConnectConfig sets the OpenIDConnectConfig field's value.
5333func (s *CreateGraphqlApiInput) SetOpenIDConnectConfig(v *OpenIDConnectConfig) *CreateGraphqlApiInput {
5334	s.OpenIDConnectConfig = v
5335	return s
5336}
5337
5338// SetTags sets the Tags field's value.
5339func (s *CreateGraphqlApiInput) SetTags(v map[string]*string) *CreateGraphqlApiInput {
5340	s.Tags = v
5341	return s
5342}
5343
5344// SetUserPoolConfig sets the UserPoolConfig field's value.
5345func (s *CreateGraphqlApiInput) SetUserPoolConfig(v *UserPoolConfig) *CreateGraphqlApiInput {
5346	s.UserPoolConfig = v
5347	return s
5348}
5349
5350// SetXrayEnabled sets the XrayEnabled field's value.
5351func (s *CreateGraphqlApiInput) SetXrayEnabled(v bool) *CreateGraphqlApiInput {
5352	s.XrayEnabled = &v
5353	return s
5354}
5355
5356type CreateGraphqlApiOutput struct {
5357	_ struct{} `type:"structure"`
5358
5359	// The GraphqlApi.
5360	GraphqlApi *GraphqlApi `locationName:"graphqlApi" type:"structure"`
5361}
5362
5363// String returns the string representation
5364func (s CreateGraphqlApiOutput) String() string {
5365	return awsutil.Prettify(s)
5366}
5367
5368// GoString returns the string representation
5369func (s CreateGraphqlApiOutput) GoString() string {
5370	return s.String()
5371}
5372
5373// SetGraphqlApi sets the GraphqlApi field's value.
5374func (s *CreateGraphqlApiOutput) SetGraphqlApi(v *GraphqlApi) *CreateGraphqlApiOutput {
5375	s.GraphqlApi = v
5376	return s
5377}
5378
5379type CreateResolverInput struct {
5380	_ struct{} `type:"structure"`
5381
5382	// The ID for the GraphQL API for which the resolver is being created.
5383	//
5384	// ApiId is a required field
5385	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
5386
5387	// The caching configuration for the resolver.
5388	CachingConfig *CachingConfig `locationName:"cachingConfig" type:"structure"`
5389
5390	// The name of the data source for which the resolver is being created.
5391	DataSourceName *string `locationName:"dataSourceName" min:"1" type:"string"`
5392
5393	// The name of the field to attach the resolver to.
5394	//
5395	// FieldName is a required field
5396	FieldName *string `locationName:"fieldName" min:"1" type:"string" required:"true"`
5397
5398	// The resolver type.
5399	//
5400	//    * UNIT: A UNIT resolver type. A UNIT resolver is the default resolver
5401	//    type. A UNIT resolver enables you to execute a GraphQL query against a
5402	//    single data source.
5403	//
5404	//    * PIPELINE: A PIPELINE resolver type. A PIPELINE resolver enables you
5405	//    to execute a series of Function in a serial manner. You can use a pipeline
5406	//    resolver to execute a GraphQL query against multiple data sources.
5407	Kind *string `locationName:"kind" type:"string" enum:"ResolverKind"`
5408
5409	// The PipelineConfig.
5410	PipelineConfig *PipelineConfig `locationName:"pipelineConfig" type:"structure"`
5411
5412	// The mapping template to be used for requests.
5413	//
5414	// A resolver uses a request mapping template to convert a GraphQL expression
5415	// into a format that a data source can understand. Mapping templates are written
5416	// in Apache Velocity Template Language (VTL).
5417	//
5418	// VTL request mapping templates are optional when using a Lambda data source.
5419	// For all other data sources, VTL request and response mapping templates are
5420	// required.
5421	RequestMappingTemplate *string `locationName:"requestMappingTemplate" min:"1" type:"string"`
5422
5423	// The mapping template to be used for responses from the data source.
5424	ResponseMappingTemplate *string `locationName:"responseMappingTemplate" min:"1" type:"string"`
5425
5426	// The SyncConfig for a resolver attached to a versioned datasource.
5427	SyncConfig *SyncConfig `locationName:"syncConfig" type:"structure"`
5428
5429	// The name of the Type.
5430	//
5431	// TypeName is a required field
5432	TypeName *string `location:"uri" locationName:"typeName" min:"1" type:"string" required:"true"`
5433}
5434
5435// String returns the string representation
5436func (s CreateResolverInput) String() string {
5437	return awsutil.Prettify(s)
5438}
5439
5440// GoString returns the string representation
5441func (s CreateResolverInput) GoString() string {
5442	return s.String()
5443}
5444
5445// Validate inspects the fields of the type to determine if they are valid.
5446func (s *CreateResolverInput) Validate() error {
5447	invalidParams := request.ErrInvalidParams{Context: "CreateResolverInput"}
5448	if s.ApiId == nil {
5449		invalidParams.Add(request.NewErrParamRequired("ApiId"))
5450	}
5451	if s.ApiId != nil && len(*s.ApiId) < 1 {
5452		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
5453	}
5454	if s.DataSourceName != nil && len(*s.DataSourceName) < 1 {
5455		invalidParams.Add(request.NewErrParamMinLen("DataSourceName", 1))
5456	}
5457	if s.FieldName == nil {
5458		invalidParams.Add(request.NewErrParamRequired("FieldName"))
5459	}
5460	if s.FieldName != nil && len(*s.FieldName) < 1 {
5461		invalidParams.Add(request.NewErrParamMinLen("FieldName", 1))
5462	}
5463	if s.RequestMappingTemplate != nil && len(*s.RequestMappingTemplate) < 1 {
5464		invalidParams.Add(request.NewErrParamMinLen("RequestMappingTemplate", 1))
5465	}
5466	if s.ResponseMappingTemplate != nil && len(*s.ResponseMappingTemplate) < 1 {
5467		invalidParams.Add(request.NewErrParamMinLen("ResponseMappingTemplate", 1))
5468	}
5469	if s.TypeName == nil {
5470		invalidParams.Add(request.NewErrParamRequired("TypeName"))
5471	}
5472	if s.TypeName != nil && len(*s.TypeName) < 1 {
5473		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
5474	}
5475
5476	if invalidParams.Len() > 0 {
5477		return invalidParams
5478	}
5479	return nil
5480}
5481
5482// SetApiId sets the ApiId field's value.
5483func (s *CreateResolverInput) SetApiId(v string) *CreateResolverInput {
5484	s.ApiId = &v
5485	return s
5486}
5487
5488// SetCachingConfig sets the CachingConfig field's value.
5489func (s *CreateResolverInput) SetCachingConfig(v *CachingConfig) *CreateResolverInput {
5490	s.CachingConfig = v
5491	return s
5492}
5493
5494// SetDataSourceName sets the DataSourceName field's value.
5495func (s *CreateResolverInput) SetDataSourceName(v string) *CreateResolverInput {
5496	s.DataSourceName = &v
5497	return s
5498}
5499
5500// SetFieldName sets the FieldName field's value.
5501func (s *CreateResolverInput) SetFieldName(v string) *CreateResolverInput {
5502	s.FieldName = &v
5503	return s
5504}
5505
5506// SetKind sets the Kind field's value.
5507func (s *CreateResolverInput) SetKind(v string) *CreateResolverInput {
5508	s.Kind = &v
5509	return s
5510}
5511
5512// SetPipelineConfig sets the PipelineConfig field's value.
5513func (s *CreateResolverInput) SetPipelineConfig(v *PipelineConfig) *CreateResolverInput {
5514	s.PipelineConfig = v
5515	return s
5516}
5517
5518// SetRequestMappingTemplate sets the RequestMappingTemplate field's value.
5519func (s *CreateResolverInput) SetRequestMappingTemplate(v string) *CreateResolverInput {
5520	s.RequestMappingTemplate = &v
5521	return s
5522}
5523
5524// SetResponseMappingTemplate sets the ResponseMappingTemplate field's value.
5525func (s *CreateResolverInput) SetResponseMappingTemplate(v string) *CreateResolverInput {
5526	s.ResponseMappingTemplate = &v
5527	return s
5528}
5529
5530// SetSyncConfig sets the SyncConfig field's value.
5531func (s *CreateResolverInput) SetSyncConfig(v *SyncConfig) *CreateResolverInput {
5532	s.SyncConfig = v
5533	return s
5534}
5535
5536// SetTypeName sets the TypeName field's value.
5537func (s *CreateResolverInput) SetTypeName(v string) *CreateResolverInput {
5538	s.TypeName = &v
5539	return s
5540}
5541
5542type CreateResolverOutput struct {
5543	_ struct{} `type:"structure"`
5544
5545	// The Resolver object.
5546	Resolver *Resolver `locationName:"resolver" type:"structure"`
5547}
5548
5549// String returns the string representation
5550func (s CreateResolverOutput) String() string {
5551	return awsutil.Prettify(s)
5552}
5553
5554// GoString returns the string representation
5555func (s CreateResolverOutput) GoString() string {
5556	return s.String()
5557}
5558
5559// SetResolver sets the Resolver field's value.
5560func (s *CreateResolverOutput) SetResolver(v *Resolver) *CreateResolverOutput {
5561	s.Resolver = v
5562	return s
5563}
5564
5565type CreateTypeInput struct {
5566	_ struct{} `type:"structure"`
5567
5568	// The API ID.
5569	//
5570	// ApiId is a required field
5571	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
5572
5573	// The type definition, in GraphQL Schema Definition Language (SDL) format.
5574	//
5575	// For more information, see the GraphQL SDL documentation (http://graphql.org/learn/schema/).
5576	//
5577	// Definition is a required field
5578	Definition *string `locationName:"definition" type:"string" required:"true"`
5579
5580	// The type format: SDL or JSON.
5581	//
5582	// Format is a required field
5583	Format *string `locationName:"format" type:"string" required:"true" enum:"TypeDefinitionFormat"`
5584}
5585
5586// String returns the string representation
5587func (s CreateTypeInput) String() string {
5588	return awsutil.Prettify(s)
5589}
5590
5591// GoString returns the string representation
5592func (s CreateTypeInput) GoString() string {
5593	return s.String()
5594}
5595
5596// Validate inspects the fields of the type to determine if they are valid.
5597func (s *CreateTypeInput) Validate() error {
5598	invalidParams := request.ErrInvalidParams{Context: "CreateTypeInput"}
5599	if s.ApiId == nil {
5600		invalidParams.Add(request.NewErrParamRequired("ApiId"))
5601	}
5602	if s.ApiId != nil && len(*s.ApiId) < 1 {
5603		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
5604	}
5605	if s.Definition == nil {
5606		invalidParams.Add(request.NewErrParamRequired("Definition"))
5607	}
5608	if s.Format == nil {
5609		invalidParams.Add(request.NewErrParamRequired("Format"))
5610	}
5611
5612	if invalidParams.Len() > 0 {
5613		return invalidParams
5614	}
5615	return nil
5616}
5617
5618// SetApiId sets the ApiId field's value.
5619func (s *CreateTypeInput) SetApiId(v string) *CreateTypeInput {
5620	s.ApiId = &v
5621	return s
5622}
5623
5624// SetDefinition sets the Definition field's value.
5625func (s *CreateTypeInput) SetDefinition(v string) *CreateTypeInput {
5626	s.Definition = &v
5627	return s
5628}
5629
5630// SetFormat sets the Format field's value.
5631func (s *CreateTypeInput) SetFormat(v string) *CreateTypeInput {
5632	s.Format = &v
5633	return s
5634}
5635
5636type CreateTypeOutput struct {
5637	_ struct{} `type:"structure"`
5638
5639	// The Type object.
5640	Type *Type `locationName:"type" type:"structure"`
5641}
5642
5643// String returns the string representation
5644func (s CreateTypeOutput) String() string {
5645	return awsutil.Prettify(s)
5646}
5647
5648// GoString returns the string representation
5649func (s CreateTypeOutput) GoString() string {
5650	return s.String()
5651}
5652
5653// SetType sets the Type field's value.
5654func (s *CreateTypeOutput) SetType(v *Type) *CreateTypeOutput {
5655	s.Type = v
5656	return s
5657}
5658
5659// Describes a data source.
5660type DataSource struct {
5661	_ struct{} `type:"structure"`
5662
5663	// The data source ARN.
5664	DataSourceArn *string `locationName:"dataSourceArn" type:"string"`
5665
5666	// The description of the data source.
5667	Description *string `locationName:"description" type:"string"`
5668
5669	// Amazon DynamoDB settings.
5670	DynamodbConfig *DynamodbDataSourceConfig `locationName:"dynamodbConfig" type:"structure"`
5671
5672	// Amazon Elasticsearch Service settings.
5673	ElasticsearchConfig *ElasticsearchDataSourceConfig `locationName:"elasticsearchConfig" type:"structure"`
5674
5675	// HTTP endpoint settings.
5676	HttpConfig *HttpDataSourceConfig `locationName:"httpConfig" type:"structure"`
5677
5678	// AWS Lambda settings.
5679	LambdaConfig *LambdaDataSourceConfig `locationName:"lambdaConfig" type:"structure"`
5680
5681	// The name of the data source.
5682	Name *string `locationName:"name" min:"1" type:"string"`
5683
5684	// Relational database settings.
5685	RelationalDatabaseConfig *RelationalDatabaseDataSourceConfig `locationName:"relationalDatabaseConfig" type:"structure"`
5686
5687	// The AWS IAM service role ARN for the data source. The system assumes this
5688	// role when accessing the data source.
5689	ServiceRoleArn *string `locationName:"serviceRoleArn" type:"string"`
5690
5691	// The type of the data source.
5692	//
5693	//    * AMAZON_DYNAMODB: The data source is an Amazon DynamoDB table.
5694	//
5695	//    * AMAZON_ELASTICSEARCH: The data source is an Amazon Elasticsearch Service
5696	//    domain.
5697	//
5698	//    * AWS_LAMBDA: The data source is an AWS Lambda function.
5699	//
5700	//    * NONE: There is no data source. This type is used when you wish to invoke
5701	//    a GraphQL operation without connecting to a data source, such as performing
5702	//    data transformation with resolvers or triggering a subscription to be
5703	//    invoked from a mutation.
5704	//
5705	//    * HTTP: The data source is an HTTP endpoint.
5706	//
5707	//    * RELATIONAL_DATABASE: The data source is a relational database.
5708	Type *string `locationName:"type" type:"string" enum:"DataSourceType"`
5709}
5710
5711// String returns the string representation
5712func (s DataSource) String() string {
5713	return awsutil.Prettify(s)
5714}
5715
5716// GoString returns the string representation
5717func (s DataSource) GoString() string {
5718	return s.String()
5719}
5720
5721// SetDataSourceArn sets the DataSourceArn field's value.
5722func (s *DataSource) SetDataSourceArn(v string) *DataSource {
5723	s.DataSourceArn = &v
5724	return s
5725}
5726
5727// SetDescription sets the Description field's value.
5728func (s *DataSource) SetDescription(v string) *DataSource {
5729	s.Description = &v
5730	return s
5731}
5732
5733// SetDynamodbConfig sets the DynamodbConfig field's value.
5734func (s *DataSource) SetDynamodbConfig(v *DynamodbDataSourceConfig) *DataSource {
5735	s.DynamodbConfig = v
5736	return s
5737}
5738
5739// SetElasticsearchConfig sets the ElasticsearchConfig field's value.
5740func (s *DataSource) SetElasticsearchConfig(v *ElasticsearchDataSourceConfig) *DataSource {
5741	s.ElasticsearchConfig = v
5742	return s
5743}
5744
5745// SetHttpConfig sets the HttpConfig field's value.
5746func (s *DataSource) SetHttpConfig(v *HttpDataSourceConfig) *DataSource {
5747	s.HttpConfig = v
5748	return s
5749}
5750
5751// SetLambdaConfig sets the LambdaConfig field's value.
5752func (s *DataSource) SetLambdaConfig(v *LambdaDataSourceConfig) *DataSource {
5753	s.LambdaConfig = v
5754	return s
5755}
5756
5757// SetName sets the Name field's value.
5758func (s *DataSource) SetName(v string) *DataSource {
5759	s.Name = &v
5760	return s
5761}
5762
5763// SetRelationalDatabaseConfig sets the RelationalDatabaseConfig field's value.
5764func (s *DataSource) SetRelationalDatabaseConfig(v *RelationalDatabaseDataSourceConfig) *DataSource {
5765	s.RelationalDatabaseConfig = v
5766	return s
5767}
5768
5769// SetServiceRoleArn sets the ServiceRoleArn field's value.
5770func (s *DataSource) SetServiceRoleArn(v string) *DataSource {
5771	s.ServiceRoleArn = &v
5772	return s
5773}
5774
5775// SetType sets the Type field's value.
5776func (s *DataSource) SetType(v string) *DataSource {
5777	s.Type = &v
5778	return s
5779}
5780
5781// Represents the input of a DeleteApiCache operation.
5782type DeleteApiCacheInput struct {
5783	_ struct{} `type:"structure"`
5784
5785	// The API ID.
5786	//
5787	// ApiId is a required field
5788	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
5789}
5790
5791// String returns the string representation
5792func (s DeleteApiCacheInput) String() string {
5793	return awsutil.Prettify(s)
5794}
5795
5796// GoString returns the string representation
5797func (s DeleteApiCacheInput) GoString() string {
5798	return s.String()
5799}
5800
5801// Validate inspects the fields of the type to determine if they are valid.
5802func (s *DeleteApiCacheInput) Validate() error {
5803	invalidParams := request.ErrInvalidParams{Context: "DeleteApiCacheInput"}
5804	if s.ApiId == nil {
5805		invalidParams.Add(request.NewErrParamRequired("ApiId"))
5806	}
5807	if s.ApiId != nil && len(*s.ApiId) < 1 {
5808		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
5809	}
5810
5811	if invalidParams.Len() > 0 {
5812		return invalidParams
5813	}
5814	return nil
5815}
5816
5817// SetApiId sets the ApiId field's value.
5818func (s *DeleteApiCacheInput) SetApiId(v string) *DeleteApiCacheInput {
5819	s.ApiId = &v
5820	return s
5821}
5822
5823// Represents the output of a DeleteApiCache operation.
5824type DeleteApiCacheOutput struct {
5825	_ struct{} `type:"structure"`
5826}
5827
5828// String returns the string representation
5829func (s DeleteApiCacheOutput) String() string {
5830	return awsutil.Prettify(s)
5831}
5832
5833// GoString returns the string representation
5834func (s DeleteApiCacheOutput) GoString() string {
5835	return s.String()
5836}
5837
5838type DeleteApiKeyInput struct {
5839	_ struct{} `type:"structure"`
5840
5841	// The API ID.
5842	//
5843	// ApiId is a required field
5844	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
5845
5846	// The ID for the API key.
5847	//
5848	// Id is a required field
5849	Id *string `location:"uri" locationName:"id" type:"string" required:"true"`
5850}
5851
5852// String returns the string representation
5853func (s DeleteApiKeyInput) String() string {
5854	return awsutil.Prettify(s)
5855}
5856
5857// GoString returns the string representation
5858func (s DeleteApiKeyInput) GoString() string {
5859	return s.String()
5860}
5861
5862// Validate inspects the fields of the type to determine if they are valid.
5863func (s *DeleteApiKeyInput) Validate() error {
5864	invalidParams := request.ErrInvalidParams{Context: "DeleteApiKeyInput"}
5865	if s.ApiId == nil {
5866		invalidParams.Add(request.NewErrParamRequired("ApiId"))
5867	}
5868	if s.ApiId != nil && len(*s.ApiId) < 1 {
5869		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
5870	}
5871	if s.Id == nil {
5872		invalidParams.Add(request.NewErrParamRequired("Id"))
5873	}
5874	if s.Id != nil && len(*s.Id) < 1 {
5875		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
5876	}
5877
5878	if invalidParams.Len() > 0 {
5879		return invalidParams
5880	}
5881	return nil
5882}
5883
5884// SetApiId sets the ApiId field's value.
5885func (s *DeleteApiKeyInput) SetApiId(v string) *DeleteApiKeyInput {
5886	s.ApiId = &v
5887	return s
5888}
5889
5890// SetId sets the Id field's value.
5891func (s *DeleteApiKeyInput) SetId(v string) *DeleteApiKeyInput {
5892	s.Id = &v
5893	return s
5894}
5895
5896type DeleteApiKeyOutput struct {
5897	_ struct{} `type:"structure"`
5898}
5899
5900// String returns the string representation
5901func (s DeleteApiKeyOutput) String() string {
5902	return awsutil.Prettify(s)
5903}
5904
5905// GoString returns the string representation
5906func (s DeleteApiKeyOutput) GoString() string {
5907	return s.String()
5908}
5909
5910type DeleteDataSourceInput struct {
5911	_ struct{} `type:"structure"`
5912
5913	// The API ID.
5914	//
5915	// ApiId is a required field
5916	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
5917
5918	// The name of the data source.
5919	//
5920	// Name is a required field
5921	Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"`
5922}
5923
5924// String returns the string representation
5925func (s DeleteDataSourceInput) String() string {
5926	return awsutil.Prettify(s)
5927}
5928
5929// GoString returns the string representation
5930func (s DeleteDataSourceInput) GoString() string {
5931	return s.String()
5932}
5933
5934// Validate inspects the fields of the type to determine if they are valid.
5935func (s *DeleteDataSourceInput) Validate() error {
5936	invalidParams := request.ErrInvalidParams{Context: "DeleteDataSourceInput"}
5937	if s.ApiId == nil {
5938		invalidParams.Add(request.NewErrParamRequired("ApiId"))
5939	}
5940	if s.ApiId != nil && len(*s.ApiId) < 1 {
5941		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
5942	}
5943	if s.Name == nil {
5944		invalidParams.Add(request.NewErrParamRequired("Name"))
5945	}
5946	if s.Name != nil && len(*s.Name) < 1 {
5947		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
5948	}
5949
5950	if invalidParams.Len() > 0 {
5951		return invalidParams
5952	}
5953	return nil
5954}
5955
5956// SetApiId sets the ApiId field's value.
5957func (s *DeleteDataSourceInput) SetApiId(v string) *DeleteDataSourceInput {
5958	s.ApiId = &v
5959	return s
5960}
5961
5962// SetName sets the Name field's value.
5963func (s *DeleteDataSourceInput) SetName(v string) *DeleteDataSourceInput {
5964	s.Name = &v
5965	return s
5966}
5967
5968type DeleteDataSourceOutput struct {
5969	_ struct{} `type:"structure"`
5970}
5971
5972// String returns the string representation
5973func (s DeleteDataSourceOutput) String() string {
5974	return awsutil.Prettify(s)
5975}
5976
5977// GoString returns the string representation
5978func (s DeleteDataSourceOutput) GoString() string {
5979	return s.String()
5980}
5981
5982type DeleteFunctionInput struct {
5983	_ struct{} `type:"structure"`
5984
5985	// The GraphQL API ID.
5986	//
5987	// ApiId is a required field
5988	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
5989
5990	// The Function ID.
5991	//
5992	// FunctionId is a required field
5993	FunctionId *string `location:"uri" locationName:"functionId" min:"1" type:"string" required:"true"`
5994}
5995
5996// String returns the string representation
5997func (s DeleteFunctionInput) String() string {
5998	return awsutil.Prettify(s)
5999}
6000
6001// GoString returns the string representation
6002func (s DeleteFunctionInput) GoString() string {
6003	return s.String()
6004}
6005
6006// Validate inspects the fields of the type to determine if they are valid.
6007func (s *DeleteFunctionInput) Validate() error {
6008	invalidParams := request.ErrInvalidParams{Context: "DeleteFunctionInput"}
6009	if s.ApiId == nil {
6010		invalidParams.Add(request.NewErrParamRequired("ApiId"))
6011	}
6012	if s.ApiId != nil && len(*s.ApiId) < 1 {
6013		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
6014	}
6015	if s.FunctionId == nil {
6016		invalidParams.Add(request.NewErrParamRequired("FunctionId"))
6017	}
6018	if s.FunctionId != nil && len(*s.FunctionId) < 1 {
6019		invalidParams.Add(request.NewErrParamMinLen("FunctionId", 1))
6020	}
6021
6022	if invalidParams.Len() > 0 {
6023		return invalidParams
6024	}
6025	return nil
6026}
6027
6028// SetApiId sets the ApiId field's value.
6029func (s *DeleteFunctionInput) SetApiId(v string) *DeleteFunctionInput {
6030	s.ApiId = &v
6031	return s
6032}
6033
6034// SetFunctionId sets the FunctionId field's value.
6035func (s *DeleteFunctionInput) SetFunctionId(v string) *DeleteFunctionInput {
6036	s.FunctionId = &v
6037	return s
6038}
6039
6040type DeleteFunctionOutput struct {
6041	_ struct{} `type:"structure"`
6042}
6043
6044// String returns the string representation
6045func (s DeleteFunctionOutput) String() string {
6046	return awsutil.Prettify(s)
6047}
6048
6049// GoString returns the string representation
6050func (s DeleteFunctionOutput) GoString() string {
6051	return s.String()
6052}
6053
6054type DeleteGraphqlApiInput struct {
6055	_ struct{} `type:"structure"`
6056
6057	// The API ID.
6058	//
6059	// ApiId is a required field
6060	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
6061}
6062
6063// String returns the string representation
6064func (s DeleteGraphqlApiInput) String() string {
6065	return awsutil.Prettify(s)
6066}
6067
6068// GoString returns the string representation
6069func (s DeleteGraphqlApiInput) GoString() string {
6070	return s.String()
6071}
6072
6073// Validate inspects the fields of the type to determine if they are valid.
6074func (s *DeleteGraphqlApiInput) Validate() error {
6075	invalidParams := request.ErrInvalidParams{Context: "DeleteGraphqlApiInput"}
6076	if s.ApiId == nil {
6077		invalidParams.Add(request.NewErrParamRequired("ApiId"))
6078	}
6079	if s.ApiId != nil && len(*s.ApiId) < 1 {
6080		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
6081	}
6082
6083	if invalidParams.Len() > 0 {
6084		return invalidParams
6085	}
6086	return nil
6087}
6088
6089// SetApiId sets the ApiId field's value.
6090func (s *DeleteGraphqlApiInput) SetApiId(v string) *DeleteGraphqlApiInput {
6091	s.ApiId = &v
6092	return s
6093}
6094
6095type DeleteGraphqlApiOutput struct {
6096	_ struct{} `type:"structure"`
6097}
6098
6099// String returns the string representation
6100func (s DeleteGraphqlApiOutput) String() string {
6101	return awsutil.Prettify(s)
6102}
6103
6104// GoString returns the string representation
6105func (s DeleteGraphqlApiOutput) GoString() string {
6106	return s.String()
6107}
6108
6109type DeleteResolverInput struct {
6110	_ struct{} `type:"structure"`
6111
6112	// The API ID.
6113	//
6114	// ApiId is a required field
6115	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
6116
6117	// The resolver field name.
6118	//
6119	// FieldName is a required field
6120	FieldName *string `location:"uri" locationName:"fieldName" min:"1" type:"string" required:"true"`
6121
6122	// The name of the resolver type.
6123	//
6124	// TypeName is a required field
6125	TypeName *string `location:"uri" locationName:"typeName" min:"1" type:"string" required:"true"`
6126}
6127
6128// String returns the string representation
6129func (s DeleteResolverInput) String() string {
6130	return awsutil.Prettify(s)
6131}
6132
6133// GoString returns the string representation
6134func (s DeleteResolverInput) GoString() string {
6135	return s.String()
6136}
6137
6138// Validate inspects the fields of the type to determine if they are valid.
6139func (s *DeleteResolverInput) Validate() error {
6140	invalidParams := request.ErrInvalidParams{Context: "DeleteResolverInput"}
6141	if s.ApiId == nil {
6142		invalidParams.Add(request.NewErrParamRequired("ApiId"))
6143	}
6144	if s.ApiId != nil && len(*s.ApiId) < 1 {
6145		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
6146	}
6147	if s.FieldName == nil {
6148		invalidParams.Add(request.NewErrParamRequired("FieldName"))
6149	}
6150	if s.FieldName != nil && len(*s.FieldName) < 1 {
6151		invalidParams.Add(request.NewErrParamMinLen("FieldName", 1))
6152	}
6153	if s.TypeName == nil {
6154		invalidParams.Add(request.NewErrParamRequired("TypeName"))
6155	}
6156	if s.TypeName != nil && len(*s.TypeName) < 1 {
6157		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
6158	}
6159
6160	if invalidParams.Len() > 0 {
6161		return invalidParams
6162	}
6163	return nil
6164}
6165
6166// SetApiId sets the ApiId field's value.
6167func (s *DeleteResolverInput) SetApiId(v string) *DeleteResolverInput {
6168	s.ApiId = &v
6169	return s
6170}
6171
6172// SetFieldName sets the FieldName field's value.
6173func (s *DeleteResolverInput) SetFieldName(v string) *DeleteResolverInput {
6174	s.FieldName = &v
6175	return s
6176}
6177
6178// SetTypeName sets the TypeName field's value.
6179func (s *DeleteResolverInput) SetTypeName(v string) *DeleteResolverInput {
6180	s.TypeName = &v
6181	return s
6182}
6183
6184type DeleteResolverOutput struct {
6185	_ struct{} `type:"structure"`
6186}
6187
6188// String returns the string representation
6189func (s DeleteResolverOutput) String() string {
6190	return awsutil.Prettify(s)
6191}
6192
6193// GoString returns the string representation
6194func (s DeleteResolverOutput) GoString() string {
6195	return s.String()
6196}
6197
6198type DeleteTypeInput struct {
6199	_ struct{} `type:"structure"`
6200
6201	// The API ID.
6202	//
6203	// ApiId is a required field
6204	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
6205
6206	// The type name.
6207	//
6208	// TypeName is a required field
6209	TypeName *string `location:"uri" locationName:"typeName" min:"1" type:"string" required:"true"`
6210}
6211
6212// String returns the string representation
6213func (s DeleteTypeInput) String() string {
6214	return awsutil.Prettify(s)
6215}
6216
6217// GoString returns the string representation
6218func (s DeleteTypeInput) GoString() string {
6219	return s.String()
6220}
6221
6222// Validate inspects the fields of the type to determine if they are valid.
6223func (s *DeleteTypeInput) Validate() error {
6224	invalidParams := request.ErrInvalidParams{Context: "DeleteTypeInput"}
6225	if s.ApiId == nil {
6226		invalidParams.Add(request.NewErrParamRequired("ApiId"))
6227	}
6228	if s.ApiId != nil && len(*s.ApiId) < 1 {
6229		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
6230	}
6231	if s.TypeName == nil {
6232		invalidParams.Add(request.NewErrParamRequired("TypeName"))
6233	}
6234	if s.TypeName != nil && len(*s.TypeName) < 1 {
6235		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
6236	}
6237
6238	if invalidParams.Len() > 0 {
6239		return invalidParams
6240	}
6241	return nil
6242}
6243
6244// SetApiId sets the ApiId field's value.
6245func (s *DeleteTypeInput) SetApiId(v string) *DeleteTypeInput {
6246	s.ApiId = &v
6247	return s
6248}
6249
6250// SetTypeName sets the TypeName field's value.
6251func (s *DeleteTypeInput) SetTypeName(v string) *DeleteTypeInput {
6252	s.TypeName = &v
6253	return s
6254}
6255
6256type DeleteTypeOutput struct {
6257	_ struct{} `type:"structure"`
6258}
6259
6260// String returns the string representation
6261func (s DeleteTypeOutput) String() string {
6262	return awsutil.Prettify(s)
6263}
6264
6265// GoString returns the string representation
6266func (s DeleteTypeOutput) GoString() string {
6267	return s.String()
6268}
6269
6270// Describes a Delta Sync configuration.
6271type DeltaSyncConfig struct {
6272	_ struct{} `type:"structure"`
6273
6274	// The number of minutes an Item is stored in the datasource.
6275	BaseTableTTL *int64 `locationName:"baseTableTTL" type:"long"`
6276
6277	// The Delta Sync table name.
6278	DeltaSyncTableName *string `locationName:"deltaSyncTableName" type:"string"`
6279
6280	// The number of minutes a Delta Sync log entry is stored in the Delta Sync
6281	// table.
6282	DeltaSyncTableTTL *int64 `locationName:"deltaSyncTableTTL" type:"long"`
6283}
6284
6285// String returns the string representation
6286func (s DeltaSyncConfig) String() string {
6287	return awsutil.Prettify(s)
6288}
6289
6290// GoString returns the string representation
6291func (s DeltaSyncConfig) GoString() string {
6292	return s.String()
6293}
6294
6295// SetBaseTableTTL sets the BaseTableTTL field's value.
6296func (s *DeltaSyncConfig) SetBaseTableTTL(v int64) *DeltaSyncConfig {
6297	s.BaseTableTTL = &v
6298	return s
6299}
6300
6301// SetDeltaSyncTableName sets the DeltaSyncTableName field's value.
6302func (s *DeltaSyncConfig) SetDeltaSyncTableName(v string) *DeltaSyncConfig {
6303	s.DeltaSyncTableName = &v
6304	return s
6305}
6306
6307// SetDeltaSyncTableTTL sets the DeltaSyncTableTTL field's value.
6308func (s *DeltaSyncConfig) SetDeltaSyncTableTTL(v int64) *DeltaSyncConfig {
6309	s.DeltaSyncTableTTL = &v
6310	return s
6311}
6312
6313// Describes an Amazon DynamoDB data source configuration.
6314type DynamodbDataSourceConfig struct {
6315	_ struct{} `type:"structure"`
6316
6317	// The AWS Region.
6318	//
6319	// AwsRegion is a required field
6320	AwsRegion *string `locationName:"awsRegion" type:"string" required:"true"`
6321
6322	// The DeltaSyncConfig for a versioned datasource.
6323	DeltaSyncConfig *DeltaSyncConfig `locationName:"deltaSyncConfig" type:"structure"`
6324
6325	// The table name.
6326	//
6327	// TableName is a required field
6328	TableName *string `locationName:"tableName" type:"string" required:"true"`
6329
6330	// Set to TRUE to use Amazon Cognito credentials with this data source.
6331	UseCallerCredentials *bool `locationName:"useCallerCredentials" type:"boolean"`
6332
6333	// Set to TRUE to use Conflict Detection and Resolution with this data source.
6334	Versioned *bool `locationName:"versioned" type:"boolean"`
6335}
6336
6337// String returns the string representation
6338func (s DynamodbDataSourceConfig) String() string {
6339	return awsutil.Prettify(s)
6340}
6341
6342// GoString returns the string representation
6343func (s DynamodbDataSourceConfig) GoString() string {
6344	return s.String()
6345}
6346
6347// Validate inspects the fields of the type to determine if they are valid.
6348func (s *DynamodbDataSourceConfig) Validate() error {
6349	invalidParams := request.ErrInvalidParams{Context: "DynamodbDataSourceConfig"}
6350	if s.AwsRegion == nil {
6351		invalidParams.Add(request.NewErrParamRequired("AwsRegion"))
6352	}
6353	if s.TableName == nil {
6354		invalidParams.Add(request.NewErrParamRequired("TableName"))
6355	}
6356
6357	if invalidParams.Len() > 0 {
6358		return invalidParams
6359	}
6360	return nil
6361}
6362
6363// SetAwsRegion sets the AwsRegion field's value.
6364func (s *DynamodbDataSourceConfig) SetAwsRegion(v string) *DynamodbDataSourceConfig {
6365	s.AwsRegion = &v
6366	return s
6367}
6368
6369// SetDeltaSyncConfig sets the DeltaSyncConfig field's value.
6370func (s *DynamodbDataSourceConfig) SetDeltaSyncConfig(v *DeltaSyncConfig) *DynamodbDataSourceConfig {
6371	s.DeltaSyncConfig = v
6372	return s
6373}
6374
6375// SetTableName sets the TableName field's value.
6376func (s *DynamodbDataSourceConfig) SetTableName(v string) *DynamodbDataSourceConfig {
6377	s.TableName = &v
6378	return s
6379}
6380
6381// SetUseCallerCredentials sets the UseCallerCredentials field's value.
6382func (s *DynamodbDataSourceConfig) SetUseCallerCredentials(v bool) *DynamodbDataSourceConfig {
6383	s.UseCallerCredentials = &v
6384	return s
6385}
6386
6387// SetVersioned sets the Versioned field's value.
6388func (s *DynamodbDataSourceConfig) SetVersioned(v bool) *DynamodbDataSourceConfig {
6389	s.Versioned = &v
6390	return s
6391}
6392
6393// Describes an Elasticsearch data source configuration.
6394type ElasticsearchDataSourceConfig struct {
6395	_ struct{} `type:"structure"`
6396
6397	// The AWS Region.
6398	//
6399	// AwsRegion is a required field
6400	AwsRegion *string `locationName:"awsRegion" type:"string" required:"true"`
6401
6402	// The endpoint.
6403	//
6404	// Endpoint is a required field
6405	Endpoint *string `locationName:"endpoint" type:"string" required:"true"`
6406}
6407
6408// String returns the string representation
6409func (s ElasticsearchDataSourceConfig) String() string {
6410	return awsutil.Prettify(s)
6411}
6412
6413// GoString returns the string representation
6414func (s ElasticsearchDataSourceConfig) GoString() string {
6415	return s.String()
6416}
6417
6418// Validate inspects the fields of the type to determine if they are valid.
6419func (s *ElasticsearchDataSourceConfig) Validate() error {
6420	invalidParams := request.ErrInvalidParams{Context: "ElasticsearchDataSourceConfig"}
6421	if s.AwsRegion == nil {
6422		invalidParams.Add(request.NewErrParamRequired("AwsRegion"))
6423	}
6424	if s.Endpoint == nil {
6425		invalidParams.Add(request.NewErrParamRequired("Endpoint"))
6426	}
6427
6428	if invalidParams.Len() > 0 {
6429		return invalidParams
6430	}
6431	return nil
6432}
6433
6434// SetAwsRegion sets the AwsRegion field's value.
6435func (s *ElasticsearchDataSourceConfig) SetAwsRegion(v string) *ElasticsearchDataSourceConfig {
6436	s.AwsRegion = &v
6437	return s
6438}
6439
6440// SetEndpoint sets the Endpoint field's value.
6441func (s *ElasticsearchDataSourceConfig) SetEndpoint(v string) *ElasticsearchDataSourceConfig {
6442	s.Endpoint = &v
6443	return s
6444}
6445
6446// Represents the input of a FlushApiCache operation.
6447type FlushApiCacheInput struct {
6448	_ struct{} `type:"structure"`
6449
6450	// The API ID.
6451	//
6452	// ApiId is a required field
6453	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
6454}
6455
6456// String returns the string representation
6457func (s FlushApiCacheInput) String() string {
6458	return awsutil.Prettify(s)
6459}
6460
6461// GoString returns the string representation
6462func (s FlushApiCacheInput) GoString() string {
6463	return s.String()
6464}
6465
6466// Validate inspects the fields of the type to determine if they are valid.
6467func (s *FlushApiCacheInput) Validate() error {
6468	invalidParams := request.ErrInvalidParams{Context: "FlushApiCacheInput"}
6469	if s.ApiId == nil {
6470		invalidParams.Add(request.NewErrParamRequired("ApiId"))
6471	}
6472	if s.ApiId != nil && len(*s.ApiId) < 1 {
6473		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
6474	}
6475
6476	if invalidParams.Len() > 0 {
6477		return invalidParams
6478	}
6479	return nil
6480}
6481
6482// SetApiId sets the ApiId field's value.
6483func (s *FlushApiCacheInput) SetApiId(v string) *FlushApiCacheInput {
6484	s.ApiId = &v
6485	return s
6486}
6487
6488// Represents the output of a FlushApiCache operation.
6489type FlushApiCacheOutput struct {
6490	_ struct{} `type:"structure"`
6491}
6492
6493// String returns the string representation
6494func (s FlushApiCacheOutput) String() string {
6495	return awsutil.Prettify(s)
6496}
6497
6498// GoString returns the string representation
6499func (s FlushApiCacheOutput) GoString() string {
6500	return s.String()
6501}
6502
6503// A function is a reusable entity. Multiple functions can be used to compose
6504// the resolver logic.
6505type FunctionConfiguration struct {
6506	_ struct{} `type:"structure"`
6507
6508	// The name of the DataSource.
6509	DataSourceName *string `locationName:"dataSourceName" min:"1" type:"string"`
6510
6511	// The Function description.
6512	Description *string `locationName:"description" type:"string"`
6513
6514	// The ARN of the Function object.
6515	FunctionArn *string `locationName:"functionArn" type:"string"`
6516
6517	// A unique ID representing the Function object.
6518	FunctionId *string `locationName:"functionId" type:"string"`
6519
6520	// The version of the request mapping template. Currently only the 2018-05-29
6521	// version of the template is supported.
6522	FunctionVersion *string `locationName:"functionVersion" type:"string"`
6523
6524	// The name of the Function object.
6525	Name *string `locationName:"name" min:"1" type:"string"`
6526
6527	// The Function request mapping template. Functions support only the 2018-05-29
6528	// version of the request mapping template.
6529	RequestMappingTemplate *string `locationName:"requestMappingTemplate" min:"1" type:"string"`
6530
6531	// The Function response mapping template.
6532	ResponseMappingTemplate *string `locationName:"responseMappingTemplate" min:"1" type:"string"`
6533}
6534
6535// String returns the string representation
6536func (s FunctionConfiguration) String() string {
6537	return awsutil.Prettify(s)
6538}
6539
6540// GoString returns the string representation
6541func (s FunctionConfiguration) GoString() string {
6542	return s.String()
6543}
6544
6545// SetDataSourceName sets the DataSourceName field's value.
6546func (s *FunctionConfiguration) SetDataSourceName(v string) *FunctionConfiguration {
6547	s.DataSourceName = &v
6548	return s
6549}
6550
6551// SetDescription sets the Description field's value.
6552func (s *FunctionConfiguration) SetDescription(v string) *FunctionConfiguration {
6553	s.Description = &v
6554	return s
6555}
6556
6557// SetFunctionArn sets the FunctionArn field's value.
6558func (s *FunctionConfiguration) SetFunctionArn(v string) *FunctionConfiguration {
6559	s.FunctionArn = &v
6560	return s
6561}
6562
6563// SetFunctionId sets the FunctionId field's value.
6564func (s *FunctionConfiguration) SetFunctionId(v string) *FunctionConfiguration {
6565	s.FunctionId = &v
6566	return s
6567}
6568
6569// SetFunctionVersion sets the FunctionVersion field's value.
6570func (s *FunctionConfiguration) SetFunctionVersion(v string) *FunctionConfiguration {
6571	s.FunctionVersion = &v
6572	return s
6573}
6574
6575// SetName sets the Name field's value.
6576func (s *FunctionConfiguration) SetName(v string) *FunctionConfiguration {
6577	s.Name = &v
6578	return s
6579}
6580
6581// SetRequestMappingTemplate sets the RequestMappingTemplate field's value.
6582func (s *FunctionConfiguration) SetRequestMappingTemplate(v string) *FunctionConfiguration {
6583	s.RequestMappingTemplate = &v
6584	return s
6585}
6586
6587// SetResponseMappingTemplate sets the ResponseMappingTemplate field's value.
6588func (s *FunctionConfiguration) SetResponseMappingTemplate(v string) *FunctionConfiguration {
6589	s.ResponseMappingTemplate = &v
6590	return s
6591}
6592
6593// Represents the input of a GetApiCache operation.
6594type GetApiCacheInput struct {
6595	_ struct{} `type:"structure"`
6596
6597	// The API ID.
6598	//
6599	// ApiId is a required field
6600	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
6601}
6602
6603// String returns the string representation
6604func (s GetApiCacheInput) String() string {
6605	return awsutil.Prettify(s)
6606}
6607
6608// GoString returns the string representation
6609func (s GetApiCacheInput) GoString() string {
6610	return s.String()
6611}
6612
6613// Validate inspects the fields of the type to determine if they are valid.
6614func (s *GetApiCacheInput) Validate() error {
6615	invalidParams := request.ErrInvalidParams{Context: "GetApiCacheInput"}
6616	if s.ApiId == nil {
6617		invalidParams.Add(request.NewErrParamRequired("ApiId"))
6618	}
6619	if s.ApiId != nil && len(*s.ApiId) < 1 {
6620		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
6621	}
6622
6623	if invalidParams.Len() > 0 {
6624		return invalidParams
6625	}
6626	return nil
6627}
6628
6629// SetApiId sets the ApiId field's value.
6630func (s *GetApiCacheInput) SetApiId(v string) *GetApiCacheInput {
6631	s.ApiId = &v
6632	return s
6633}
6634
6635// Represents the output of a GetApiCache operation.
6636type GetApiCacheOutput struct {
6637	_ struct{} `type:"structure"`
6638
6639	// The ApiCache object.
6640	ApiCache *ApiCache `locationName:"apiCache" type:"structure"`
6641}
6642
6643// String returns the string representation
6644func (s GetApiCacheOutput) String() string {
6645	return awsutil.Prettify(s)
6646}
6647
6648// GoString returns the string representation
6649func (s GetApiCacheOutput) GoString() string {
6650	return s.String()
6651}
6652
6653// SetApiCache sets the ApiCache field's value.
6654func (s *GetApiCacheOutput) SetApiCache(v *ApiCache) *GetApiCacheOutput {
6655	s.ApiCache = v
6656	return s
6657}
6658
6659type GetDataSourceInput struct {
6660	_ struct{} `type:"structure"`
6661
6662	// The API ID.
6663	//
6664	// ApiId is a required field
6665	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
6666
6667	// The name of the data source.
6668	//
6669	// Name is a required field
6670	Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"`
6671}
6672
6673// String returns the string representation
6674func (s GetDataSourceInput) String() string {
6675	return awsutil.Prettify(s)
6676}
6677
6678// GoString returns the string representation
6679func (s GetDataSourceInput) GoString() string {
6680	return s.String()
6681}
6682
6683// Validate inspects the fields of the type to determine if they are valid.
6684func (s *GetDataSourceInput) Validate() error {
6685	invalidParams := request.ErrInvalidParams{Context: "GetDataSourceInput"}
6686	if s.ApiId == nil {
6687		invalidParams.Add(request.NewErrParamRequired("ApiId"))
6688	}
6689	if s.ApiId != nil && len(*s.ApiId) < 1 {
6690		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
6691	}
6692	if s.Name == nil {
6693		invalidParams.Add(request.NewErrParamRequired("Name"))
6694	}
6695	if s.Name != nil && len(*s.Name) < 1 {
6696		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
6697	}
6698
6699	if invalidParams.Len() > 0 {
6700		return invalidParams
6701	}
6702	return nil
6703}
6704
6705// SetApiId sets the ApiId field's value.
6706func (s *GetDataSourceInput) SetApiId(v string) *GetDataSourceInput {
6707	s.ApiId = &v
6708	return s
6709}
6710
6711// SetName sets the Name field's value.
6712func (s *GetDataSourceInput) SetName(v string) *GetDataSourceInput {
6713	s.Name = &v
6714	return s
6715}
6716
6717type GetDataSourceOutput struct {
6718	_ struct{} `type:"structure"`
6719
6720	// The DataSource object.
6721	DataSource *DataSource `locationName:"dataSource" type:"structure"`
6722}
6723
6724// String returns the string representation
6725func (s GetDataSourceOutput) String() string {
6726	return awsutil.Prettify(s)
6727}
6728
6729// GoString returns the string representation
6730func (s GetDataSourceOutput) GoString() string {
6731	return s.String()
6732}
6733
6734// SetDataSource sets the DataSource field's value.
6735func (s *GetDataSourceOutput) SetDataSource(v *DataSource) *GetDataSourceOutput {
6736	s.DataSource = v
6737	return s
6738}
6739
6740type GetFunctionInput struct {
6741	_ struct{} `type:"structure"`
6742
6743	// The GraphQL API ID.
6744	//
6745	// ApiId is a required field
6746	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
6747
6748	// The Function ID.
6749	//
6750	// FunctionId is a required field
6751	FunctionId *string `location:"uri" locationName:"functionId" min:"1" type:"string" required:"true"`
6752}
6753
6754// String returns the string representation
6755func (s GetFunctionInput) String() string {
6756	return awsutil.Prettify(s)
6757}
6758
6759// GoString returns the string representation
6760func (s GetFunctionInput) GoString() string {
6761	return s.String()
6762}
6763
6764// Validate inspects the fields of the type to determine if they are valid.
6765func (s *GetFunctionInput) Validate() error {
6766	invalidParams := request.ErrInvalidParams{Context: "GetFunctionInput"}
6767	if s.ApiId == nil {
6768		invalidParams.Add(request.NewErrParamRequired("ApiId"))
6769	}
6770	if s.ApiId != nil && len(*s.ApiId) < 1 {
6771		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
6772	}
6773	if s.FunctionId == nil {
6774		invalidParams.Add(request.NewErrParamRequired("FunctionId"))
6775	}
6776	if s.FunctionId != nil && len(*s.FunctionId) < 1 {
6777		invalidParams.Add(request.NewErrParamMinLen("FunctionId", 1))
6778	}
6779
6780	if invalidParams.Len() > 0 {
6781		return invalidParams
6782	}
6783	return nil
6784}
6785
6786// SetApiId sets the ApiId field's value.
6787func (s *GetFunctionInput) SetApiId(v string) *GetFunctionInput {
6788	s.ApiId = &v
6789	return s
6790}
6791
6792// SetFunctionId sets the FunctionId field's value.
6793func (s *GetFunctionInput) SetFunctionId(v string) *GetFunctionInput {
6794	s.FunctionId = &v
6795	return s
6796}
6797
6798type GetFunctionOutput struct {
6799	_ struct{} `type:"structure"`
6800
6801	// The Function object.
6802	FunctionConfiguration *FunctionConfiguration `locationName:"functionConfiguration" type:"structure"`
6803}
6804
6805// String returns the string representation
6806func (s GetFunctionOutput) String() string {
6807	return awsutil.Prettify(s)
6808}
6809
6810// GoString returns the string representation
6811func (s GetFunctionOutput) GoString() string {
6812	return s.String()
6813}
6814
6815// SetFunctionConfiguration sets the FunctionConfiguration field's value.
6816func (s *GetFunctionOutput) SetFunctionConfiguration(v *FunctionConfiguration) *GetFunctionOutput {
6817	s.FunctionConfiguration = v
6818	return s
6819}
6820
6821type GetGraphqlApiInput struct {
6822	_ struct{} `type:"structure"`
6823
6824	// The API ID for the GraphQL API.
6825	//
6826	// ApiId is a required field
6827	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
6828}
6829
6830// String returns the string representation
6831func (s GetGraphqlApiInput) String() string {
6832	return awsutil.Prettify(s)
6833}
6834
6835// GoString returns the string representation
6836func (s GetGraphqlApiInput) GoString() string {
6837	return s.String()
6838}
6839
6840// Validate inspects the fields of the type to determine if they are valid.
6841func (s *GetGraphqlApiInput) Validate() error {
6842	invalidParams := request.ErrInvalidParams{Context: "GetGraphqlApiInput"}
6843	if s.ApiId == nil {
6844		invalidParams.Add(request.NewErrParamRequired("ApiId"))
6845	}
6846	if s.ApiId != nil && len(*s.ApiId) < 1 {
6847		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
6848	}
6849
6850	if invalidParams.Len() > 0 {
6851		return invalidParams
6852	}
6853	return nil
6854}
6855
6856// SetApiId sets the ApiId field's value.
6857func (s *GetGraphqlApiInput) SetApiId(v string) *GetGraphqlApiInput {
6858	s.ApiId = &v
6859	return s
6860}
6861
6862type GetGraphqlApiOutput struct {
6863	_ struct{} `type:"structure"`
6864
6865	// The GraphqlApi object.
6866	GraphqlApi *GraphqlApi `locationName:"graphqlApi" type:"structure"`
6867}
6868
6869// String returns the string representation
6870func (s GetGraphqlApiOutput) String() string {
6871	return awsutil.Prettify(s)
6872}
6873
6874// GoString returns the string representation
6875func (s GetGraphqlApiOutput) GoString() string {
6876	return s.String()
6877}
6878
6879// SetGraphqlApi sets the GraphqlApi field's value.
6880func (s *GetGraphqlApiOutput) SetGraphqlApi(v *GraphqlApi) *GetGraphqlApiOutput {
6881	s.GraphqlApi = v
6882	return s
6883}
6884
6885type GetIntrospectionSchemaInput struct {
6886	_ struct{} `type:"structure"`
6887
6888	// The API ID.
6889	//
6890	// ApiId is a required field
6891	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
6892
6893	// The schema format: SDL or JSON.
6894	//
6895	// Format is a required field
6896	Format *string `location:"querystring" locationName:"format" type:"string" required:"true" enum:"OutputType"`
6897
6898	// A flag that specifies whether the schema introspection should contain directives.
6899	IncludeDirectives *bool `location:"querystring" locationName:"includeDirectives" type:"boolean"`
6900}
6901
6902// String returns the string representation
6903func (s GetIntrospectionSchemaInput) String() string {
6904	return awsutil.Prettify(s)
6905}
6906
6907// GoString returns the string representation
6908func (s GetIntrospectionSchemaInput) GoString() string {
6909	return s.String()
6910}
6911
6912// Validate inspects the fields of the type to determine if they are valid.
6913func (s *GetIntrospectionSchemaInput) Validate() error {
6914	invalidParams := request.ErrInvalidParams{Context: "GetIntrospectionSchemaInput"}
6915	if s.ApiId == nil {
6916		invalidParams.Add(request.NewErrParamRequired("ApiId"))
6917	}
6918	if s.ApiId != nil && len(*s.ApiId) < 1 {
6919		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
6920	}
6921	if s.Format == nil {
6922		invalidParams.Add(request.NewErrParamRequired("Format"))
6923	}
6924
6925	if invalidParams.Len() > 0 {
6926		return invalidParams
6927	}
6928	return nil
6929}
6930
6931// SetApiId sets the ApiId field's value.
6932func (s *GetIntrospectionSchemaInput) SetApiId(v string) *GetIntrospectionSchemaInput {
6933	s.ApiId = &v
6934	return s
6935}
6936
6937// SetFormat sets the Format field's value.
6938func (s *GetIntrospectionSchemaInput) SetFormat(v string) *GetIntrospectionSchemaInput {
6939	s.Format = &v
6940	return s
6941}
6942
6943// SetIncludeDirectives sets the IncludeDirectives field's value.
6944func (s *GetIntrospectionSchemaInput) SetIncludeDirectives(v bool) *GetIntrospectionSchemaInput {
6945	s.IncludeDirectives = &v
6946	return s
6947}
6948
6949type GetIntrospectionSchemaOutput struct {
6950	_ struct{} `type:"structure" payload:"Schema"`
6951
6952	// The schema, in GraphQL Schema Definition Language (SDL) format.
6953	//
6954	// For more information, see the GraphQL SDL documentation (http://graphql.org/learn/schema/).
6955	Schema []byte `locationName:"schema" type:"blob"`
6956}
6957
6958// String returns the string representation
6959func (s GetIntrospectionSchemaOutput) String() string {
6960	return awsutil.Prettify(s)
6961}
6962
6963// GoString returns the string representation
6964func (s GetIntrospectionSchemaOutput) GoString() string {
6965	return s.String()
6966}
6967
6968// SetSchema sets the Schema field's value.
6969func (s *GetIntrospectionSchemaOutput) SetSchema(v []byte) *GetIntrospectionSchemaOutput {
6970	s.Schema = v
6971	return s
6972}
6973
6974type GetResolverInput struct {
6975	_ struct{} `type:"structure"`
6976
6977	// The API ID.
6978	//
6979	// ApiId is a required field
6980	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
6981
6982	// The resolver field name.
6983	//
6984	// FieldName is a required field
6985	FieldName *string `location:"uri" locationName:"fieldName" min:"1" type:"string" required:"true"`
6986
6987	// The resolver type name.
6988	//
6989	// TypeName is a required field
6990	TypeName *string `location:"uri" locationName:"typeName" min:"1" type:"string" required:"true"`
6991}
6992
6993// String returns the string representation
6994func (s GetResolverInput) String() string {
6995	return awsutil.Prettify(s)
6996}
6997
6998// GoString returns the string representation
6999func (s GetResolverInput) GoString() string {
7000	return s.String()
7001}
7002
7003// Validate inspects the fields of the type to determine if they are valid.
7004func (s *GetResolverInput) Validate() error {
7005	invalidParams := request.ErrInvalidParams{Context: "GetResolverInput"}
7006	if s.ApiId == nil {
7007		invalidParams.Add(request.NewErrParamRequired("ApiId"))
7008	}
7009	if s.ApiId != nil && len(*s.ApiId) < 1 {
7010		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
7011	}
7012	if s.FieldName == nil {
7013		invalidParams.Add(request.NewErrParamRequired("FieldName"))
7014	}
7015	if s.FieldName != nil && len(*s.FieldName) < 1 {
7016		invalidParams.Add(request.NewErrParamMinLen("FieldName", 1))
7017	}
7018	if s.TypeName == nil {
7019		invalidParams.Add(request.NewErrParamRequired("TypeName"))
7020	}
7021	if s.TypeName != nil && len(*s.TypeName) < 1 {
7022		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
7023	}
7024
7025	if invalidParams.Len() > 0 {
7026		return invalidParams
7027	}
7028	return nil
7029}
7030
7031// SetApiId sets the ApiId field's value.
7032func (s *GetResolverInput) SetApiId(v string) *GetResolverInput {
7033	s.ApiId = &v
7034	return s
7035}
7036
7037// SetFieldName sets the FieldName field's value.
7038func (s *GetResolverInput) SetFieldName(v string) *GetResolverInput {
7039	s.FieldName = &v
7040	return s
7041}
7042
7043// SetTypeName sets the TypeName field's value.
7044func (s *GetResolverInput) SetTypeName(v string) *GetResolverInput {
7045	s.TypeName = &v
7046	return s
7047}
7048
7049type GetResolverOutput struct {
7050	_ struct{} `type:"structure"`
7051
7052	// The Resolver object.
7053	Resolver *Resolver `locationName:"resolver" type:"structure"`
7054}
7055
7056// String returns the string representation
7057func (s GetResolverOutput) String() string {
7058	return awsutil.Prettify(s)
7059}
7060
7061// GoString returns the string representation
7062func (s GetResolverOutput) GoString() string {
7063	return s.String()
7064}
7065
7066// SetResolver sets the Resolver field's value.
7067func (s *GetResolverOutput) SetResolver(v *Resolver) *GetResolverOutput {
7068	s.Resolver = v
7069	return s
7070}
7071
7072type GetSchemaCreationStatusInput struct {
7073	_ struct{} `type:"structure"`
7074
7075	// The API ID.
7076	//
7077	// ApiId is a required field
7078	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
7079}
7080
7081// String returns the string representation
7082func (s GetSchemaCreationStatusInput) String() string {
7083	return awsutil.Prettify(s)
7084}
7085
7086// GoString returns the string representation
7087func (s GetSchemaCreationStatusInput) GoString() string {
7088	return s.String()
7089}
7090
7091// Validate inspects the fields of the type to determine if they are valid.
7092func (s *GetSchemaCreationStatusInput) Validate() error {
7093	invalidParams := request.ErrInvalidParams{Context: "GetSchemaCreationStatusInput"}
7094	if s.ApiId == nil {
7095		invalidParams.Add(request.NewErrParamRequired("ApiId"))
7096	}
7097	if s.ApiId != nil && len(*s.ApiId) < 1 {
7098		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
7099	}
7100
7101	if invalidParams.Len() > 0 {
7102		return invalidParams
7103	}
7104	return nil
7105}
7106
7107// SetApiId sets the ApiId field's value.
7108func (s *GetSchemaCreationStatusInput) SetApiId(v string) *GetSchemaCreationStatusInput {
7109	s.ApiId = &v
7110	return s
7111}
7112
7113type GetSchemaCreationStatusOutput struct {
7114	_ struct{} `type:"structure"`
7115
7116	// Detailed information about the status of the schema creation operation.
7117	Details *string `locationName:"details" type:"string"`
7118
7119	// The current state of the schema (PROCESSING, FAILED, SUCCESS, or NOT_APPLICABLE).
7120	// When the schema is in the ACTIVE state, you can add data.
7121	Status *string `locationName:"status" type:"string" enum:"SchemaStatus"`
7122}
7123
7124// String returns the string representation
7125func (s GetSchemaCreationStatusOutput) String() string {
7126	return awsutil.Prettify(s)
7127}
7128
7129// GoString returns the string representation
7130func (s GetSchemaCreationStatusOutput) GoString() string {
7131	return s.String()
7132}
7133
7134// SetDetails sets the Details field's value.
7135func (s *GetSchemaCreationStatusOutput) SetDetails(v string) *GetSchemaCreationStatusOutput {
7136	s.Details = &v
7137	return s
7138}
7139
7140// SetStatus sets the Status field's value.
7141func (s *GetSchemaCreationStatusOutput) SetStatus(v string) *GetSchemaCreationStatusOutput {
7142	s.Status = &v
7143	return s
7144}
7145
7146type GetTypeInput struct {
7147	_ struct{} `type:"structure"`
7148
7149	// The API ID.
7150	//
7151	// ApiId is a required field
7152	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
7153
7154	// The type format: SDL or JSON.
7155	//
7156	// Format is a required field
7157	Format *string `location:"querystring" locationName:"format" type:"string" required:"true" enum:"TypeDefinitionFormat"`
7158
7159	// The type name.
7160	//
7161	// TypeName is a required field
7162	TypeName *string `location:"uri" locationName:"typeName" min:"1" type:"string" required:"true"`
7163}
7164
7165// String returns the string representation
7166func (s GetTypeInput) String() string {
7167	return awsutil.Prettify(s)
7168}
7169
7170// GoString returns the string representation
7171func (s GetTypeInput) GoString() string {
7172	return s.String()
7173}
7174
7175// Validate inspects the fields of the type to determine if they are valid.
7176func (s *GetTypeInput) Validate() error {
7177	invalidParams := request.ErrInvalidParams{Context: "GetTypeInput"}
7178	if s.ApiId == nil {
7179		invalidParams.Add(request.NewErrParamRequired("ApiId"))
7180	}
7181	if s.ApiId != nil && len(*s.ApiId) < 1 {
7182		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
7183	}
7184	if s.Format == nil {
7185		invalidParams.Add(request.NewErrParamRequired("Format"))
7186	}
7187	if s.TypeName == nil {
7188		invalidParams.Add(request.NewErrParamRequired("TypeName"))
7189	}
7190	if s.TypeName != nil && len(*s.TypeName) < 1 {
7191		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
7192	}
7193
7194	if invalidParams.Len() > 0 {
7195		return invalidParams
7196	}
7197	return nil
7198}
7199
7200// SetApiId sets the ApiId field's value.
7201func (s *GetTypeInput) SetApiId(v string) *GetTypeInput {
7202	s.ApiId = &v
7203	return s
7204}
7205
7206// SetFormat sets the Format field's value.
7207func (s *GetTypeInput) SetFormat(v string) *GetTypeInput {
7208	s.Format = &v
7209	return s
7210}
7211
7212// SetTypeName sets the TypeName field's value.
7213func (s *GetTypeInput) SetTypeName(v string) *GetTypeInput {
7214	s.TypeName = &v
7215	return s
7216}
7217
7218type GetTypeOutput struct {
7219	_ struct{} `type:"structure"`
7220
7221	// The Type object.
7222	Type *Type `locationName:"type" type:"structure"`
7223}
7224
7225// String returns the string representation
7226func (s GetTypeOutput) String() string {
7227	return awsutil.Prettify(s)
7228}
7229
7230// GoString returns the string representation
7231func (s GetTypeOutput) GoString() string {
7232	return s.String()
7233}
7234
7235// SetType sets the Type field's value.
7236func (s *GetTypeOutput) SetType(v *Type) *GetTypeOutput {
7237	s.Type = v
7238	return s
7239}
7240
7241// The GraphQL schema is not valid.
7242type GraphQLSchemaException struct {
7243	_            struct{}                  `type:"structure"`
7244	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7245
7246	Message_ *string `locationName:"message" type:"string"`
7247}
7248
7249// String returns the string representation
7250func (s GraphQLSchemaException) String() string {
7251	return awsutil.Prettify(s)
7252}
7253
7254// GoString returns the string representation
7255func (s GraphQLSchemaException) GoString() string {
7256	return s.String()
7257}
7258
7259func newErrorGraphQLSchemaException(v protocol.ResponseMetadata) error {
7260	return &GraphQLSchemaException{
7261		RespMetadata: v,
7262	}
7263}
7264
7265// Code returns the exception type name.
7266func (s *GraphQLSchemaException) Code() string {
7267	return "GraphQLSchemaException"
7268}
7269
7270// Message returns the exception's message.
7271func (s *GraphQLSchemaException) Message() string {
7272	if s.Message_ != nil {
7273		return *s.Message_
7274	}
7275	return ""
7276}
7277
7278// OrigErr always returns nil, satisfies awserr.Error interface.
7279func (s *GraphQLSchemaException) OrigErr() error {
7280	return nil
7281}
7282
7283func (s *GraphQLSchemaException) Error() string {
7284	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
7285}
7286
7287// Status code returns the HTTP status code for the request's response error.
7288func (s *GraphQLSchemaException) StatusCode() int {
7289	return s.RespMetadata.StatusCode
7290}
7291
7292// RequestID returns the service's response RequestID for request.
7293func (s *GraphQLSchemaException) RequestID() string {
7294	return s.RespMetadata.RequestID
7295}
7296
7297// Describes a GraphQL API.
7298type GraphqlApi struct {
7299	_ struct{} `type:"structure"`
7300
7301	// A list of additional authentication providers for the GraphqlApi API.
7302	AdditionalAuthenticationProviders []*AdditionalAuthenticationProvider `locationName:"additionalAuthenticationProviders" type:"list"`
7303
7304	// The API ID.
7305	ApiId *string `locationName:"apiId" type:"string"`
7306
7307	// The ARN.
7308	Arn *string `locationName:"arn" type:"string"`
7309
7310	// The authentication type.
7311	AuthenticationType *string `locationName:"authenticationType" type:"string" enum:"AuthenticationType"`
7312
7313	// The Amazon CloudWatch Logs configuration.
7314	LogConfig *LogConfig `locationName:"logConfig" type:"structure"`
7315
7316	// The API name.
7317	Name *string `locationName:"name" min:"1" type:"string"`
7318
7319	// The OpenID Connect configuration.
7320	OpenIDConnectConfig *OpenIDConnectConfig `locationName:"openIDConnectConfig" type:"structure"`
7321
7322	// The tags.
7323	Tags map[string]*string `locationName:"tags" min:"1" type:"map"`
7324
7325	// The URIs.
7326	Uris map[string]*string `locationName:"uris" type:"map"`
7327
7328	// The Amazon Cognito user pool configuration.
7329	UserPoolConfig *UserPoolConfig `locationName:"userPoolConfig" type:"structure"`
7330
7331	// The ARN of the AWS Web Application Firewall (WAF) ACL associated with this
7332	// GraphqlApi, if one exists.
7333	WafWebAclArn *string `locationName:"wafWebAclArn" type:"string"`
7334
7335	// A flag representing whether X-Ray tracing is enabled for this GraphqlApi.
7336	XrayEnabled *bool `locationName:"xrayEnabled" type:"boolean"`
7337}
7338
7339// String returns the string representation
7340func (s GraphqlApi) String() string {
7341	return awsutil.Prettify(s)
7342}
7343
7344// GoString returns the string representation
7345func (s GraphqlApi) GoString() string {
7346	return s.String()
7347}
7348
7349// SetAdditionalAuthenticationProviders sets the AdditionalAuthenticationProviders field's value.
7350func (s *GraphqlApi) SetAdditionalAuthenticationProviders(v []*AdditionalAuthenticationProvider) *GraphqlApi {
7351	s.AdditionalAuthenticationProviders = v
7352	return s
7353}
7354
7355// SetApiId sets the ApiId field's value.
7356func (s *GraphqlApi) SetApiId(v string) *GraphqlApi {
7357	s.ApiId = &v
7358	return s
7359}
7360
7361// SetArn sets the Arn field's value.
7362func (s *GraphqlApi) SetArn(v string) *GraphqlApi {
7363	s.Arn = &v
7364	return s
7365}
7366
7367// SetAuthenticationType sets the AuthenticationType field's value.
7368func (s *GraphqlApi) SetAuthenticationType(v string) *GraphqlApi {
7369	s.AuthenticationType = &v
7370	return s
7371}
7372
7373// SetLogConfig sets the LogConfig field's value.
7374func (s *GraphqlApi) SetLogConfig(v *LogConfig) *GraphqlApi {
7375	s.LogConfig = v
7376	return s
7377}
7378
7379// SetName sets the Name field's value.
7380func (s *GraphqlApi) SetName(v string) *GraphqlApi {
7381	s.Name = &v
7382	return s
7383}
7384
7385// SetOpenIDConnectConfig sets the OpenIDConnectConfig field's value.
7386func (s *GraphqlApi) SetOpenIDConnectConfig(v *OpenIDConnectConfig) *GraphqlApi {
7387	s.OpenIDConnectConfig = v
7388	return s
7389}
7390
7391// SetTags sets the Tags field's value.
7392func (s *GraphqlApi) SetTags(v map[string]*string) *GraphqlApi {
7393	s.Tags = v
7394	return s
7395}
7396
7397// SetUris sets the Uris field's value.
7398func (s *GraphqlApi) SetUris(v map[string]*string) *GraphqlApi {
7399	s.Uris = v
7400	return s
7401}
7402
7403// SetUserPoolConfig sets the UserPoolConfig field's value.
7404func (s *GraphqlApi) SetUserPoolConfig(v *UserPoolConfig) *GraphqlApi {
7405	s.UserPoolConfig = v
7406	return s
7407}
7408
7409// SetWafWebAclArn sets the WafWebAclArn field's value.
7410func (s *GraphqlApi) SetWafWebAclArn(v string) *GraphqlApi {
7411	s.WafWebAclArn = &v
7412	return s
7413}
7414
7415// SetXrayEnabled sets the XrayEnabled field's value.
7416func (s *GraphqlApi) SetXrayEnabled(v bool) *GraphqlApi {
7417	s.XrayEnabled = &v
7418	return s
7419}
7420
7421// Describes an HTTP data source configuration.
7422type HttpDataSourceConfig struct {
7423	_ struct{} `type:"structure"`
7424
7425	// The authorization config in case the HTTP endpoint requires authorization.
7426	AuthorizationConfig *AuthorizationConfig `locationName:"authorizationConfig" type:"structure"`
7427
7428	// The HTTP URL endpoint. You can either specify the domain name or IP, and
7429	// port combination, and the URL scheme must be HTTP or HTTPS. If the port is
7430	// not specified, AWS AppSync uses the default port 80 for the HTTP endpoint
7431	// and port 443 for HTTPS endpoints.
7432	Endpoint *string `locationName:"endpoint" type:"string"`
7433}
7434
7435// String returns the string representation
7436func (s HttpDataSourceConfig) String() string {
7437	return awsutil.Prettify(s)
7438}
7439
7440// GoString returns the string representation
7441func (s HttpDataSourceConfig) GoString() string {
7442	return s.String()
7443}
7444
7445// Validate inspects the fields of the type to determine if they are valid.
7446func (s *HttpDataSourceConfig) Validate() error {
7447	invalidParams := request.ErrInvalidParams{Context: "HttpDataSourceConfig"}
7448	if s.AuthorizationConfig != nil {
7449		if err := s.AuthorizationConfig.Validate(); err != nil {
7450			invalidParams.AddNested("AuthorizationConfig", err.(request.ErrInvalidParams))
7451		}
7452	}
7453
7454	if invalidParams.Len() > 0 {
7455		return invalidParams
7456	}
7457	return nil
7458}
7459
7460// SetAuthorizationConfig sets the AuthorizationConfig field's value.
7461func (s *HttpDataSourceConfig) SetAuthorizationConfig(v *AuthorizationConfig) *HttpDataSourceConfig {
7462	s.AuthorizationConfig = v
7463	return s
7464}
7465
7466// SetEndpoint sets the Endpoint field's value.
7467func (s *HttpDataSourceConfig) SetEndpoint(v string) *HttpDataSourceConfig {
7468	s.Endpoint = &v
7469	return s
7470}
7471
7472// An internal AWS AppSync error occurred. Try your request again.
7473type InternalFailureException struct {
7474	_            struct{}                  `type:"structure"`
7475	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7476
7477	Message_ *string `locationName:"message" type:"string"`
7478}
7479
7480// String returns the string representation
7481func (s InternalFailureException) String() string {
7482	return awsutil.Prettify(s)
7483}
7484
7485// GoString returns the string representation
7486func (s InternalFailureException) GoString() string {
7487	return s.String()
7488}
7489
7490func newErrorInternalFailureException(v protocol.ResponseMetadata) error {
7491	return &InternalFailureException{
7492		RespMetadata: v,
7493	}
7494}
7495
7496// Code returns the exception type name.
7497func (s *InternalFailureException) Code() string {
7498	return "InternalFailureException"
7499}
7500
7501// Message returns the exception's message.
7502func (s *InternalFailureException) Message() string {
7503	if s.Message_ != nil {
7504		return *s.Message_
7505	}
7506	return ""
7507}
7508
7509// OrigErr always returns nil, satisfies awserr.Error interface.
7510func (s *InternalFailureException) OrigErr() error {
7511	return nil
7512}
7513
7514func (s *InternalFailureException) Error() string {
7515	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
7516}
7517
7518// Status code returns the HTTP status code for the request's response error.
7519func (s *InternalFailureException) StatusCode() int {
7520	return s.RespMetadata.StatusCode
7521}
7522
7523// RequestID returns the service's response RequestID for request.
7524func (s *InternalFailureException) RequestID() string {
7525	return s.RespMetadata.RequestID
7526}
7527
7528// The LambdaConflictHandlerConfig object when configuring LAMBDA as the Conflict
7529// Handler.
7530type LambdaConflictHandlerConfig struct {
7531	_ struct{} `type:"structure"`
7532
7533	// The Arn for the Lambda function to use as the Conflict Handler.
7534	LambdaConflictHandlerArn *string `locationName:"lambdaConflictHandlerArn" type:"string"`
7535}
7536
7537// String returns the string representation
7538func (s LambdaConflictHandlerConfig) String() string {
7539	return awsutil.Prettify(s)
7540}
7541
7542// GoString returns the string representation
7543func (s LambdaConflictHandlerConfig) GoString() string {
7544	return s.String()
7545}
7546
7547// SetLambdaConflictHandlerArn sets the LambdaConflictHandlerArn field's value.
7548func (s *LambdaConflictHandlerConfig) SetLambdaConflictHandlerArn(v string) *LambdaConflictHandlerConfig {
7549	s.LambdaConflictHandlerArn = &v
7550	return s
7551}
7552
7553// Describes an AWS Lambda data source configuration.
7554type LambdaDataSourceConfig struct {
7555	_ struct{} `type:"structure"`
7556
7557	// The ARN for the Lambda function.
7558	//
7559	// LambdaFunctionArn is a required field
7560	LambdaFunctionArn *string `locationName:"lambdaFunctionArn" type:"string" required:"true"`
7561}
7562
7563// String returns the string representation
7564func (s LambdaDataSourceConfig) String() string {
7565	return awsutil.Prettify(s)
7566}
7567
7568// GoString returns the string representation
7569func (s LambdaDataSourceConfig) GoString() string {
7570	return s.String()
7571}
7572
7573// Validate inspects the fields of the type to determine if they are valid.
7574func (s *LambdaDataSourceConfig) Validate() error {
7575	invalidParams := request.ErrInvalidParams{Context: "LambdaDataSourceConfig"}
7576	if s.LambdaFunctionArn == nil {
7577		invalidParams.Add(request.NewErrParamRequired("LambdaFunctionArn"))
7578	}
7579
7580	if invalidParams.Len() > 0 {
7581		return invalidParams
7582	}
7583	return nil
7584}
7585
7586// SetLambdaFunctionArn sets the LambdaFunctionArn field's value.
7587func (s *LambdaDataSourceConfig) SetLambdaFunctionArn(v string) *LambdaDataSourceConfig {
7588	s.LambdaFunctionArn = &v
7589	return s
7590}
7591
7592// The request exceeded a limit. Try your request again.
7593type LimitExceededException struct {
7594	_            struct{}                  `type:"structure"`
7595	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
7596
7597	Message_ *string `locationName:"message" type:"string"`
7598}
7599
7600// String returns the string representation
7601func (s LimitExceededException) String() string {
7602	return awsutil.Prettify(s)
7603}
7604
7605// GoString returns the string representation
7606func (s LimitExceededException) GoString() string {
7607	return s.String()
7608}
7609
7610func newErrorLimitExceededException(v protocol.ResponseMetadata) error {
7611	return &LimitExceededException{
7612		RespMetadata: v,
7613	}
7614}
7615
7616// Code returns the exception type name.
7617func (s *LimitExceededException) Code() string {
7618	return "LimitExceededException"
7619}
7620
7621// Message returns the exception's message.
7622func (s *LimitExceededException) Message() string {
7623	if s.Message_ != nil {
7624		return *s.Message_
7625	}
7626	return ""
7627}
7628
7629// OrigErr always returns nil, satisfies awserr.Error interface.
7630func (s *LimitExceededException) OrigErr() error {
7631	return nil
7632}
7633
7634func (s *LimitExceededException) Error() string {
7635	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
7636}
7637
7638// Status code returns the HTTP status code for the request's response error.
7639func (s *LimitExceededException) StatusCode() int {
7640	return s.RespMetadata.StatusCode
7641}
7642
7643// RequestID returns the service's response RequestID for request.
7644func (s *LimitExceededException) RequestID() string {
7645	return s.RespMetadata.RequestID
7646}
7647
7648type ListApiKeysInput struct {
7649	_ struct{} `type:"structure"`
7650
7651	// The API ID.
7652	//
7653	// ApiId is a required field
7654	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
7655
7656	// The maximum number of results you want the request to return.
7657	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
7658
7659	// An identifier that was returned from the previous call to this operation,
7660	// which can be used to return the next set of items in the list.
7661	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
7662}
7663
7664// String returns the string representation
7665func (s ListApiKeysInput) String() string {
7666	return awsutil.Prettify(s)
7667}
7668
7669// GoString returns the string representation
7670func (s ListApiKeysInput) GoString() string {
7671	return s.String()
7672}
7673
7674// Validate inspects the fields of the type to determine if they are valid.
7675func (s *ListApiKeysInput) Validate() error {
7676	invalidParams := request.ErrInvalidParams{Context: "ListApiKeysInput"}
7677	if s.ApiId == nil {
7678		invalidParams.Add(request.NewErrParamRequired("ApiId"))
7679	}
7680	if s.ApiId != nil && len(*s.ApiId) < 1 {
7681		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
7682	}
7683	if s.NextToken != nil && len(*s.NextToken) < 1 {
7684		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7685	}
7686
7687	if invalidParams.Len() > 0 {
7688		return invalidParams
7689	}
7690	return nil
7691}
7692
7693// SetApiId sets the ApiId field's value.
7694func (s *ListApiKeysInput) SetApiId(v string) *ListApiKeysInput {
7695	s.ApiId = &v
7696	return s
7697}
7698
7699// SetMaxResults sets the MaxResults field's value.
7700func (s *ListApiKeysInput) SetMaxResults(v int64) *ListApiKeysInput {
7701	s.MaxResults = &v
7702	return s
7703}
7704
7705// SetNextToken sets the NextToken field's value.
7706func (s *ListApiKeysInput) SetNextToken(v string) *ListApiKeysInput {
7707	s.NextToken = &v
7708	return s
7709}
7710
7711type ListApiKeysOutput struct {
7712	_ struct{} `type:"structure"`
7713
7714	// The ApiKey objects.
7715	ApiKeys []*ApiKey `locationName:"apiKeys" type:"list"`
7716
7717	// An identifier to be passed in the next request to this operation to return
7718	// the next set of items in the list.
7719	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
7720}
7721
7722// String returns the string representation
7723func (s ListApiKeysOutput) String() string {
7724	return awsutil.Prettify(s)
7725}
7726
7727// GoString returns the string representation
7728func (s ListApiKeysOutput) GoString() string {
7729	return s.String()
7730}
7731
7732// SetApiKeys sets the ApiKeys field's value.
7733func (s *ListApiKeysOutput) SetApiKeys(v []*ApiKey) *ListApiKeysOutput {
7734	s.ApiKeys = v
7735	return s
7736}
7737
7738// SetNextToken sets the NextToken field's value.
7739func (s *ListApiKeysOutput) SetNextToken(v string) *ListApiKeysOutput {
7740	s.NextToken = &v
7741	return s
7742}
7743
7744type ListDataSourcesInput struct {
7745	_ struct{} `type:"structure"`
7746
7747	// The API ID.
7748	//
7749	// ApiId is a required field
7750	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
7751
7752	// The maximum number of results you want the request to return.
7753	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
7754
7755	// An identifier that was returned from the previous call to this operation,
7756	// which can be used to return the next set of items in the list.
7757	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
7758}
7759
7760// String returns the string representation
7761func (s ListDataSourcesInput) String() string {
7762	return awsutil.Prettify(s)
7763}
7764
7765// GoString returns the string representation
7766func (s ListDataSourcesInput) GoString() string {
7767	return s.String()
7768}
7769
7770// Validate inspects the fields of the type to determine if they are valid.
7771func (s *ListDataSourcesInput) Validate() error {
7772	invalidParams := request.ErrInvalidParams{Context: "ListDataSourcesInput"}
7773	if s.ApiId == nil {
7774		invalidParams.Add(request.NewErrParamRequired("ApiId"))
7775	}
7776	if s.ApiId != nil && len(*s.ApiId) < 1 {
7777		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
7778	}
7779	if s.NextToken != nil && len(*s.NextToken) < 1 {
7780		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7781	}
7782
7783	if invalidParams.Len() > 0 {
7784		return invalidParams
7785	}
7786	return nil
7787}
7788
7789// SetApiId sets the ApiId field's value.
7790func (s *ListDataSourcesInput) SetApiId(v string) *ListDataSourcesInput {
7791	s.ApiId = &v
7792	return s
7793}
7794
7795// SetMaxResults sets the MaxResults field's value.
7796func (s *ListDataSourcesInput) SetMaxResults(v int64) *ListDataSourcesInput {
7797	s.MaxResults = &v
7798	return s
7799}
7800
7801// SetNextToken sets the NextToken field's value.
7802func (s *ListDataSourcesInput) SetNextToken(v string) *ListDataSourcesInput {
7803	s.NextToken = &v
7804	return s
7805}
7806
7807type ListDataSourcesOutput struct {
7808	_ struct{} `type:"structure"`
7809
7810	// The DataSource objects.
7811	DataSources []*DataSource `locationName:"dataSources" type:"list"`
7812
7813	// An identifier to be passed in the next request to this operation to return
7814	// the next set of items in the list.
7815	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
7816}
7817
7818// String returns the string representation
7819func (s ListDataSourcesOutput) String() string {
7820	return awsutil.Prettify(s)
7821}
7822
7823// GoString returns the string representation
7824func (s ListDataSourcesOutput) GoString() string {
7825	return s.String()
7826}
7827
7828// SetDataSources sets the DataSources field's value.
7829func (s *ListDataSourcesOutput) SetDataSources(v []*DataSource) *ListDataSourcesOutput {
7830	s.DataSources = v
7831	return s
7832}
7833
7834// SetNextToken sets the NextToken field's value.
7835func (s *ListDataSourcesOutput) SetNextToken(v string) *ListDataSourcesOutput {
7836	s.NextToken = &v
7837	return s
7838}
7839
7840type ListFunctionsInput struct {
7841	_ struct{} `type:"structure"`
7842
7843	// The GraphQL API ID.
7844	//
7845	// ApiId is a required field
7846	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
7847
7848	// The maximum number of results you want the request to return.
7849	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
7850
7851	// An identifier that was returned from the previous call to this operation,
7852	// which can be used to return the next set of items in the list.
7853	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
7854}
7855
7856// String returns the string representation
7857func (s ListFunctionsInput) String() string {
7858	return awsutil.Prettify(s)
7859}
7860
7861// GoString returns the string representation
7862func (s ListFunctionsInput) GoString() string {
7863	return s.String()
7864}
7865
7866// Validate inspects the fields of the type to determine if they are valid.
7867func (s *ListFunctionsInput) Validate() error {
7868	invalidParams := request.ErrInvalidParams{Context: "ListFunctionsInput"}
7869	if s.ApiId == nil {
7870		invalidParams.Add(request.NewErrParamRequired("ApiId"))
7871	}
7872	if s.ApiId != nil && len(*s.ApiId) < 1 {
7873		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
7874	}
7875	if s.NextToken != nil && len(*s.NextToken) < 1 {
7876		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7877	}
7878
7879	if invalidParams.Len() > 0 {
7880		return invalidParams
7881	}
7882	return nil
7883}
7884
7885// SetApiId sets the ApiId field's value.
7886func (s *ListFunctionsInput) SetApiId(v string) *ListFunctionsInput {
7887	s.ApiId = &v
7888	return s
7889}
7890
7891// SetMaxResults sets the MaxResults field's value.
7892func (s *ListFunctionsInput) SetMaxResults(v int64) *ListFunctionsInput {
7893	s.MaxResults = &v
7894	return s
7895}
7896
7897// SetNextToken sets the NextToken field's value.
7898func (s *ListFunctionsInput) SetNextToken(v string) *ListFunctionsInput {
7899	s.NextToken = &v
7900	return s
7901}
7902
7903type ListFunctionsOutput struct {
7904	_ struct{} `type:"structure"`
7905
7906	// A list of Function objects.
7907	Functions []*FunctionConfiguration `locationName:"functions" type:"list"`
7908
7909	// An identifier that was returned from the previous call to this operation,
7910	// which can be used to return the next set of items in the list.
7911	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
7912}
7913
7914// String returns the string representation
7915func (s ListFunctionsOutput) String() string {
7916	return awsutil.Prettify(s)
7917}
7918
7919// GoString returns the string representation
7920func (s ListFunctionsOutput) GoString() string {
7921	return s.String()
7922}
7923
7924// SetFunctions sets the Functions field's value.
7925func (s *ListFunctionsOutput) SetFunctions(v []*FunctionConfiguration) *ListFunctionsOutput {
7926	s.Functions = v
7927	return s
7928}
7929
7930// SetNextToken sets the NextToken field's value.
7931func (s *ListFunctionsOutput) SetNextToken(v string) *ListFunctionsOutput {
7932	s.NextToken = &v
7933	return s
7934}
7935
7936type ListGraphqlApisInput struct {
7937	_ struct{} `type:"structure"`
7938
7939	// The maximum number of results you want the request to return.
7940	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
7941
7942	// An identifier that was returned from the previous call to this operation,
7943	// which can be used to return the next set of items in the list.
7944	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
7945}
7946
7947// String returns the string representation
7948func (s ListGraphqlApisInput) String() string {
7949	return awsutil.Prettify(s)
7950}
7951
7952// GoString returns the string representation
7953func (s ListGraphqlApisInput) GoString() string {
7954	return s.String()
7955}
7956
7957// Validate inspects the fields of the type to determine if they are valid.
7958func (s *ListGraphqlApisInput) Validate() error {
7959	invalidParams := request.ErrInvalidParams{Context: "ListGraphqlApisInput"}
7960	if s.NextToken != nil && len(*s.NextToken) < 1 {
7961		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
7962	}
7963
7964	if invalidParams.Len() > 0 {
7965		return invalidParams
7966	}
7967	return nil
7968}
7969
7970// SetMaxResults sets the MaxResults field's value.
7971func (s *ListGraphqlApisInput) SetMaxResults(v int64) *ListGraphqlApisInput {
7972	s.MaxResults = &v
7973	return s
7974}
7975
7976// SetNextToken sets the NextToken field's value.
7977func (s *ListGraphqlApisInput) SetNextToken(v string) *ListGraphqlApisInput {
7978	s.NextToken = &v
7979	return s
7980}
7981
7982type ListGraphqlApisOutput struct {
7983	_ struct{} `type:"structure"`
7984
7985	// The GraphqlApi objects.
7986	GraphqlApis []*GraphqlApi `locationName:"graphqlApis" type:"list"`
7987
7988	// An identifier to be passed in the next request to this operation to return
7989	// the next set of items in the list.
7990	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
7991}
7992
7993// String returns the string representation
7994func (s ListGraphqlApisOutput) String() string {
7995	return awsutil.Prettify(s)
7996}
7997
7998// GoString returns the string representation
7999func (s ListGraphqlApisOutput) GoString() string {
8000	return s.String()
8001}
8002
8003// SetGraphqlApis sets the GraphqlApis field's value.
8004func (s *ListGraphqlApisOutput) SetGraphqlApis(v []*GraphqlApi) *ListGraphqlApisOutput {
8005	s.GraphqlApis = v
8006	return s
8007}
8008
8009// SetNextToken sets the NextToken field's value.
8010func (s *ListGraphqlApisOutput) SetNextToken(v string) *ListGraphqlApisOutput {
8011	s.NextToken = &v
8012	return s
8013}
8014
8015type ListResolversByFunctionInput struct {
8016	_ struct{} `type:"structure"`
8017
8018	// The API ID.
8019	//
8020	// ApiId is a required field
8021	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
8022
8023	// The Function ID.
8024	//
8025	// FunctionId is a required field
8026	FunctionId *string `location:"uri" locationName:"functionId" type:"string" required:"true"`
8027
8028	// The maximum number of results you want the request to return.
8029	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
8030
8031	// An identifier that was returned from the previous call to this operation,
8032	// which you can use to return the next set of items in the list.
8033	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
8034}
8035
8036// String returns the string representation
8037func (s ListResolversByFunctionInput) String() string {
8038	return awsutil.Prettify(s)
8039}
8040
8041// GoString returns the string representation
8042func (s ListResolversByFunctionInput) GoString() string {
8043	return s.String()
8044}
8045
8046// Validate inspects the fields of the type to determine if they are valid.
8047func (s *ListResolversByFunctionInput) Validate() error {
8048	invalidParams := request.ErrInvalidParams{Context: "ListResolversByFunctionInput"}
8049	if s.ApiId == nil {
8050		invalidParams.Add(request.NewErrParamRequired("ApiId"))
8051	}
8052	if s.ApiId != nil && len(*s.ApiId) < 1 {
8053		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
8054	}
8055	if s.FunctionId == nil {
8056		invalidParams.Add(request.NewErrParamRequired("FunctionId"))
8057	}
8058	if s.FunctionId != nil && len(*s.FunctionId) < 1 {
8059		invalidParams.Add(request.NewErrParamMinLen("FunctionId", 1))
8060	}
8061	if s.NextToken != nil && len(*s.NextToken) < 1 {
8062		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
8063	}
8064
8065	if invalidParams.Len() > 0 {
8066		return invalidParams
8067	}
8068	return nil
8069}
8070
8071// SetApiId sets the ApiId field's value.
8072func (s *ListResolversByFunctionInput) SetApiId(v string) *ListResolversByFunctionInput {
8073	s.ApiId = &v
8074	return s
8075}
8076
8077// SetFunctionId sets the FunctionId field's value.
8078func (s *ListResolversByFunctionInput) SetFunctionId(v string) *ListResolversByFunctionInput {
8079	s.FunctionId = &v
8080	return s
8081}
8082
8083// SetMaxResults sets the MaxResults field's value.
8084func (s *ListResolversByFunctionInput) SetMaxResults(v int64) *ListResolversByFunctionInput {
8085	s.MaxResults = &v
8086	return s
8087}
8088
8089// SetNextToken sets the NextToken field's value.
8090func (s *ListResolversByFunctionInput) SetNextToken(v string) *ListResolversByFunctionInput {
8091	s.NextToken = &v
8092	return s
8093}
8094
8095type ListResolversByFunctionOutput struct {
8096	_ struct{} `type:"structure"`
8097
8098	// An identifier that can be used to return the next set of items in the list.
8099	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8100
8101	// The list of resolvers.
8102	Resolvers []*Resolver `locationName:"resolvers" type:"list"`
8103}
8104
8105// String returns the string representation
8106func (s ListResolversByFunctionOutput) String() string {
8107	return awsutil.Prettify(s)
8108}
8109
8110// GoString returns the string representation
8111func (s ListResolversByFunctionOutput) GoString() string {
8112	return s.String()
8113}
8114
8115// SetNextToken sets the NextToken field's value.
8116func (s *ListResolversByFunctionOutput) SetNextToken(v string) *ListResolversByFunctionOutput {
8117	s.NextToken = &v
8118	return s
8119}
8120
8121// SetResolvers sets the Resolvers field's value.
8122func (s *ListResolversByFunctionOutput) SetResolvers(v []*Resolver) *ListResolversByFunctionOutput {
8123	s.Resolvers = v
8124	return s
8125}
8126
8127type ListResolversInput struct {
8128	_ struct{} `type:"structure"`
8129
8130	// The API ID.
8131	//
8132	// ApiId is a required field
8133	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
8134
8135	// The maximum number of results you want the request to return.
8136	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
8137
8138	// An identifier that was returned from the previous call to this operation,
8139	// which can be used to return the next set of items in the list.
8140	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
8141
8142	// The type name.
8143	//
8144	// TypeName is a required field
8145	TypeName *string `location:"uri" locationName:"typeName" type:"string" required:"true"`
8146}
8147
8148// String returns the string representation
8149func (s ListResolversInput) String() string {
8150	return awsutil.Prettify(s)
8151}
8152
8153// GoString returns the string representation
8154func (s ListResolversInput) GoString() string {
8155	return s.String()
8156}
8157
8158// Validate inspects the fields of the type to determine if they are valid.
8159func (s *ListResolversInput) Validate() error {
8160	invalidParams := request.ErrInvalidParams{Context: "ListResolversInput"}
8161	if s.ApiId == nil {
8162		invalidParams.Add(request.NewErrParamRequired("ApiId"))
8163	}
8164	if s.ApiId != nil && len(*s.ApiId) < 1 {
8165		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
8166	}
8167	if s.NextToken != nil && len(*s.NextToken) < 1 {
8168		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
8169	}
8170	if s.TypeName == nil {
8171		invalidParams.Add(request.NewErrParamRequired("TypeName"))
8172	}
8173	if s.TypeName != nil && len(*s.TypeName) < 1 {
8174		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
8175	}
8176
8177	if invalidParams.Len() > 0 {
8178		return invalidParams
8179	}
8180	return nil
8181}
8182
8183// SetApiId sets the ApiId field's value.
8184func (s *ListResolversInput) SetApiId(v string) *ListResolversInput {
8185	s.ApiId = &v
8186	return s
8187}
8188
8189// SetMaxResults sets the MaxResults field's value.
8190func (s *ListResolversInput) SetMaxResults(v int64) *ListResolversInput {
8191	s.MaxResults = &v
8192	return s
8193}
8194
8195// SetNextToken sets the NextToken field's value.
8196func (s *ListResolversInput) SetNextToken(v string) *ListResolversInput {
8197	s.NextToken = &v
8198	return s
8199}
8200
8201// SetTypeName sets the TypeName field's value.
8202func (s *ListResolversInput) SetTypeName(v string) *ListResolversInput {
8203	s.TypeName = &v
8204	return s
8205}
8206
8207type ListResolversOutput struct {
8208	_ struct{} `type:"structure"`
8209
8210	// An identifier to be passed in the next request to this operation to return
8211	// the next set of items in the list.
8212	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8213
8214	// The Resolver objects.
8215	Resolvers []*Resolver `locationName:"resolvers" type:"list"`
8216}
8217
8218// String returns the string representation
8219func (s ListResolversOutput) String() string {
8220	return awsutil.Prettify(s)
8221}
8222
8223// GoString returns the string representation
8224func (s ListResolversOutput) GoString() string {
8225	return s.String()
8226}
8227
8228// SetNextToken sets the NextToken field's value.
8229func (s *ListResolversOutput) SetNextToken(v string) *ListResolversOutput {
8230	s.NextToken = &v
8231	return s
8232}
8233
8234// SetResolvers sets the Resolvers field's value.
8235func (s *ListResolversOutput) SetResolvers(v []*Resolver) *ListResolversOutput {
8236	s.Resolvers = v
8237	return s
8238}
8239
8240type ListTagsForResourceInput struct {
8241	_ struct{} `type:"structure"`
8242
8243	// The GraphqlApi ARN.
8244	//
8245	// ResourceArn is a required field
8246	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"70" type:"string" required:"true"`
8247}
8248
8249// String returns the string representation
8250func (s ListTagsForResourceInput) String() string {
8251	return awsutil.Prettify(s)
8252}
8253
8254// GoString returns the string representation
8255func (s ListTagsForResourceInput) GoString() string {
8256	return s.String()
8257}
8258
8259// Validate inspects the fields of the type to determine if they are valid.
8260func (s *ListTagsForResourceInput) Validate() error {
8261	invalidParams := request.ErrInvalidParams{Context: "ListTagsForResourceInput"}
8262	if s.ResourceArn == nil {
8263		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
8264	}
8265	if s.ResourceArn != nil && len(*s.ResourceArn) < 70 {
8266		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 70))
8267	}
8268
8269	if invalidParams.Len() > 0 {
8270		return invalidParams
8271	}
8272	return nil
8273}
8274
8275// SetResourceArn sets the ResourceArn field's value.
8276func (s *ListTagsForResourceInput) SetResourceArn(v string) *ListTagsForResourceInput {
8277	s.ResourceArn = &v
8278	return s
8279}
8280
8281type ListTagsForResourceOutput struct {
8282	_ struct{} `type:"structure"`
8283
8284	// A TagMap object.
8285	Tags map[string]*string `locationName:"tags" min:"1" type:"map"`
8286}
8287
8288// String returns the string representation
8289func (s ListTagsForResourceOutput) String() string {
8290	return awsutil.Prettify(s)
8291}
8292
8293// GoString returns the string representation
8294func (s ListTagsForResourceOutput) GoString() string {
8295	return s.String()
8296}
8297
8298// SetTags sets the Tags field's value.
8299func (s *ListTagsForResourceOutput) SetTags(v map[string]*string) *ListTagsForResourceOutput {
8300	s.Tags = v
8301	return s
8302}
8303
8304type ListTypesInput struct {
8305	_ struct{} `type:"structure"`
8306
8307	// The API ID.
8308	//
8309	// ApiId is a required field
8310	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
8311
8312	// The type format: SDL or JSON.
8313	//
8314	// Format is a required field
8315	Format *string `location:"querystring" locationName:"format" type:"string" required:"true" enum:"TypeDefinitionFormat"`
8316
8317	// The maximum number of results you want the request to return.
8318	MaxResults *int64 `location:"querystring" locationName:"maxResults" type:"integer"`
8319
8320	// An identifier that was returned from the previous call to this operation,
8321	// which can be used to return the next set of items in the list.
8322	NextToken *string `location:"querystring" locationName:"nextToken" min:"1" type:"string"`
8323}
8324
8325// String returns the string representation
8326func (s ListTypesInput) String() string {
8327	return awsutil.Prettify(s)
8328}
8329
8330// GoString returns the string representation
8331func (s ListTypesInput) GoString() string {
8332	return s.String()
8333}
8334
8335// Validate inspects the fields of the type to determine if they are valid.
8336func (s *ListTypesInput) Validate() error {
8337	invalidParams := request.ErrInvalidParams{Context: "ListTypesInput"}
8338	if s.ApiId == nil {
8339		invalidParams.Add(request.NewErrParamRequired("ApiId"))
8340	}
8341	if s.ApiId != nil && len(*s.ApiId) < 1 {
8342		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
8343	}
8344	if s.Format == nil {
8345		invalidParams.Add(request.NewErrParamRequired("Format"))
8346	}
8347	if s.NextToken != nil && len(*s.NextToken) < 1 {
8348		invalidParams.Add(request.NewErrParamMinLen("NextToken", 1))
8349	}
8350
8351	if invalidParams.Len() > 0 {
8352		return invalidParams
8353	}
8354	return nil
8355}
8356
8357// SetApiId sets the ApiId field's value.
8358func (s *ListTypesInput) SetApiId(v string) *ListTypesInput {
8359	s.ApiId = &v
8360	return s
8361}
8362
8363// SetFormat sets the Format field's value.
8364func (s *ListTypesInput) SetFormat(v string) *ListTypesInput {
8365	s.Format = &v
8366	return s
8367}
8368
8369// SetMaxResults sets the MaxResults field's value.
8370func (s *ListTypesInput) SetMaxResults(v int64) *ListTypesInput {
8371	s.MaxResults = &v
8372	return s
8373}
8374
8375// SetNextToken sets the NextToken field's value.
8376func (s *ListTypesInput) SetNextToken(v string) *ListTypesInput {
8377	s.NextToken = &v
8378	return s
8379}
8380
8381type ListTypesOutput struct {
8382	_ struct{} `type:"structure"`
8383
8384	// An identifier to be passed in the next request to this operation to return
8385	// the next set of items in the list.
8386	NextToken *string `locationName:"nextToken" min:"1" type:"string"`
8387
8388	// The Type objects.
8389	Types []*Type `locationName:"types" type:"list"`
8390}
8391
8392// String returns the string representation
8393func (s ListTypesOutput) String() string {
8394	return awsutil.Prettify(s)
8395}
8396
8397// GoString returns the string representation
8398func (s ListTypesOutput) GoString() string {
8399	return s.String()
8400}
8401
8402// SetNextToken sets the NextToken field's value.
8403func (s *ListTypesOutput) SetNextToken(v string) *ListTypesOutput {
8404	s.NextToken = &v
8405	return s
8406}
8407
8408// SetTypes sets the Types field's value.
8409func (s *ListTypesOutput) SetTypes(v []*Type) *ListTypesOutput {
8410	s.Types = v
8411	return s
8412}
8413
8414// The CloudWatch Logs configuration.
8415type LogConfig struct {
8416	_ struct{} `type:"structure"`
8417
8418	// The service role that AWS AppSync will assume to publish to Amazon CloudWatch
8419	// logs in your account.
8420	//
8421	// CloudWatchLogsRoleArn is a required field
8422	CloudWatchLogsRoleArn *string `locationName:"cloudWatchLogsRoleArn" type:"string" required:"true"`
8423
8424	// Set to TRUE to exclude sections that contain information such as headers,
8425	// context, and evaluated mapping templates, regardless of logging level.
8426	ExcludeVerboseContent *bool `locationName:"excludeVerboseContent" type:"boolean"`
8427
8428	// The field logging level. Values can be NONE, ERROR, or ALL.
8429	//
8430	//    * NONE: No field-level logs are captured.
8431	//
8432	//    * ERROR: Logs the following information only for the fields that are in
8433	//    error: The error section in the server response. Field-level errors. The
8434	//    generated request/response functions that got resolved for error fields.
8435	//
8436	//    * ALL: The following information is logged for all fields in the query:
8437	//    Field-level tracing information. The generated request/response functions
8438	//    that got resolved for each field.
8439	//
8440	// FieldLogLevel is a required field
8441	FieldLogLevel *string `locationName:"fieldLogLevel" type:"string" required:"true" enum:"FieldLogLevel"`
8442}
8443
8444// String returns the string representation
8445func (s LogConfig) String() string {
8446	return awsutil.Prettify(s)
8447}
8448
8449// GoString returns the string representation
8450func (s LogConfig) GoString() string {
8451	return s.String()
8452}
8453
8454// Validate inspects the fields of the type to determine if they are valid.
8455func (s *LogConfig) Validate() error {
8456	invalidParams := request.ErrInvalidParams{Context: "LogConfig"}
8457	if s.CloudWatchLogsRoleArn == nil {
8458		invalidParams.Add(request.NewErrParamRequired("CloudWatchLogsRoleArn"))
8459	}
8460	if s.FieldLogLevel == nil {
8461		invalidParams.Add(request.NewErrParamRequired("FieldLogLevel"))
8462	}
8463
8464	if invalidParams.Len() > 0 {
8465		return invalidParams
8466	}
8467	return nil
8468}
8469
8470// SetCloudWatchLogsRoleArn sets the CloudWatchLogsRoleArn field's value.
8471func (s *LogConfig) SetCloudWatchLogsRoleArn(v string) *LogConfig {
8472	s.CloudWatchLogsRoleArn = &v
8473	return s
8474}
8475
8476// SetExcludeVerboseContent sets the ExcludeVerboseContent field's value.
8477func (s *LogConfig) SetExcludeVerboseContent(v bool) *LogConfig {
8478	s.ExcludeVerboseContent = &v
8479	return s
8480}
8481
8482// SetFieldLogLevel sets the FieldLogLevel field's value.
8483func (s *LogConfig) SetFieldLogLevel(v string) *LogConfig {
8484	s.FieldLogLevel = &v
8485	return s
8486}
8487
8488// The resource specified in the request was not found. Check the resource,
8489// and then try again.
8490type NotFoundException struct {
8491	_            struct{}                  `type:"structure"`
8492	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
8493
8494	Message_ *string `locationName:"message" type:"string"`
8495}
8496
8497// String returns the string representation
8498func (s NotFoundException) String() string {
8499	return awsutil.Prettify(s)
8500}
8501
8502// GoString returns the string representation
8503func (s NotFoundException) GoString() string {
8504	return s.String()
8505}
8506
8507func newErrorNotFoundException(v protocol.ResponseMetadata) error {
8508	return &NotFoundException{
8509		RespMetadata: v,
8510	}
8511}
8512
8513// Code returns the exception type name.
8514func (s *NotFoundException) Code() string {
8515	return "NotFoundException"
8516}
8517
8518// Message returns the exception's message.
8519func (s *NotFoundException) Message() string {
8520	if s.Message_ != nil {
8521		return *s.Message_
8522	}
8523	return ""
8524}
8525
8526// OrigErr always returns nil, satisfies awserr.Error interface.
8527func (s *NotFoundException) OrigErr() error {
8528	return nil
8529}
8530
8531func (s *NotFoundException) Error() string {
8532	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
8533}
8534
8535// Status code returns the HTTP status code for the request's response error.
8536func (s *NotFoundException) StatusCode() int {
8537	return s.RespMetadata.StatusCode
8538}
8539
8540// RequestID returns the service's response RequestID for request.
8541func (s *NotFoundException) RequestID() string {
8542	return s.RespMetadata.RequestID
8543}
8544
8545// Describes an OpenID Connect configuration.
8546type OpenIDConnectConfig struct {
8547	_ struct{} `type:"structure"`
8548
8549	// The number of milliseconds a token is valid after being authenticated.
8550	AuthTTL *int64 `locationName:"authTTL" type:"long"`
8551
8552	// The client identifier of the Relying party at the OpenID identity provider.
8553	// This identifier is typically obtained when the Relying party is registered
8554	// with the OpenID identity provider. You can specify a regular expression so
8555	// the AWS AppSync can validate against multiple client identifiers at a time.
8556	ClientId *string `locationName:"clientId" type:"string"`
8557
8558	// The number of milliseconds a token is valid after being issued to a user.
8559	IatTTL *int64 `locationName:"iatTTL" type:"long"`
8560
8561	// The issuer for the OpenID Connect configuration. The issuer returned by discovery
8562	// must exactly match the value of iss in the ID token.
8563	//
8564	// Issuer is a required field
8565	Issuer *string `locationName:"issuer" type:"string" required:"true"`
8566}
8567
8568// String returns the string representation
8569func (s OpenIDConnectConfig) String() string {
8570	return awsutil.Prettify(s)
8571}
8572
8573// GoString returns the string representation
8574func (s OpenIDConnectConfig) GoString() string {
8575	return s.String()
8576}
8577
8578// Validate inspects the fields of the type to determine if they are valid.
8579func (s *OpenIDConnectConfig) Validate() error {
8580	invalidParams := request.ErrInvalidParams{Context: "OpenIDConnectConfig"}
8581	if s.Issuer == nil {
8582		invalidParams.Add(request.NewErrParamRequired("Issuer"))
8583	}
8584
8585	if invalidParams.Len() > 0 {
8586		return invalidParams
8587	}
8588	return nil
8589}
8590
8591// SetAuthTTL sets the AuthTTL field's value.
8592func (s *OpenIDConnectConfig) SetAuthTTL(v int64) *OpenIDConnectConfig {
8593	s.AuthTTL = &v
8594	return s
8595}
8596
8597// SetClientId sets the ClientId field's value.
8598func (s *OpenIDConnectConfig) SetClientId(v string) *OpenIDConnectConfig {
8599	s.ClientId = &v
8600	return s
8601}
8602
8603// SetIatTTL sets the IatTTL field's value.
8604func (s *OpenIDConnectConfig) SetIatTTL(v int64) *OpenIDConnectConfig {
8605	s.IatTTL = &v
8606	return s
8607}
8608
8609// SetIssuer sets the Issuer field's value.
8610func (s *OpenIDConnectConfig) SetIssuer(v string) *OpenIDConnectConfig {
8611	s.Issuer = &v
8612	return s
8613}
8614
8615// The pipeline configuration for a resolver of kind PIPELINE.
8616type PipelineConfig struct {
8617	_ struct{} `type:"structure"`
8618
8619	// A list of Function objects.
8620	Functions []*string `locationName:"functions" type:"list"`
8621}
8622
8623// String returns the string representation
8624func (s PipelineConfig) String() string {
8625	return awsutil.Prettify(s)
8626}
8627
8628// GoString returns the string representation
8629func (s PipelineConfig) GoString() string {
8630	return s.String()
8631}
8632
8633// SetFunctions sets the Functions field's value.
8634func (s *PipelineConfig) SetFunctions(v []*string) *PipelineConfig {
8635	s.Functions = v
8636	return s
8637}
8638
8639// The Amazon RDS HTTP endpoint configuration.
8640type RdsHttpEndpointConfig struct {
8641	_ struct{} `type:"structure"`
8642
8643	// AWS Region for RDS HTTP endpoint.
8644	AwsRegion *string `locationName:"awsRegion" type:"string"`
8645
8646	// AWS secret store ARN for database credentials.
8647	AwsSecretStoreArn *string `locationName:"awsSecretStoreArn" type:"string"`
8648
8649	// Logical database name.
8650	DatabaseName *string `locationName:"databaseName" type:"string"`
8651
8652	// Amazon RDS cluster ARN.
8653	DbClusterIdentifier *string `locationName:"dbClusterIdentifier" type:"string"`
8654
8655	// Logical schema name.
8656	Schema *string `locationName:"schema" type:"string"`
8657}
8658
8659// String returns the string representation
8660func (s RdsHttpEndpointConfig) String() string {
8661	return awsutil.Prettify(s)
8662}
8663
8664// GoString returns the string representation
8665func (s RdsHttpEndpointConfig) GoString() string {
8666	return s.String()
8667}
8668
8669// SetAwsRegion sets the AwsRegion field's value.
8670func (s *RdsHttpEndpointConfig) SetAwsRegion(v string) *RdsHttpEndpointConfig {
8671	s.AwsRegion = &v
8672	return s
8673}
8674
8675// SetAwsSecretStoreArn sets the AwsSecretStoreArn field's value.
8676func (s *RdsHttpEndpointConfig) SetAwsSecretStoreArn(v string) *RdsHttpEndpointConfig {
8677	s.AwsSecretStoreArn = &v
8678	return s
8679}
8680
8681// SetDatabaseName sets the DatabaseName field's value.
8682func (s *RdsHttpEndpointConfig) SetDatabaseName(v string) *RdsHttpEndpointConfig {
8683	s.DatabaseName = &v
8684	return s
8685}
8686
8687// SetDbClusterIdentifier sets the DbClusterIdentifier field's value.
8688func (s *RdsHttpEndpointConfig) SetDbClusterIdentifier(v string) *RdsHttpEndpointConfig {
8689	s.DbClusterIdentifier = &v
8690	return s
8691}
8692
8693// SetSchema sets the Schema field's value.
8694func (s *RdsHttpEndpointConfig) SetSchema(v string) *RdsHttpEndpointConfig {
8695	s.Schema = &v
8696	return s
8697}
8698
8699// Describes a relational database data source configuration.
8700type RelationalDatabaseDataSourceConfig struct {
8701	_ struct{} `type:"structure"`
8702
8703	// Amazon RDS HTTP endpoint settings.
8704	RdsHttpEndpointConfig *RdsHttpEndpointConfig `locationName:"rdsHttpEndpointConfig" type:"structure"`
8705
8706	// Source type for the relational database.
8707	//
8708	//    * RDS_HTTP_ENDPOINT: The relational database source type is an Amazon
8709	//    RDS HTTP endpoint.
8710	RelationalDatabaseSourceType *string `locationName:"relationalDatabaseSourceType" type:"string" enum:"RelationalDatabaseSourceType"`
8711}
8712
8713// String returns the string representation
8714func (s RelationalDatabaseDataSourceConfig) String() string {
8715	return awsutil.Prettify(s)
8716}
8717
8718// GoString returns the string representation
8719func (s RelationalDatabaseDataSourceConfig) GoString() string {
8720	return s.String()
8721}
8722
8723// SetRdsHttpEndpointConfig sets the RdsHttpEndpointConfig field's value.
8724func (s *RelationalDatabaseDataSourceConfig) SetRdsHttpEndpointConfig(v *RdsHttpEndpointConfig) *RelationalDatabaseDataSourceConfig {
8725	s.RdsHttpEndpointConfig = v
8726	return s
8727}
8728
8729// SetRelationalDatabaseSourceType sets the RelationalDatabaseSourceType field's value.
8730func (s *RelationalDatabaseDataSourceConfig) SetRelationalDatabaseSourceType(v string) *RelationalDatabaseDataSourceConfig {
8731	s.RelationalDatabaseSourceType = &v
8732	return s
8733}
8734
8735// Describes a resolver.
8736type Resolver struct {
8737	_ struct{} `type:"structure"`
8738
8739	// The caching configuration for the resolver.
8740	CachingConfig *CachingConfig `locationName:"cachingConfig" type:"structure"`
8741
8742	// The resolver data source name.
8743	DataSourceName *string `locationName:"dataSourceName" min:"1" type:"string"`
8744
8745	// The resolver field name.
8746	FieldName *string `locationName:"fieldName" min:"1" type:"string"`
8747
8748	// The resolver type.
8749	//
8750	//    * UNIT: A UNIT resolver type. A UNIT resolver is the default resolver
8751	//    type. A UNIT resolver enables you to execute a GraphQL query against a
8752	//    single data source.
8753	//
8754	//    * PIPELINE: A PIPELINE resolver type. A PIPELINE resolver enables you
8755	//    to execute a series of Function in a serial manner. You can use a pipeline
8756	//    resolver to execute a GraphQL query against multiple data sources.
8757	Kind *string `locationName:"kind" type:"string" enum:"ResolverKind"`
8758
8759	// The PipelineConfig.
8760	PipelineConfig *PipelineConfig `locationName:"pipelineConfig" type:"structure"`
8761
8762	// The request mapping template.
8763	RequestMappingTemplate *string `locationName:"requestMappingTemplate" min:"1" type:"string"`
8764
8765	// The resolver ARN.
8766	ResolverArn *string `locationName:"resolverArn" type:"string"`
8767
8768	// The response mapping template.
8769	ResponseMappingTemplate *string `locationName:"responseMappingTemplate" min:"1" type:"string"`
8770
8771	// The SyncConfig for a resolver attached to a versioned datasource.
8772	SyncConfig *SyncConfig `locationName:"syncConfig" type:"structure"`
8773
8774	// The resolver type name.
8775	TypeName *string `locationName:"typeName" min:"1" type:"string"`
8776}
8777
8778// String returns the string representation
8779func (s Resolver) String() string {
8780	return awsutil.Prettify(s)
8781}
8782
8783// GoString returns the string representation
8784func (s Resolver) GoString() string {
8785	return s.String()
8786}
8787
8788// SetCachingConfig sets the CachingConfig field's value.
8789func (s *Resolver) SetCachingConfig(v *CachingConfig) *Resolver {
8790	s.CachingConfig = v
8791	return s
8792}
8793
8794// SetDataSourceName sets the DataSourceName field's value.
8795func (s *Resolver) SetDataSourceName(v string) *Resolver {
8796	s.DataSourceName = &v
8797	return s
8798}
8799
8800// SetFieldName sets the FieldName field's value.
8801func (s *Resolver) SetFieldName(v string) *Resolver {
8802	s.FieldName = &v
8803	return s
8804}
8805
8806// SetKind sets the Kind field's value.
8807func (s *Resolver) SetKind(v string) *Resolver {
8808	s.Kind = &v
8809	return s
8810}
8811
8812// SetPipelineConfig sets the PipelineConfig field's value.
8813func (s *Resolver) SetPipelineConfig(v *PipelineConfig) *Resolver {
8814	s.PipelineConfig = v
8815	return s
8816}
8817
8818// SetRequestMappingTemplate sets the RequestMappingTemplate field's value.
8819func (s *Resolver) SetRequestMappingTemplate(v string) *Resolver {
8820	s.RequestMappingTemplate = &v
8821	return s
8822}
8823
8824// SetResolverArn sets the ResolverArn field's value.
8825func (s *Resolver) SetResolverArn(v string) *Resolver {
8826	s.ResolverArn = &v
8827	return s
8828}
8829
8830// SetResponseMappingTemplate sets the ResponseMappingTemplate field's value.
8831func (s *Resolver) SetResponseMappingTemplate(v string) *Resolver {
8832	s.ResponseMappingTemplate = &v
8833	return s
8834}
8835
8836// SetSyncConfig sets the SyncConfig field's value.
8837func (s *Resolver) SetSyncConfig(v *SyncConfig) *Resolver {
8838	s.SyncConfig = v
8839	return s
8840}
8841
8842// SetTypeName sets the TypeName field's value.
8843func (s *Resolver) SetTypeName(v string) *Resolver {
8844	s.TypeName = &v
8845	return s
8846}
8847
8848type StartSchemaCreationInput struct {
8849	_ struct{} `type:"structure"`
8850
8851	// The API ID.
8852	//
8853	// ApiId is a required field
8854	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
8855
8856	// The schema definition, in GraphQL schema language format.
8857	//
8858	// Definition is automatically base64 encoded/decoded by the SDK.
8859	//
8860	// Definition is a required field
8861	Definition []byte `locationName:"definition" type:"blob" required:"true"`
8862}
8863
8864// String returns the string representation
8865func (s StartSchemaCreationInput) String() string {
8866	return awsutil.Prettify(s)
8867}
8868
8869// GoString returns the string representation
8870func (s StartSchemaCreationInput) GoString() string {
8871	return s.String()
8872}
8873
8874// Validate inspects the fields of the type to determine if they are valid.
8875func (s *StartSchemaCreationInput) Validate() error {
8876	invalidParams := request.ErrInvalidParams{Context: "StartSchemaCreationInput"}
8877	if s.ApiId == nil {
8878		invalidParams.Add(request.NewErrParamRequired("ApiId"))
8879	}
8880	if s.ApiId != nil && len(*s.ApiId) < 1 {
8881		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
8882	}
8883	if s.Definition == nil {
8884		invalidParams.Add(request.NewErrParamRequired("Definition"))
8885	}
8886
8887	if invalidParams.Len() > 0 {
8888		return invalidParams
8889	}
8890	return nil
8891}
8892
8893// SetApiId sets the ApiId field's value.
8894func (s *StartSchemaCreationInput) SetApiId(v string) *StartSchemaCreationInput {
8895	s.ApiId = &v
8896	return s
8897}
8898
8899// SetDefinition sets the Definition field's value.
8900func (s *StartSchemaCreationInput) SetDefinition(v []byte) *StartSchemaCreationInput {
8901	s.Definition = v
8902	return s
8903}
8904
8905type StartSchemaCreationOutput struct {
8906	_ struct{} `type:"structure"`
8907
8908	// The current state of the schema (PROCESSING, FAILED, SUCCESS, or NOT_APPLICABLE).
8909	// When the schema is in the ACTIVE state, you can add data.
8910	Status *string `locationName:"status" type:"string" enum:"SchemaStatus"`
8911}
8912
8913// String returns the string representation
8914func (s StartSchemaCreationOutput) String() string {
8915	return awsutil.Prettify(s)
8916}
8917
8918// GoString returns the string representation
8919func (s StartSchemaCreationOutput) GoString() string {
8920	return s.String()
8921}
8922
8923// SetStatus sets the Status field's value.
8924func (s *StartSchemaCreationOutput) SetStatus(v string) *StartSchemaCreationOutput {
8925	s.Status = &v
8926	return s
8927}
8928
8929// Describes a Sync configuration for a resolver.
8930//
8931// Contains information on which Conflict Detection as well as Resolution strategy
8932// should be performed when the resolver is invoked.
8933type SyncConfig struct {
8934	_ struct{} `type:"structure"`
8935
8936	// The Conflict Detection strategy to use.
8937	//
8938	//    * VERSION: Detect conflicts based on object versions for this resolver.
8939	//
8940	//    * NONE: Do not detect conflicts when executing this resolver.
8941	ConflictDetection *string `locationName:"conflictDetection" type:"string" enum:"ConflictDetectionType"`
8942
8943	// The Conflict Resolution strategy to perform in the event of a conflict.
8944	//
8945	//    * OPTIMISTIC_CONCURRENCY: Resolve conflicts by rejecting mutations when
8946	//    versions do not match the latest version at the server.
8947	//
8948	//    * AUTOMERGE: Resolve conflicts with the Automerge conflict resolution
8949	//    strategy.
8950	//
8951	//    * LAMBDA: Resolve conflicts with a Lambda function supplied in the LambdaConflictHandlerConfig.
8952	ConflictHandler *string `locationName:"conflictHandler" type:"string" enum:"ConflictHandlerType"`
8953
8954	// The LambdaConflictHandlerConfig when configuring LAMBDA as the Conflict Handler.
8955	LambdaConflictHandlerConfig *LambdaConflictHandlerConfig `locationName:"lambdaConflictHandlerConfig" type:"structure"`
8956}
8957
8958// String returns the string representation
8959func (s SyncConfig) String() string {
8960	return awsutil.Prettify(s)
8961}
8962
8963// GoString returns the string representation
8964func (s SyncConfig) GoString() string {
8965	return s.String()
8966}
8967
8968// SetConflictDetection sets the ConflictDetection field's value.
8969func (s *SyncConfig) SetConflictDetection(v string) *SyncConfig {
8970	s.ConflictDetection = &v
8971	return s
8972}
8973
8974// SetConflictHandler sets the ConflictHandler field's value.
8975func (s *SyncConfig) SetConflictHandler(v string) *SyncConfig {
8976	s.ConflictHandler = &v
8977	return s
8978}
8979
8980// SetLambdaConflictHandlerConfig sets the LambdaConflictHandlerConfig field's value.
8981func (s *SyncConfig) SetLambdaConflictHandlerConfig(v *LambdaConflictHandlerConfig) *SyncConfig {
8982	s.LambdaConflictHandlerConfig = v
8983	return s
8984}
8985
8986type TagResourceInput struct {
8987	_ struct{} `type:"structure"`
8988
8989	// The GraphqlApi ARN.
8990	//
8991	// ResourceArn is a required field
8992	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"70" type:"string" required:"true"`
8993
8994	// A TagMap object.
8995	//
8996	// Tags is a required field
8997	Tags map[string]*string `locationName:"tags" min:"1" type:"map" required:"true"`
8998}
8999
9000// String returns the string representation
9001func (s TagResourceInput) String() string {
9002	return awsutil.Prettify(s)
9003}
9004
9005// GoString returns the string representation
9006func (s TagResourceInput) GoString() string {
9007	return s.String()
9008}
9009
9010// Validate inspects the fields of the type to determine if they are valid.
9011func (s *TagResourceInput) Validate() error {
9012	invalidParams := request.ErrInvalidParams{Context: "TagResourceInput"}
9013	if s.ResourceArn == nil {
9014		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
9015	}
9016	if s.ResourceArn != nil && len(*s.ResourceArn) < 70 {
9017		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 70))
9018	}
9019	if s.Tags == nil {
9020		invalidParams.Add(request.NewErrParamRequired("Tags"))
9021	}
9022	if s.Tags != nil && len(s.Tags) < 1 {
9023		invalidParams.Add(request.NewErrParamMinLen("Tags", 1))
9024	}
9025
9026	if invalidParams.Len() > 0 {
9027		return invalidParams
9028	}
9029	return nil
9030}
9031
9032// SetResourceArn sets the ResourceArn field's value.
9033func (s *TagResourceInput) SetResourceArn(v string) *TagResourceInput {
9034	s.ResourceArn = &v
9035	return s
9036}
9037
9038// SetTags sets the Tags field's value.
9039func (s *TagResourceInput) SetTags(v map[string]*string) *TagResourceInput {
9040	s.Tags = v
9041	return s
9042}
9043
9044type TagResourceOutput struct {
9045	_ struct{} `type:"structure"`
9046}
9047
9048// String returns the string representation
9049func (s TagResourceOutput) String() string {
9050	return awsutil.Prettify(s)
9051}
9052
9053// GoString returns the string representation
9054func (s TagResourceOutput) GoString() string {
9055	return s.String()
9056}
9057
9058// Describes a type.
9059type Type struct {
9060	_ struct{} `type:"structure"`
9061
9062	// The type ARN.
9063	Arn *string `locationName:"arn" type:"string"`
9064
9065	// The type definition.
9066	Definition *string `locationName:"definition" type:"string"`
9067
9068	// The type description.
9069	Description *string `locationName:"description" type:"string"`
9070
9071	// The type format: SDL or JSON.
9072	Format *string `locationName:"format" type:"string" enum:"TypeDefinitionFormat"`
9073
9074	// The type name.
9075	Name *string `locationName:"name" min:"1" type:"string"`
9076}
9077
9078// String returns the string representation
9079func (s Type) String() string {
9080	return awsutil.Prettify(s)
9081}
9082
9083// GoString returns the string representation
9084func (s Type) GoString() string {
9085	return s.String()
9086}
9087
9088// SetArn sets the Arn field's value.
9089func (s *Type) SetArn(v string) *Type {
9090	s.Arn = &v
9091	return s
9092}
9093
9094// SetDefinition sets the Definition field's value.
9095func (s *Type) SetDefinition(v string) *Type {
9096	s.Definition = &v
9097	return s
9098}
9099
9100// SetDescription sets the Description field's value.
9101func (s *Type) SetDescription(v string) *Type {
9102	s.Description = &v
9103	return s
9104}
9105
9106// SetFormat sets the Format field's value.
9107func (s *Type) SetFormat(v string) *Type {
9108	s.Format = &v
9109	return s
9110}
9111
9112// SetName sets the Name field's value.
9113func (s *Type) SetName(v string) *Type {
9114	s.Name = &v
9115	return s
9116}
9117
9118// You are not authorized to perform this operation.
9119type UnauthorizedException struct {
9120	_            struct{}                  `type:"structure"`
9121	RespMetadata protocol.ResponseMetadata `json:"-" xml:"-"`
9122
9123	Message_ *string `locationName:"message" type:"string"`
9124}
9125
9126// String returns the string representation
9127func (s UnauthorizedException) String() string {
9128	return awsutil.Prettify(s)
9129}
9130
9131// GoString returns the string representation
9132func (s UnauthorizedException) GoString() string {
9133	return s.String()
9134}
9135
9136func newErrorUnauthorizedException(v protocol.ResponseMetadata) error {
9137	return &UnauthorizedException{
9138		RespMetadata: v,
9139	}
9140}
9141
9142// Code returns the exception type name.
9143func (s *UnauthorizedException) Code() string {
9144	return "UnauthorizedException"
9145}
9146
9147// Message returns the exception's message.
9148func (s *UnauthorizedException) Message() string {
9149	if s.Message_ != nil {
9150		return *s.Message_
9151	}
9152	return ""
9153}
9154
9155// OrigErr always returns nil, satisfies awserr.Error interface.
9156func (s *UnauthorizedException) OrigErr() error {
9157	return nil
9158}
9159
9160func (s *UnauthorizedException) Error() string {
9161	return fmt.Sprintf("%s: %s", s.Code(), s.Message())
9162}
9163
9164// Status code returns the HTTP status code for the request's response error.
9165func (s *UnauthorizedException) StatusCode() int {
9166	return s.RespMetadata.StatusCode
9167}
9168
9169// RequestID returns the service's response RequestID for request.
9170func (s *UnauthorizedException) RequestID() string {
9171	return s.RespMetadata.RequestID
9172}
9173
9174type UntagResourceInput struct {
9175	_ struct{} `type:"structure"`
9176
9177	// The GraphqlApi ARN.
9178	//
9179	// ResourceArn is a required field
9180	ResourceArn *string `location:"uri" locationName:"resourceArn" min:"70" type:"string" required:"true"`
9181
9182	// A list of TagKey objects.
9183	//
9184	// TagKeys is a required field
9185	TagKeys []*string `location:"querystring" locationName:"tagKeys" min:"1" type:"list" required:"true"`
9186}
9187
9188// String returns the string representation
9189func (s UntagResourceInput) String() string {
9190	return awsutil.Prettify(s)
9191}
9192
9193// GoString returns the string representation
9194func (s UntagResourceInput) GoString() string {
9195	return s.String()
9196}
9197
9198// Validate inspects the fields of the type to determine if they are valid.
9199func (s *UntagResourceInput) Validate() error {
9200	invalidParams := request.ErrInvalidParams{Context: "UntagResourceInput"}
9201	if s.ResourceArn == nil {
9202		invalidParams.Add(request.NewErrParamRequired("ResourceArn"))
9203	}
9204	if s.ResourceArn != nil && len(*s.ResourceArn) < 70 {
9205		invalidParams.Add(request.NewErrParamMinLen("ResourceArn", 70))
9206	}
9207	if s.TagKeys == nil {
9208		invalidParams.Add(request.NewErrParamRequired("TagKeys"))
9209	}
9210	if s.TagKeys != nil && len(s.TagKeys) < 1 {
9211		invalidParams.Add(request.NewErrParamMinLen("TagKeys", 1))
9212	}
9213
9214	if invalidParams.Len() > 0 {
9215		return invalidParams
9216	}
9217	return nil
9218}
9219
9220// SetResourceArn sets the ResourceArn field's value.
9221func (s *UntagResourceInput) SetResourceArn(v string) *UntagResourceInput {
9222	s.ResourceArn = &v
9223	return s
9224}
9225
9226// SetTagKeys sets the TagKeys field's value.
9227func (s *UntagResourceInput) SetTagKeys(v []*string) *UntagResourceInput {
9228	s.TagKeys = v
9229	return s
9230}
9231
9232type UntagResourceOutput struct {
9233	_ struct{} `type:"structure"`
9234}
9235
9236// String returns the string representation
9237func (s UntagResourceOutput) String() string {
9238	return awsutil.Prettify(s)
9239}
9240
9241// GoString returns the string representation
9242func (s UntagResourceOutput) GoString() string {
9243	return s.String()
9244}
9245
9246// Represents the input of a UpdateApiCache operation.
9247type UpdateApiCacheInput struct {
9248	_ struct{} `type:"structure"`
9249
9250	// Caching behavior.
9251	//
9252	//    * FULL_REQUEST_CACHING: All requests are fully cached.
9253	//
9254	//    * PER_RESOLVER_CACHING: Individual resolvers that you specify are cached.
9255	//
9256	// ApiCachingBehavior is a required field
9257	ApiCachingBehavior *string `locationName:"apiCachingBehavior" type:"string" required:"true" enum:"ApiCachingBehavior"`
9258
9259	// The GraphQL API Id.
9260	//
9261	// ApiId is a required field
9262	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
9263
9264	// TTL in seconds for cache entries.
9265	//
9266	// Valid values are between 1 and 3600 seconds.
9267	//
9268	// Ttl is a required field
9269	Ttl *int64 `locationName:"ttl" type:"long" required:"true"`
9270
9271	// The cache instance type. Valid values are
9272	//
9273	//    * SMALL
9274	//
9275	//    * MEDIUM
9276	//
9277	//    * LARGE
9278	//
9279	//    * XLARGE
9280	//
9281	//    * LARGE_2X
9282	//
9283	//    * LARGE_4X
9284	//
9285	//    * LARGE_8X (not available in all regions)
9286	//
9287	//    * LARGE_12X
9288	//
9289	// Historically, instance types were identified by an EC2-style value. As of
9290	// July 2020, this is deprecated, and the generic identifiers above should be
9291	// used.
9292	//
9293	// The following legacy instance types are available, but their use is discouraged:
9294	//
9295	//    * T2_SMALL: A t2.small instance type.
9296	//
9297	//    * T2_MEDIUM: A t2.medium instance type.
9298	//
9299	//    * R4_LARGE: A r4.large instance type.
9300	//
9301	//    * R4_XLARGE: A r4.xlarge instance type.
9302	//
9303	//    * R4_2XLARGE: A r4.2xlarge instance type.
9304	//
9305	//    * R4_4XLARGE: A r4.4xlarge instance type.
9306	//
9307	//    * R4_8XLARGE: A r4.8xlarge instance type.
9308	//
9309	// Type is a required field
9310	Type *string `locationName:"type" type:"string" required:"true" enum:"ApiCacheType"`
9311}
9312
9313// String returns the string representation
9314func (s UpdateApiCacheInput) String() string {
9315	return awsutil.Prettify(s)
9316}
9317
9318// GoString returns the string representation
9319func (s UpdateApiCacheInput) GoString() string {
9320	return s.String()
9321}
9322
9323// Validate inspects the fields of the type to determine if they are valid.
9324func (s *UpdateApiCacheInput) Validate() error {
9325	invalidParams := request.ErrInvalidParams{Context: "UpdateApiCacheInput"}
9326	if s.ApiCachingBehavior == nil {
9327		invalidParams.Add(request.NewErrParamRequired("ApiCachingBehavior"))
9328	}
9329	if s.ApiId == nil {
9330		invalidParams.Add(request.NewErrParamRequired("ApiId"))
9331	}
9332	if s.ApiId != nil && len(*s.ApiId) < 1 {
9333		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
9334	}
9335	if s.Ttl == nil {
9336		invalidParams.Add(request.NewErrParamRequired("Ttl"))
9337	}
9338	if s.Type == nil {
9339		invalidParams.Add(request.NewErrParamRequired("Type"))
9340	}
9341
9342	if invalidParams.Len() > 0 {
9343		return invalidParams
9344	}
9345	return nil
9346}
9347
9348// SetApiCachingBehavior sets the ApiCachingBehavior field's value.
9349func (s *UpdateApiCacheInput) SetApiCachingBehavior(v string) *UpdateApiCacheInput {
9350	s.ApiCachingBehavior = &v
9351	return s
9352}
9353
9354// SetApiId sets the ApiId field's value.
9355func (s *UpdateApiCacheInput) SetApiId(v string) *UpdateApiCacheInput {
9356	s.ApiId = &v
9357	return s
9358}
9359
9360// SetTtl sets the Ttl field's value.
9361func (s *UpdateApiCacheInput) SetTtl(v int64) *UpdateApiCacheInput {
9362	s.Ttl = &v
9363	return s
9364}
9365
9366// SetType sets the Type field's value.
9367func (s *UpdateApiCacheInput) SetType(v string) *UpdateApiCacheInput {
9368	s.Type = &v
9369	return s
9370}
9371
9372// Represents the output of a UpdateApiCache operation.
9373type UpdateApiCacheOutput struct {
9374	_ struct{} `type:"structure"`
9375
9376	// The ApiCache object.
9377	ApiCache *ApiCache `locationName:"apiCache" type:"structure"`
9378}
9379
9380// String returns the string representation
9381func (s UpdateApiCacheOutput) String() string {
9382	return awsutil.Prettify(s)
9383}
9384
9385// GoString returns the string representation
9386func (s UpdateApiCacheOutput) GoString() string {
9387	return s.String()
9388}
9389
9390// SetApiCache sets the ApiCache field's value.
9391func (s *UpdateApiCacheOutput) SetApiCache(v *ApiCache) *UpdateApiCacheOutput {
9392	s.ApiCache = v
9393	return s
9394}
9395
9396type UpdateApiKeyInput struct {
9397	_ struct{} `type:"structure"`
9398
9399	// The ID for the GraphQL API.
9400	//
9401	// ApiId is a required field
9402	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
9403
9404	// A description of the purpose of the API key.
9405	Description *string `locationName:"description" type:"string"`
9406
9407	// The time from update time after which the API key expires. The date is represented
9408	// as seconds since the epoch. For more information, see .
9409	Expires *int64 `locationName:"expires" type:"long"`
9410
9411	// The API key ID.
9412	//
9413	// Id is a required field
9414	Id *string `location:"uri" locationName:"id" type:"string" required:"true"`
9415}
9416
9417// String returns the string representation
9418func (s UpdateApiKeyInput) String() string {
9419	return awsutil.Prettify(s)
9420}
9421
9422// GoString returns the string representation
9423func (s UpdateApiKeyInput) GoString() string {
9424	return s.String()
9425}
9426
9427// Validate inspects the fields of the type to determine if they are valid.
9428func (s *UpdateApiKeyInput) Validate() error {
9429	invalidParams := request.ErrInvalidParams{Context: "UpdateApiKeyInput"}
9430	if s.ApiId == nil {
9431		invalidParams.Add(request.NewErrParamRequired("ApiId"))
9432	}
9433	if s.ApiId != nil && len(*s.ApiId) < 1 {
9434		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
9435	}
9436	if s.Id == nil {
9437		invalidParams.Add(request.NewErrParamRequired("Id"))
9438	}
9439	if s.Id != nil && len(*s.Id) < 1 {
9440		invalidParams.Add(request.NewErrParamMinLen("Id", 1))
9441	}
9442
9443	if invalidParams.Len() > 0 {
9444		return invalidParams
9445	}
9446	return nil
9447}
9448
9449// SetApiId sets the ApiId field's value.
9450func (s *UpdateApiKeyInput) SetApiId(v string) *UpdateApiKeyInput {
9451	s.ApiId = &v
9452	return s
9453}
9454
9455// SetDescription sets the Description field's value.
9456func (s *UpdateApiKeyInput) SetDescription(v string) *UpdateApiKeyInput {
9457	s.Description = &v
9458	return s
9459}
9460
9461// SetExpires sets the Expires field's value.
9462func (s *UpdateApiKeyInput) SetExpires(v int64) *UpdateApiKeyInput {
9463	s.Expires = &v
9464	return s
9465}
9466
9467// SetId sets the Id field's value.
9468func (s *UpdateApiKeyInput) SetId(v string) *UpdateApiKeyInput {
9469	s.Id = &v
9470	return s
9471}
9472
9473type UpdateApiKeyOutput struct {
9474	_ struct{} `type:"structure"`
9475
9476	// The API key.
9477	ApiKey *ApiKey `locationName:"apiKey" type:"structure"`
9478}
9479
9480// String returns the string representation
9481func (s UpdateApiKeyOutput) String() string {
9482	return awsutil.Prettify(s)
9483}
9484
9485// GoString returns the string representation
9486func (s UpdateApiKeyOutput) GoString() string {
9487	return s.String()
9488}
9489
9490// SetApiKey sets the ApiKey field's value.
9491func (s *UpdateApiKeyOutput) SetApiKey(v *ApiKey) *UpdateApiKeyOutput {
9492	s.ApiKey = v
9493	return s
9494}
9495
9496type UpdateDataSourceInput struct {
9497	_ struct{} `type:"structure"`
9498
9499	// The API ID.
9500	//
9501	// ApiId is a required field
9502	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
9503
9504	// The new description for the data source.
9505	Description *string `locationName:"description" type:"string"`
9506
9507	// The new Amazon DynamoDB configuration.
9508	DynamodbConfig *DynamodbDataSourceConfig `locationName:"dynamodbConfig" type:"structure"`
9509
9510	// The new Elasticsearch Service configuration.
9511	ElasticsearchConfig *ElasticsearchDataSourceConfig `locationName:"elasticsearchConfig" type:"structure"`
9512
9513	// The new HTTP endpoint configuration.
9514	HttpConfig *HttpDataSourceConfig `locationName:"httpConfig" type:"structure"`
9515
9516	// The new AWS Lambda configuration.
9517	LambdaConfig *LambdaDataSourceConfig `locationName:"lambdaConfig" type:"structure"`
9518
9519	// The new name for the data source.
9520	//
9521	// Name is a required field
9522	Name *string `location:"uri" locationName:"name" min:"1" type:"string" required:"true"`
9523
9524	// The new relational database configuration.
9525	RelationalDatabaseConfig *RelationalDatabaseDataSourceConfig `locationName:"relationalDatabaseConfig" type:"structure"`
9526
9527	// The new service role ARN for the data source.
9528	ServiceRoleArn *string `locationName:"serviceRoleArn" type:"string"`
9529
9530	// The new data source type.
9531	//
9532	// Type is a required field
9533	Type *string `locationName:"type" type:"string" required:"true" enum:"DataSourceType"`
9534}
9535
9536// String returns the string representation
9537func (s UpdateDataSourceInput) String() string {
9538	return awsutil.Prettify(s)
9539}
9540
9541// GoString returns the string representation
9542func (s UpdateDataSourceInput) GoString() string {
9543	return s.String()
9544}
9545
9546// Validate inspects the fields of the type to determine if they are valid.
9547func (s *UpdateDataSourceInput) Validate() error {
9548	invalidParams := request.ErrInvalidParams{Context: "UpdateDataSourceInput"}
9549	if s.ApiId == nil {
9550		invalidParams.Add(request.NewErrParamRequired("ApiId"))
9551	}
9552	if s.ApiId != nil && len(*s.ApiId) < 1 {
9553		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
9554	}
9555	if s.Name == nil {
9556		invalidParams.Add(request.NewErrParamRequired("Name"))
9557	}
9558	if s.Name != nil && len(*s.Name) < 1 {
9559		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
9560	}
9561	if s.Type == nil {
9562		invalidParams.Add(request.NewErrParamRequired("Type"))
9563	}
9564	if s.DynamodbConfig != nil {
9565		if err := s.DynamodbConfig.Validate(); err != nil {
9566			invalidParams.AddNested("DynamodbConfig", err.(request.ErrInvalidParams))
9567		}
9568	}
9569	if s.ElasticsearchConfig != nil {
9570		if err := s.ElasticsearchConfig.Validate(); err != nil {
9571			invalidParams.AddNested("ElasticsearchConfig", err.(request.ErrInvalidParams))
9572		}
9573	}
9574	if s.HttpConfig != nil {
9575		if err := s.HttpConfig.Validate(); err != nil {
9576			invalidParams.AddNested("HttpConfig", err.(request.ErrInvalidParams))
9577		}
9578	}
9579	if s.LambdaConfig != nil {
9580		if err := s.LambdaConfig.Validate(); err != nil {
9581			invalidParams.AddNested("LambdaConfig", err.(request.ErrInvalidParams))
9582		}
9583	}
9584
9585	if invalidParams.Len() > 0 {
9586		return invalidParams
9587	}
9588	return nil
9589}
9590
9591// SetApiId sets the ApiId field's value.
9592func (s *UpdateDataSourceInput) SetApiId(v string) *UpdateDataSourceInput {
9593	s.ApiId = &v
9594	return s
9595}
9596
9597// SetDescription sets the Description field's value.
9598func (s *UpdateDataSourceInput) SetDescription(v string) *UpdateDataSourceInput {
9599	s.Description = &v
9600	return s
9601}
9602
9603// SetDynamodbConfig sets the DynamodbConfig field's value.
9604func (s *UpdateDataSourceInput) SetDynamodbConfig(v *DynamodbDataSourceConfig) *UpdateDataSourceInput {
9605	s.DynamodbConfig = v
9606	return s
9607}
9608
9609// SetElasticsearchConfig sets the ElasticsearchConfig field's value.
9610func (s *UpdateDataSourceInput) SetElasticsearchConfig(v *ElasticsearchDataSourceConfig) *UpdateDataSourceInput {
9611	s.ElasticsearchConfig = v
9612	return s
9613}
9614
9615// SetHttpConfig sets the HttpConfig field's value.
9616func (s *UpdateDataSourceInput) SetHttpConfig(v *HttpDataSourceConfig) *UpdateDataSourceInput {
9617	s.HttpConfig = v
9618	return s
9619}
9620
9621// SetLambdaConfig sets the LambdaConfig field's value.
9622func (s *UpdateDataSourceInput) SetLambdaConfig(v *LambdaDataSourceConfig) *UpdateDataSourceInput {
9623	s.LambdaConfig = v
9624	return s
9625}
9626
9627// SetName sets the Name field's value.
9628func (s *UpdateDataSourceInput) SetName(v string) *UpdateDataSourceInput {
9629	s.Name = &v
9630	return s
9631}
9632
9633// SetRelationalDatabaseConfig sets the RelationalDatabaseConfig field's value.
9634func (s *UpdateDataSourceInput) SetRelationalDatabaseConfig(v *RelationalDatabaseDataSourceConfig) *UpdateDataSourceInput {
9635	s.RelationalDatabaseConfig = v
9636	return s
9637}
9638
9639// SetServiceRoleArn sets the ServiceRoleArn field's value.
9640func (s *UpdateDataSourceInput) SetServiceRoleArn(v string) *UpdateDataSourceInput {
9641	s.ServiceRoleArn = &v
9642	return s
9643}
9644
9645// SetType sets the Type field's value.
9646func (s *UpdateDataSourceInput) SetType(v string) *UpdateDataSourceInput {
9647	s.Type = &v
9648	return s
9649}
9650
9651type UpdateDataSourceOutput struct {
9652	_ struct{} `type:"structure"`
9653
9654	// The updated DataSource object.
9655	DataSource *DataSource `locationName:"dataSource" type:"structure"`
9656}
9657
9658// String returns the string representation
9659func (s UpdateDataSourceOutput) String() string {
9660	return awsutil.Prettify(s)
9661}
9662
9663// GoString returns the string representation
9664func (s UpdateDataSourceOutput) GoString() string {
9665	return s.String()
9666}
9667
9668// SetDataSource sets the DataSource field's value.
9669func (s *UpdateDataSourceOutput) SetDataSource(v *DataSource) *UpdateDataSourceOutput {
9670	s.DataSource = v
9671	return s
9672}
9673
9674type UpdateFunctionInput struct {
9675	_ struct{} `type:"structure"`
9676
9677	// The GraphQL API ID.
9678	//
9679	// ApiId is a required field
9680	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
9681
9682	// The Function DataSource name.
9683	//
9684	// DataSourceName is a required field
9685	DataSourceName *string `locationName:"dataSourceName" min:"1" type:"string" required:"true"`
9686
9687	// The Function description.
9688	Description *string `locationName:"description" type:"string"`
9689
9690	// The function ID.
9691	//
9692	// FunctionId is a required field
9693	FunctionId *string `location:"uri" locationName:"functionId" min:"1" type:"string" required:"true"`
9694
9695	// The version of the request mapping template. Currently the supported value
9696	// is 2018-05-29.
9697	//
9698	// FunctionVersion is a required field
9699	FunctionVersion *string `locationName:"functionVersion" type:"string" required:"true"`
9700
9701	// The Function name.
9702	//
9703	// Name is a required field
9704	Name *string `locationName:"name" min:"1" type:"string" required:"true"`
9705
9706	// The Function request mapping template. Functions support only the 2018-05-29
9707	// version of the request mapping template.
9708	RequestMappingTemplate *string `locationName:"requestMappingTemplate" min:"1" type:"string"`
9709
9710	// The Function request mapping template.
9711	ResponseMappingTemplate *string `locationName:"responseMappingTemplate" min:"1" type:"string"`
9712}
9713
9714// String returns the string representation
9715func (s UpdateFunctionInput) String() string {
9716	return awsutil.Prettify(s)
9717}
9718
9719// GoString returns the string representation
9720func (s UpdateFunctionInput) GoString() string {
9721	return s.String()
9722}
9723
9724// Validate inspects the fields of the type to determine if they are valid.
9725func (s *UpdateFunctionInput) Validate() error {
9726	invalidParams := request.ErrInvalidParams{Context: "UpdateFunctionInput"}
9727	if s.ApiId == nil {
9728		invalidParams.Add(request.NewErrParamRequired("ApiId"))
9729	}
9730	if s.ApiId != nil && len(*s.ApiId) < 1 {
9731		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
9732	}
9733	if s.DataSourceName == nil {
9734		invalidParams.Add(request.NewErrParamRequired("DataSourceName"))
9735	}
9736	if s.DataSourceName != nil && len(*s.DataSourceName) < 1 {
9737		invalidParams.Add(request.NewErrParamMinLen("DataSourceName", 1))
9738	}
9739	if s.FunctionId == nil {
9740		invalidParams.Add(request.NewErrParamRequired("FunctionId"))
9741	}
9742	if s.FunctionId != nil && len(*s.FunctionId) < 1 {
9743		invalidParams.Add(request.NewErrParamMinLen("FunctionId", 1))
9744	}
9745	if s.FunctionVersion == nil {
9746		invalidParams.Add(request.NewErrParamRequired("FunctionVersion"))
9747	}
9748	if s.Name == nil {
9749		invalidParams.Add(request.NewErrParamRequired("Name"))
9750	}
9751	if s.Name != nil && len(*s.Name) < 1 {
9752		invalidParams.Add(request.NewErrParamMinLen("Name", 1))
9753	}
9754	if s.RequestMappingTemplate != nil && len(*s.RequestMappingTemplate) < 1 {
9755		invalidParams.Add(request.NewErrParamMinLen("RequestMappingTemplate", 1))
9756	}
9757	if s.ResponseMappingTemplate != nil && len(*s.ResponseMappingTemplate) < 1 {
9758		invalidParams.Add(request.NewErrParamMinLen("ResponseMappingTemplate", 1))
9759	}
9760
9761	if invalidParams.Len() > 0 {
9762		return invalidParams
9763	}
9764	return nil
9765}
9766
9767// SetApiId sets the ApiId field's value.
9768func (s *UpdateFunctionInput) SetApiId(v string) *UpdateFunctionInput {
9769	s.ApiId = &v
9770	return s
9771}
9772
9773// SetDataSourceName sets the DataSourceName field's value.
9774func (s *UpdateFunctionInput) SetDataSourceName(v string) *UpdateFunctionInput {
9775	s.DataSourceName = &v
9776	return s
9777}
9778
9779// SetDescription sets the Description field's value.
9780func (s *UpdateFunctionInput) SetDescription(v string) *UpdateFunctionInput {
9781	s.Description = &v
9782	return s
9783}
9784
9785// SetFunctionId sets the FunctionId field's value.
9786func (s *UpdateFunctionInput) SetFunctionId(v string) *UpdateFunctionInput {
9787	s.FunctionId = &v
9788	return s
9789}
9790
9791// SetFunctionVersion sets the FunctionVersion field's value.
9792func (s *UpdateFunctionInput) SetFunctionVersion(v string) *UpdateFunctionInput {
9793	s.FunctionVersion = &v
9794	return s
9795}
9796
9797// SetName sets the Name field's value.
9798func (s *UpdateFunctionInput) SetName(v string) *UpdateFunctionInput {
9799	s.Name = &v
9800	return s
9801}
9802
9803// SetRequestMappingTemplate sets the RequestMappingTemplate field's value.
9804func (s *UpdateFunctionInput) SetRequestMappingTemplate(v string) *UpdateFunctionInput {
9805	s.RequestMappingTemplate = &v
9806	return s
9807}
9808
9809// SetResponseMappingTemplate sets the ResponseMappingTemplate field's value.
9810func (s *UpdateFunctionInput) SetResponseMappingTemplate(v string) *UpdateFunctionInput {
9811	s.ResponseMappingTemplate = &v
9812	return s
9813}
9814
9815type UpdateFunctionOutput struct {
9816	_ struct{} `type:"structure"`
9817
9818	// The Function object.
9819	FunctionConfiguration *FunctionConfiguration `locationName:"functionConfiguration" type:"structure"`
9820}
9821
9822// String returns the string representation
9823func (s UpdateFunctionOutput) String() string {
9824	return awsutil.Prettify(s)
9825}
9826
9827// GoString returns the string representation
9828func (s UpdateFunctionOutput) GoString() string {
9829	return s.String()
9830}
9831
9832// SetFunctionConfiguration sets the FunctionConfiguration field's value.
9833func (s *UpdateFunctionOutput) SetFunctionConfiguration(v *FunctionConfiguration) *UpdateFunctionOutput {
9834	s.FunctionConfiguration = v
9835	return s
9836}
9837
9838type UpdateGraphqlApiInput struct {
9839	_ struct{} `type:"structure"`
9840
9841	// A list of additional authentication providers for the GraphqlApi API.
9842	AdditionalAuthenticationProviders []*AdditionalAuthenticationProvider `locationName:"additionalAuthenticationProviders" type:"list"`
9843
9844	// The API ID.
9845	//
9846	// ApiId is a required field
9847	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
9848
9849	// The new authentication type for the GraphqlApi object.
9850	AuthenticationType *string `locationName:"authenticationType" type:"string" enum:"AuthenticationType"`
9851
9852	// The Amazon CloudWatch Logs configuration for the GraphqlApi object.
9853	LogConfig *LogConfig `locationName:"logConfig" type:"structure"`
9854
9855	// The new name for the GraphqlApi object.
9856	//
9857	// Name is a required field
9858	Name *string `locationName:"name" type:"string" required:"true"`
9859
9860	// The OpenID Connect configuration for the GraphqlApi object.
9861	OpenIDConnectConfig *OpenIDConnectConfig `locationName:"openIDConnectConfig" type:"structure"`
9862
9863	// The new Amazon Cognito user pool configuration for the GraphqlApi object.
9864	UserPoolConfig *UserPoolConfig `locationName:"userPoolConfig" type:"structure"`
9865
9866	// A flag indicating whether to enable X-Ray tracing for the GraphqlApi.
9867	XrayEnabled *bool `locationName:"xrayEnabled" type:"boolean"`
9868}
9869
9870// String returns the string representation
9871func (s UpdateGraphqlApiInput) String() string {
9872	return awsutil.Prettify(s)
9873}
9874
9875// GoString returns the string representation
9876func (s UpdateGraphqlApiInput) GoString() string {
9877	return s.String()
9878}
9879
9880// Validate inspects the fields of the type to determine if they are valid.
9881func (s *UpdateGraphqlApiInput) Validate() error {
9882	invalidParams := request.ErrInvalidParams{Context: "UpdateGraphqlApiInput"}
9883	if s.ApiId == nil {
9884		invalidParams.Add(request.NewErrParamRequired("ApiId"))
9885	}
9886	if s.ApiId != nil && len(*s.ApiId) < 1 {
9887		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
9888	}
9889	if s.Name == nil {
9890		invalidParams.Add(request.NewErrParamRequired("Name"))
9891	}
9892	if s.AdditionalAuthenticationProviders != nil {
9893		for i, v := range s.AdditionalAuthenticationProviders {
9894			if v == nil {
9895				continue
9896			}
9897			if err := v.Validate(); err != nil {
9898				invalidParams.AddNested(fmt.Sprintf("%s[%v]", "AdditionalAuthenticationProviders", i), err.(request.ErrInvalidParams))
9899			}
9900		}
9901	}
9902	if s.LogConfig != nil {
9903		if err := s.LogConfig.Validate(); err != nil {
9904			invalidParams.AddNested("LogConfig", err.(request.ErrInvalidParams))
9905		}
9906	}
9907	if s.OpenIDConnectConfig != nil {
9908		if err := s.OpenIDConnectConfig.Validate(); err != nil {
9909			invalidParams.AddNested("OpenIDConnectConfig", err.(request.ErrInvalidParams))
9910		}
9911	}
9912	if s.UserPoolConfig != nil {
9913		if err := s.UserPoolConfig.Validate(); err != nil {
9914			invalidParams.AddNested("UserPoolConfig", err.(request.ErrInvalidParams))
9915		}
9916	}
9917
9918	if invalidParams.Len() > 0 {
9919		return invalidParams
9920	}
9921	return nil
9922}
9923
9924// SetAdditionalAuthenticationProviders sets the AdditionalAuthenticationProviders field's value.
9925func (s *UpdateGraphqlApiInput) SetAdditionalAuthenticationProviders(v []*AdditionalAuthenticationProvider) *UpdateGraphqlApiInput {
9926	s.AdditionalAuthenticationProviders = v
9927	return s
9928}
9929
9930// SetApiId sets the ApiId field's value.
9931func (s *UpdateGraphqlApiInput) SetApiId(v string) *UpdateGraphqlApiInput {
9932	s.ApiId = &v
9933	return s
9934}
9935
9936// SetAuthenticationType sets the AuthenticationType field's value.
9937func (s *UpdateGraphqlApiInput) SetAuthenticationType(v string) *UpdateGraphqlApiInput {
9938	s.AuthenticationType = &v
9939	return s
9940}
9941
9942// SetLogConfig sets the LogConfig field's value.
9943func (s *UpdateGraphqlApiInput) SetLogConfig(v *LogConfig) *UpdateGraphqlApiInput {
9944	s.LogConfig = v
9945	return s
9946}
9947
9948// SetName sets the Name field's value.
9949func (s *UpdateGraphqlApiInput) SetName(v string) *UpdateGraphqlApiInput {
9950	s.Name = &v
9951	return s
9952}
9953
9954// SetOpenIDConnectConfig sets the OpenIDConnectConfig field's value.
9955func (s *UpdateGraphqlApiInput) SetOpenIDConnectConfig(v *OpenIDConnectConfig) *UpdateGraphqlApiInput {
9956	s.OpenIDConnectConfig = v
9957	return s
9958}
9959
9960// SetUserPoolConfig sets the UserPoolConfig field's value.
9961func (s *UpdateGraphqlApiInput) SetUserPoolConfig(v *UserPoolConfig) *UpdateGraphqlApiInput {
9962	s.UserPoolConfig = v
9963	return s
9964}
9965
9966// SetXrayEnabled sets the XrayEnabled field's value.
9967func (s *UpdateGraphqlApiInput) SetXrayEnabled(v bool) *UpdateGraphqlApiInput {
9968	s.XrayEnabled = &v
9969	return s
9970}
9971
9972type UpdateGraphqlApiOutput struct {
9973	_ struct{} `type:"structure"`
9974
9975	// The updated GraphqlApi object.
9976	GraphqlApi *GraphqlApi `locationName:"graphqlApi" type:"structure"`
9977}
9978
9979// String returns the string representation
9980func (s UpdateGraphqlApiOutput) String() string {
9981	return awsutil.Prettify(s)
9982}
9983
9984// GoString returns the string representation
9985func (s UpdateGraphqlApiOutput) GoString() string {
9986	return s.String()
9987}
9988
9989// SetGraphqlApi sets the GraphqlApi field's value.
9990func (s *UpdateGraphqlApiOutput) SetGraphqlApi(v *GraphqlApi) *UpdateGraphqlApiOutput {
9991	s.GraphqlApi = v
9992	return s
9993}
9994
9995type UpdateResolverInput struct {
9996	_ struct{} `type:"structure"`
9997
9998	// The API ID.
9999	//
10000	// ApiId is a required field
10001	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
10002
10003	// The caching configuration for the resolver.
10004	CachingConfig *CachingConfig `locationName:"cachingConfig" type:"structure"`
10005
10006	// The new data source name.
10007	DataSourceName *string `locationName:"dataSourceName" min:"1" type:"string"`
10008
10009	// The new field name.
10010	//
10011	// FieldName is a required field
10012	FieldName *string `location:"uri" locationName:"fieldName" min:"1" type:"string" required:"true"`
10013
10014	// The resolver type.
10015	//
10016	//    * UNIT: A UNIT resolver type. A UNIT resolver is the default resolver
10017	//    type. A UNIT resolver enables you to execute a GraphQL query against a
10018	//    single data source.
10019	//
10020	//    * PIPELINE: A PIPELINE resolver type. A PIPELINE resolver enables you
10021	//    to execute a series of Function in a serial manner. You can use a pipeline
10022	//    resolver to execute a GraphQL query against multiple data sources.
10023	Kind *string `locationName:"kind" type:"string" enum:"ResolverKind"`
10024
10025	// The PipelineConfig.
10026	PipelineConfig *PipelineConfig `locationName:"pipelineConfig" type:"structure"`
10027
10028	// The new request mapping template.
10029	//
10030	// A resolver uses a request mapping template to convert a GraphQL expression
10031	// into a format that a data source can understand. Mapping templates are written
10032	// in Apache Velocity Template Language (VTL).
10033	//
10034	// VTL request mapping templates are optional when using a Lambda data source.
10035	// For all other data sources, VTL request and response mapping templates are
10036	// required.
10037	RequestMappingTemplate *string `locationName:"requestMappingTemplate" min:"1" type:"string"`
10038
10039	// The new response mapping template.
10040	ResponseMappingTemplate *string `locationName:"responseMappingTemplate" min:"1" type:"string"`
10041
10042	// The SyncConfig for a resolver attached to a versioned datasource.
10043	SyncConfig *SyncConfig `locationName:"syncConfig" type:"structure"`
10044
10045	// The new type name.
10046	//
10047	// TypeName is a required field
10048	TypeName *string `location:"uri" locationName:"typeName" min:"1" type:"string" required:"true"`
10049}
10050
10051// String returns the string representation
10052func (s UpdateResolverInput) String() string {
10053	return awsutil.Prettify(s)
10054}
10055
10056// GoString returns the string representation
10057func (s UpdateResolverInput) GoString() string {
10058	return s.String()
10059}
10060
10061// Validate inspects the fields of the type to determine if they are valid.
10062func (s *UpdateResolverInput) Validate() error {
10063	invalidParams := request.ErrInvalidParams{Context: "UpdateResolverInput"}
10064	if s.ApiId == nil {
10065		invalidParams.Add(request.NewErrParamRequired("ApiId"))
10066	}
10067	if s.ApiId != nil && len(*s.ApiId) < 1 {
10068		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
10069	}
10070	if s.DataSourceName != nil && len(*s.DataSourceName) < 1 {
10071		invalidParams.Add(request.NewErrParamMinLen("DataSourceName", 1))
10072	}
10073	if s.FieldName == nil {
10074		invalidParams.Add(request.NewErrParamRequired("FieldName"))
10075	}
10076	if s.FieldName != nil && len(*s.FieldName) < 1 {
10077		invalidParams.Add(request.NewErrParamMinLen("FieldName", 1))
10078	}
10079	if s.RequestMappingTemplate != nil && len(*s.RequestMappingTemplate) < 1 {
10080		invalidParams.Add(request.NewErrParamMinLen("RequestMappingTemplate", 1))
10081	}
10082	if s.ResponseMappingTemplate != nil && len(*s.ResponseMappingTemplate) < 1 {
10083		invalidParams.Add(request.NewErrParamMinLen("ResponseMappingTemplate", 1))
10084	}
10085	if s.TypeName == nil {
10086		invalidParams.Add(request.NewErrParamRequired("TypeName"))
10087	}
10088	if s.TypeName != nil && len(*s.TypeName) < 1 {
10089		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
10090	}
10091
10092	if invalidParams.Len() > 0 {
10093		return invalidParams
10094	}
10095	return nil
10096}
10097
10098// SetApiId sets the ApiId field's value.
10099func (s *UpdateResolverInput) SetApiId(v string) *UpdateResolverInput {
10100	s.ApiId = &v
10101	return s
10102}
10103
10104// SetCachingConfig sets the CachingConfig field's value.
10105func (s *UpdateResolverInput) SetCachingConfig(v *CachingConfig) *UpdateResolverInput {
10106	s.CachingConfig = v
10107	return s
10108}
10109
10110// SetDataSourceName sets the DataSourceName field's value.
10111func (s *UpdateResolverInput) SetDataSourceName(v string) *UpdateResolverInput {
10112	s.DataSourceName = &v
10113	return s
10114}
10115
10116// SetFieldName sets the FieldName field's value.
10117func (s *UpdateResolverInput) SetFieldName(v string) *UpdateResolverInput {
10118	s.FieldName = &v
10119	return s
10120}
10121
10122// SetKind sets the Kind field's value.
10123func (s *UpdateResolverInput) SetKind(v string) *UpdateResolverInput {
10124	s.Kind = &v
10125	return s
10126}
10127
10128// SetPipelineConfig sets the PipelineConfig field's value.
10129func (s *UpdateResolverInput) SetPipelineConfig(v *PipelineConfig) *UpdateResolverInput {
10130	s.PipelineConfig = v
10131	return s
10132}
10133
10134// SetRequestMappingTemplate sets the RequestMappingTemplate field's value.
10135func (s *UpdateResolverInput) SetRequestMappingTemplate(v string) *UpdateResolverInput {
10136	s.RequestMappingTemplate = &v
10137	return s
10138}
10139
10140// SetResponseMappingTemplate sets the ResponseMappingTemplate field's value.
10141func (s *UpdateResolverInput) SetResponseMappingTemplate(v string) *UpdateResolverInput {
10142	s.ResponseMappingTemplate = &v
10143	return s
10144}
10145
10146// SetSyncConfig sets the SyncConfig field's value.
10147func (s *UpdateResolverInput) SetSyncConfig(v *SyncConfig) *UpdateResolverInput {
10148	s.SyncConfig = v
10149	return s
10150}
10151
10152// SetTypeName sets the TypeName field's value.
10153func (s *UpdateResolverInput) SetTypeName(v string) *UpdateResolverInput {
10154	s.TypeName = &v
10155	return s
10156}
10157
10158type UpdateResolverOutput struct {
10159	_ struct{} `type:"structure"`
10160
10161	// The updated Resolver object.
10162	Resolver *Resolver `locationName:"resolver" type:"structure"`
10163}
10164
10165// String returns the string representation
10166func (s UpdateResolverOutput) String() string {
10167	return awsutil.Prettify(s)
10168}
10169
10170// GoString returns the string representation
10171func (s UpdateResolverOutput) GoString() string {
10172	return s.String()
10173}
10174
10175// SetResolver sets the Resolver field's value.
10176func (s *UpdateResolverOutput) SetResolver(v *Resolver) *UpdateResolverOutput {
10177	s.Resolver = v
10178	return s
10179}
10180
10181type UpdateTypeInput struct {
10182	_ struct{} `type:"structure"`
10183
10184	// The API ID.
10185	//
10186	// ApiId is a required field
10187	ApiId *string `location:"uri" locationName:"apiId" type:"string" required:"true"`
10188
10189	// The new definition.
10190	Definition *string `locationName:"definition" type:"string"`
10191
10192	// The new type format: SDL or JSON.
10193	//
10194	// Format is a required field
10195	Format *string `locationName:"format" type:"string" required:"true" enum:"TypeDefinitionFormat"`
10196
10197	// The new type name.
10198	//
10199	// TypeName is a required field
10200	TypeName *string `location:"uri" locationName:"typeName" min:"1" type:"string" required:"true"`
10201}
10202
10203// String returns the string representation
10204func (s UpdateTypeInput) String() string {
10205	return awsutil.Prettify(s)
10206}
10207
10208// GoString returns the string representation
10209func (s UpdateTypeInput) GoString() string {
10210	return s.String()
10211}
10212
10213// Validate inspects the fields of the type to determine if they are valid.
10214func (s *UpdateTypeInput) Validate() error {
10215	invalidParams := request.ErrInvalidParams{Context: "UpdateTypeInput"}
10216	if s.ApiId == nil {
10217		invalidParams.Add(request.NewErrParamRequired("ApiId"))
10218	}
10219	if s.ApiId != nil && len(*s.ApiId) < 1 {
10220		invalidParams.Add(request.NewErrParamMinLen("ApiId", 1))
10221	}
10222	if s.Format == nil {
10223		invalidParams.Add(request.NewErrParamRequired("Format"))
10224	}
10225	if s.TypeName == nil {
10226		invalidParams.Add(request.NewErrParamRequired("TypeName"))
10227	}
10228	if s.TypeName != nil && len(*s.TypeName) < 1 {
10229		invalidParams.Add(request.NewErrParamMinLen("TypeName", 1))
10230	}
10231
10232	if invalidParams.Len() > 0 {
10233		return invalidParams
10234	}
10235	return nil
10236}
10237
10238// SetApiId sets the ApiId field's value.
10239func (s *UpdateTypeInput) SetApiId(v string) *UpdateTypeInput {
10240	s.ApiId = &v
10241	return s
10242}
10243
10244// SetDefinition sets the Definition field's value.
10245func (s *UpdateTypeInput) SetDefinition(v string) *UpdateTypeInput {
10246	s.Definition = &v
10247	return s
10248}
10249
10250// SetFormat sets the Format field's value.
10251func (s *UpdateTypeInput) SetFormat(v string) *UpdateTypeInput {
10252	s.Format = &v
10253	return s
10254}
10255
10256// SetTypeName sets the TypeName field's value.
10257func (s *UpdateTypeInput) SetTypeName(v string) *UpdateTypeInput {
10258	s.TypeName = &v
10259	return s
10260}
10261
10262type UpdateTypeOutput struct {
10263	_ struct{} `type:"structure"`
10264
10265	// The updated Type object.
10266	Type *Type `locationName:"type" type:"structure"`
10267}
10268
10269// String returns the string representation
10270func (s UpdateTypeOutput) String() string {
10271	return awsutil.Prettify(s)
10272}
10273
10274// GoString returns the string representation
10275func (s UpdateTypeOutput) GoString() string {
10276	return s.String()
10277}
10278
10279// SetType sets the Type field's value.
10280func (s *UpdateTypeOutput) SetType(v *Type) *UpdateTypeOutput {
10281	s.Type = v
10282	return s
10283}
10284
10285// Describes an Amazon Cognito user pool configuration.
10286type UserPoolConfig struct {
10287	_ struct{} `type:"structure"`
10288
10289	// A regular expression for validating the incoming Amazon Cognito user pool
10290	// app client ID.
10291	AppIdClientRegex *string `locationName:"appIdClientRegex" type:"string"`
10292
10293	// The AWS Region in which the user pool was created.
10294	//
10295	// AwsRegion is a required field
10296	AwsRegion *string `locationName:"awsRegion" type:"string" required:"true"`
10297
10298	// The action that you want your GraphQL API to take when a request that uses
10299	// Amazon Cognito user pool authentication doesn't match the Amazon Cognito
10300	// user pool configuration.
10301	//
10302	// DefaultAction is a required field
10303	DefaultAction *string `locationName:"defaultAction" type:"string" required:"true" enum:"DefaultAction"`
10304
10305	// The user pool ID.
10306	//
10307	// UserPoolId is a required field
10308	UserPoolId *string `locationName:"userPoolId" type:"string" required:"true"`
10309}
10310
10311// String returns the string representation
10312func (s UserPoolConfig) String() string {
10313	return awsutil.Prettify(s)
10314}
10315
10316// GoString returns the string representation
10317func (s UserPoolConfig) GoString() string {
10318	return s.String()
10319}
10320
10321// Validate inspects the fields of the type to determine if they are valid.
10322func (s *UserPoolConfig) Validate() error {
10323	invalidParams := request.ErrInvalidParams{Context: "UserPoolConfig"}
10324	if s.AwsRegion == nil {
10325		invalidParams.Add(request.NewErrParamRequired("AwsRegion"))
10326	}
10327	if s.DefaultAction == nil {
10328		invalidParams.Add(request.NewErrParamRequired("DefaultAction"))
10329	}
10330	if s.UserPoolId == nil {
10331		invalidParams.Add(request.NewErrParamRequired("UserPoolId"))
10332	}
10333
10334	if invalidParams.Len() > 0 {
10335		return invalidParams
10336	}
10337	return nil
10338}
10339
10340// SetAppIdClientRegex sets the AppIdClientRegex field's value.
10341func (s *UserPoolConfig) SetAppIdClientRegex(v string) *UserPoolConfig {
10342	s.AppIdClientRegex = &v
10343	return s
10344}
10345
10346// SetAwsRegion sets the AwsRegion field's value.
10347func (s *UserPoolConfig) SetAwsRegion(v string) *UserPoolConfig {
10348	s.AwsRegion = &v
10349	return s
10350}
10351
10352// SetDefaultAction sets the DefaultAction field's value.
10353func (s *UserPoolConfig) SetDefaultAction(v string) *UserPoolConfig {
10354	s.DefaultAction = &v
10355	return s
10356}
10357
10358// SetUserPoolId sets the UserPoolId field's value.
10359func (s *UserPoolConfig) SetUserPoolId(v string) *UserPoolConfig {
10360	s.UserPoolId = &v
10361	return s
10362}
10363
10364const (
10365	// ApiCacheStatusAvailable is a ApiCacheStatus enum value
10366	ApiCacheStatusAvailable = "AVAILABLE"
10367
10368	// ApiCacheStatusCreating is a ApiCacheStatus enum value
10369	ApiCacheStatusCreating = "CREATING"
10370
10371	// ApiCacheStatusDeleting is a ApiCacheStatus enum value
10372	ApiCacheStatusDeleting = "DELETING"
10373
10374	// ApiCacheStatusModifying is a ApiCacheStatus enum value
10375	ApiCacheStatusModifying = "MODIFYING"
10376
10377	// ApiCacheStatusFailed is a ApiCacheStatus enum value
10378	ApiCacheStatusFailed = "FAILED"
10379)
10380
10381// ApiCacheStatus_Values returns all elements of the ApiCacheStatus enum
10382func ApiCacheStatus_Values() []string {
10383	return []string{
10384		ApiCacheStatusAvailable,
10385		ApiCacheStatusCreating,
10386		ApiCacheStatusDeleting,
10387		ApiCacheStatusModifying,
10388		ApiCacheStatusFailed,
10389	}
10390}
10391
10392const (
10393	// ApiCacheTypeT2Small is a ApiCacheType enum value
10394	ApiCacheTypeT2Small = "T2_SMALL"
10395
10396	// ApiCacheTypeT2Medium is a ApiCacheType enum value
10397	ApiCacheTypeT2Medium = "T2_MEDIUM"
10398
10399	// ApiCacheTypeR4Large is a ApiCacheType enum value
10400	ApiCacheTypeR4Large = "R4_LARGE"
10401
10402	// ApiCacheTypeR4Xlarge is a ApiCacheType enum value
10403	ApiCacheTypeR4Xlarge = "R4_XLARGE"
10404
10405	// ApiCacheTypeR42xlarge is a ApiCacheType enum value
10406	ApiCacheTypeR42xlarge = "R4_2XLARGE"
10407
10408	// ApiCacheTypeR44xlarge is a ApiCacheType enum value
10409	ApiCacheTypeR44xlarge = "R4_4XLARGE"
10410
10411	// ApiCacheTypeR48xlarge is a ApiCacheType enum value
10412	ApiCacheTypeR48xlarge = "R4_8XLARGE"
10413
10414	// ApiCacheTypeSmall is a ApiCacheType enum value
10415	ApiCacheTypeSmall = "SMALL"
10416
10417	// ApiCacheTypeMedium is a ApiCacheType enum value
10418	ApiCacheTypeMedium = "MEDIUM"
10419
10420	// ApiCacheTypeLarge is a ApiCacheType enum value
10421	ApiCacheTypeLarge = "LARGE"
10422
10423	// ApiCacheTypeXlarge is a ApiCacheType enum value
10424	ApiCacheTypeXlarge = "XLARGE"
10425
10426	// ApiCacheTypeLarge2x is a ApiCacheType enum value
10427	ApiCacheTypeLarge2x = "LARGE_2X"
10428
10429	// ApiCacheTypeLarge4x is a ApiCacheType enum value
10430	ApiCacheTypeLarge4x = "LARGE_4X"
10431
10432	// ApiCacheTypeLarge8x is a ApiCacheType enum value
10433	ApiCacheTypeLarge8x = "LARGE_8X"
10434
10435	// ApiCacheTypeLarge12x is a ApiCacheType enum value
10436	ApiCacheTypeLarge12x = "LARGE_12X"
10437)
10438
10439// ApiCacheType_Values returns all elements of the ApiCacheType enum
10440func ApiCacheType_Values() []string {
10441	return []string{
10442		ApiCacheTypeT2Small,
10443		ApiCacheTypeT2Medium,
10444		ApiCacheTypeR4Large,
10445		ApiCacheTypeR4Xlarge,
10446		ApiCacheTypeR42xlarge,
10447		ApiCacheTypeR44xlarge,
10448		ApiCacheTypeR48xlarge,
10449		ApiCacheTypeSmall,
10450		ApiCacheTypeMedium,
10451		ApiCacheTypeLarge,
10452		ApiCacheTypeXlarge,
10453		ApiCacheTypeLarge2x,
10454		ApiCacheTypeLarge4x,
10455		ApiCacheTypeLarge8x,
10456		ApiCacheTypeLarge12x,
10457	}
10458}
10459
10460const (
10461	// ApiCachingBehaviorFullRequestCaching is a ApiCachingBehavior enum value
10462	ApiCachingBehaviorFullRequestCaching = "FULL_REQUEST_CACHING"
10463
10464	// ApiCachingBehaviorPerResolverCaching is a ApiCachingBehavior enum value
10465	ApiCachingBehaviorPerResolverCaching = "PER_RESOLVER_CACHING"
10466)
10467
10468// ApiCachingBehavior_Values returns all elements of the ApiCachingBehavior enum
10469func ApiCachingBehavior_Values() []string {
10470	return []string{
10471		ApiCachingBehaviorFullRequestCaching,
10472		ApiCachingBehaviorPerResolverCaching,
10473	}
10474}
10475
10476const (
10477	// AuthenticationTypeApiKey is a AuthenticationType enum value
10478	AuthenticationTypeApiKey = "API_KEY"
10479
10480	// AuthenticationTypeAwsIam is a AuthenticationType enum value
10481	AuthenticationTypeAwsIam = "AWS_IAM"
10482
10483	// AuthenticationTypeAmazonCognitoUserPools is a AuthenticationType enum value
10484	AuthenticationTypeAmazonCognitoUserPools = "AMAZON_COGNITO_USER_POOLS"
10485
10486	// AuthenticationTypeOpenidConnect is a AuthenticationType enum value
10487	AuthenticationTypeOpenidConnect = "OPENID_CONNECT"
10488)
10489
10490// AuthenticationType_Values returns all elements of the AuthenticationType enum
10491func AuthenticationType_Values() []string {
10492	return []string{
10493		AuthenticationTypeApiKey,
10494		AuthenticationTypeAwsIam,
10495		AuthenticationTypeAmazonCognitoUserPools,
10496		AuthenticationTypeOpenidConnect,
10497	}
10498}
10499
10500const (
10501	// AuthorizationTypeAwsIam is a AuthorizationType enum value
10502	AuthorizationTypeAwsIam = "AWS_IAM"
10503)
10504
10505// AuthorizationType_Values returns all elements of the AuthorizationType enum
10506func AuthorizationType_Values() []string {
10507	return []string{
10508		AuthorizationTypeAwsIam,
10509	}
10510}
10511
10512const (
10513	// ConflictDetectionTypeVersion is a ConflictDetectionType enum value
10514	ConflictDetectionTypeVersion = "VERSION"
10515
10516	// ConflictDetectionTypeNone is a ConflictDetectionType enum value
10517	ConflictDetectionTypeNone = "NONE"
10518)
10519
10520// ConflictDetectionType_Values returns all elements of the ConflictDetectionType enum
10521func ConflictDetectionType_Values() []string {
10522	return []string{
10523		ConflictDetectionTypeVersion,
10524		ConflictDetectionTypeNone,
10525	}
10526}
10527
10528const (
10529	// ConflictHandlerTypeOptimisticConcurrency is a ConflictHandlerType enum value
10530	ConflictHandlerTypeOptimisticConcurrency = "OPTIMISTIC_CONCURRENCY"
10531
10532	// ConflictHandlerTypeLambda is a ConflictHandlerType enum value
10533	ConflictHandlerTypeLambda = "LAMBDA"
10534
10535	// ConflictHandlerTypeAutomerge is a ConflictHandlerType enum value
10536	ConflictHandlerTypeAutomerge = "AUTOMERGE"
10537
10538	// ConflictHandlerTypeNone is a ConflictHandlerType enum value
10539	ConflictHandlerTypeNone = "NONE"
10540)
10541
10542// ConflictHandlerType_Values returns all elements of the ConflictHandlerType enum
10543func ConflictHandlerType_Values() []string {
10544	return []string{
10545		ConflictHandlerTypeOptimisticConcurrency,
10546		ConflictHandlerTypeLambda,
10547		ConflictHandlerTypeAutomerge,
10548		ConflictHandlerTypeNone,
10549	}
10550}
10551
10552const (
10553	// DataSourceTypeAwsLambda is a DataSourceType enum value
10554	DataSourceTypeAwsLambda = "AWS_LAMBDA"
10555
10556	// DataSourceTypeAmazonDynamodb is a DataSourceType enum value
10557	DataSourceTypeAmazonDynamodb = "AMAZON_DYNAMODB"
10558
10559	// DataSourceTypeAmazonElasticsearch is a DataSourceType enum value
10560	DataSourceTypeAmazonElasticsearch = "AMAZON_ELASTICSEARCH"
10561
10562	// DataSourceTypeNone is a DataSourceType enum value
10563	DataSourceTypeNone = "NONE"
10564
10565	// DataSourceTypeHttp is a DataSourceType enum value
10566	DataSourceTypeHttp = "HTTP"
10567
10568	// DataSourceTypeRelationalDatabase is a DataSourceType enum value
10569	DataSourceTypeRelationalDatabase = "RELATIONAL_DATABASE"
10570)
10571
10572// DataSourceType_Values returns all elements of the DataSourceType enum
10573func DataSourceType_Values() []string {
10574	return []string{
10575		DataSourceTypeAwsLambda,
10576		DataSourceTypeAmazonDynamodb,
10577		DataSourceTypeAmazonElasticsearch,
10578		DataSourceTypeNone,
10579		DataSourceTypeHttp,
10580		DataSourceTypeRelationalDatabase,
10581	}
10582}
10583
10584const (
10585	// DefaultActionAllow is a DefaultAction enum value
10586	DefaultActionAllow = "ALLOW"
10587
10588	// DefaultActionDeny is a DefaultAction enum value
10589	DefaultActionDeny = "DENY"
10590)
10591
10592// DefaultAction_Values returns all elements of the DefaultAction enum
10593func DefaultAction_Values() []string {
10594	return []string{
10595		DefaultActionAllow,
10596		DefaultActionDeny,
10597	}
10598}
10599
10600const (
10601	// FieldLogLevelNone is a FieldLogLevel enum value
10602	FieldLogLevelNone = "NONE"
10603
10604	// FieldLogLevelError is a FieldLogLevel enum value
10605	FieldLogLevelError = "ERROR"
10606
10607	// FieldLogLevelAll is a FieldLogLevel enum value
10608	FieldLogLevelAll = "ALL"
10609)
10610
10611// FieldLogLevel_Values returns all elements of the FieldLogLevel enum
10612func FieldLogLevel_Values() []string {
10613	return []string{
10614		FieldLogLevelNone,
10615		FieldLogLevelError,
10616		FieldLogLevelAll,
10617	}
10618}
10619
10620const (
10621	// OutputTypeSdl is a OutputType enum value
10622	OutputTypeSdl = "SDL"
10623
10624	// OutputTypeJson is a OutputType enum value
10625	OutputTypeJson = "JSON"
10626)
10627
10628// OutputType_Values returns all elements of the OutputType enum
10629func OutputType_Values() []string {
10630	return []string{
10631		OutputTypeSdl,
10632		OutputTypeJson,
10633	}
10634}
10635
10636const (
10637	// RelationalDatabaseSourceTypeRdsHttpEndpoint is a RelationalDatabaseSourceType enum value
10638	RelationalDatabaseSourceTypeRdsHttpEndpoint = "RDS_HTTP_ENDPOINT"
10639)
10640
10641// RelationalDatabaseSourceType_Values returns all elements of the RelationalDatabaseSourceType enum
10642func RelationalDatabaseSourceType_Values() []string {
10643	return []string{
10644		RelationalDatabaseSourceTypeRdsHttpEndpoint,
10645	}
10646}
10647
10648const (
10649	// ResolverKindUnit is a ResolverKind enum value
10650	ResolverKindUnit = "UNIT"
10651
10652	// ResolverKindPipeline is a ResolverKind enum value
10653	ResolverKindPipeline = "PIPELINE"
10654)
10655
10656// ResolverKind_Values returns all elements of the ResolverKind enum
10657func ResolverKind_Values() []string {
10658	return []string{
10659		ResolverKindUnit,
10660		ResolverKindPipeline,
10661	}
10662}
10663
10664const (
10665	// SchemaStatusProcessing is a SchemaStatus enum value
10666	SchemaStatusProcessing = "PROCESSING"
10667
10668	// SchemaStatusActive is a SchemaStatus enum value
10669	SchemaStatusActive = "ACTIVE"
10670
10671	// SchemaStatusDeleting is a SchemaStatus enum value
10672	SchemaStatusDeleting = "DELETING"
10673
10674	// SchemaStatusFailed is a SchemaStatus enum value
10675	SchemaStatusFailed = "FAILED"
10676
10677	// SchemaStatusSuccess is a SchemaStatus enum value
10678	SchemaStatusSuccess = "SUCCESS"
10679
10680	// SchemaStatusNotApplicable is a SchemaStatus enum value
10681	SchemaStatusNotApplicable = "NOT_APPLICABLE"
10682)
10683
10684// SchemaStatus_Values returns all elements of the SchemaStatus enum
10685func SchemaStatus_Values() []string {
10686	return []string{
10687		SchemaStatusProcessing,
10688		SchemaStatusActive,
10689		SchemaStatusDeleting,
10690		SchemaStatusFailed,
10691		SchemaStatusSuccess,
10692		SchemaStatusNotApplicable,
10693	}
10694}
10695
10696const (
10697	// TypeDefinitionFormatSdl is a TypeDefinitionFormat enum value
10698	TypeDefinitionFormatSdl = "SDL"
10699
10700	// TypeDefinitionFormatJson is a TypeDefinitionFormat enum value
10701	TypeDefinitionFormatJson = "JSON"
10702)
10703
10704// TypeDefinitionFormat_Values returns all elements of the TypeDefinitionFormat enum
10705func TypeDefinitionFormat_Values() []string {
10706	return []string{
10707		TypeDefinitionFormatSdl,
10708		TypeDefinitionFormatJson,
10709	}
10710}
10711