String authenticationType
The authentication type: API key, Identity and Access Management (IAM), OpenID Connect (OIDC), Amazon Cognito user pools, or Lambda.
OpenIDConnectConfig openIDConnectConfig
The OIDC configuration.
CognitoUserPoolConfig userPoolConfig
The Amazon Cognito user pool configuration.
LambdaAuthorizerConfig lambdaAuthorizerConfig
Configuration for Lambda function authorization.
String domainName
The domain name.
String apiId
The API ID.
String associationStatus
Identifies the status of an association.
PROCESSING: The API association is being created. You cannot modify association requests during processing.
SUCCESS: The API association was successful. You can modify associations after success.
FAILED: The API association has failed. You can modify associations after failure.
String deploymentDetail
Details about the last deployment status.
Long ttl
TTL in seconds for cache entries.
Valid values are 1–3,600 seconds.
String apiCachingBehavior
Caching behavior.
FULL_REQUEST_CACHING: All requests are fully cached.
PER_RESOLVER_CACHING: Individual resolvers that you specify are cached.
Boolean transitEncryptionEnabled
Transit encryption flag when connecting to cache. You cannot update this setting after creation.
Boolean atRestEncryptionEnabled
At-rest encryption flag for cache. You cannot update this setting after creation.
String type
The cache instance type. Valid values are
SMALL
MEDIUM
LARGE
XLARGE
LARGE_2X
LARGE_4X
LARGE_8X
(not available in all regions)
LARGE_12X
Historically, instance types were identified by an EC2-style value. As of July 2020, this is deprecated, and the generic identifiers above should be used.
The following legacy instance types are available, but their use is discouraged:
T2_SMALL: A t2.small instance type.
T2_MEDIUM: A t2.medium instance type.
R4_LARGE: A r4.large instance type.
R4_XLARGE: A r4.xlarge instance type.
R4_2XLARGE: A r4.2xlarge instance type.
R4_4XLARGE: A r4.4xlarge instance type.
R4_8XLARGE: A r4.8xlarge instance type.
String status
The cache instance status.
AVAILABLE: The instance is available for use.
CREATING: The instance is currently creating.
DELETING: The instance is currently deleting.
MODIFYING: The instance is currently modifying.
FAILED: The instance has failed creation.
String healthMetricsConfig
Controls how cache health metrics will be emitted to CloudWatch. Cache health metrics include:
NetworkBandwidthOutAllowanceExceeded: The network packets dropped because the throughput exceeded the aggregated bandwidth limit. This is useful for diagnosing bottlenecks in a cache configuration.
EngineCPUUtilization: The CPU utilization (percentage) allocated to the Redis process. This is useful for diagnosing bottlenecks in a cache configuration.
Metrics will be recorded by API ID. You can set the value to ENABLED
or DISABLED
.
String id
The API key ID.
String description
A description of the purpose of the API key.
Long expires
The time after which the API key expires. The date is represented as seconds since the epoch, rounded down to the nearest hour.
Long deletes
The time after which the API key is deleted. The date is represented as seconds since the epoch, rounded down to the nearest hour.
ApiAssociation apiAssociation
The ApiAssociation
object.
String sourceApiIdentifier
The identifier of the AppSync Source API. This is generated by the AppSync service. In most cases, source APIs (especially in your account) only require the API ID value or ARN of the source API. However, source APIs from other accounts (cross-account use cases) strictly require the full resource ARN of the source API.
String mergedApiIdentifier
The identifier of the AppSync Merged API. This is generated by the AppSync service. In most cases, Merged APIs (especially in your account) only require the API ID value or ARN of the merged API. However, Merged APIs in other accounts (cross-account use cases) strictly require the full resource ARN of the merged API.
String description
The description field.
SourceApiAssociationConfig sourceApiAssociationConfig
The SourceApiAssociationConfig
object data.
SourceApiAssociation sourceApiAssociation
The SourceApiAssociation
object data.
String mergedApiIdentifier
The identifier of the AppSync Merged API. This is generated by the AppSync service. In most cases, Merged APIs (especially in your account) only require the API ID value or ARN of the merged API. However, Merged APIs in other accounts (cross-account use cases) strictly require the full resource ARN of the merged API.
String sourceApiIdentifier
The identifier of the AppSync Source API. This is generated by the AppSync service. In most cases, source APIs (especially in your account) only require the API ID value or ARN of the source API. However, source APIs from other accounts (cross-account use cases) strictly require the full resource ARN of the source API.
String description
The description field.
SourceApiAssociationConfig sourceApiAssociationConfig
The SourceApiAssociationConfig
object data.
SourceApiAssociation sourceApiAssociation
The SourceApiAssociation
object data.
String authorizationType
The authorization type that the HTTP endpoint requires.
AWS_IAM: The authorization type is Signature Version 4 (SigV4).
AwsIamConfig awsIamConfig
The Identity and Access Management (IAM) settings.
String reason
BadRequestDetail detail
String errorType
The type of code error.
Examples include, but aren't limited to: LINT_ERROR
, PARSER_ERROR
.
String value
A user presentable error.
Examples include, but aren't limited to: Parsing error: Unterminated string literal
.
CodeErrorLocation location
The line, column, and span location of the error in the code.
String userPoolId
The user pool ID.
String awsRegion
The Amazon Web Services Region in which the user pool was created.
String appIdClientRegex
A regular expression for validating the incoming Amazon Cognito user pool app client ID. If this value isn't set, no filtering is applied.
String apiId
The GraphQL API ID.
Long ttl
TTL in seconds for cache entries.
Valid values are 1–3,600 seconds.
Boolean transitEncryptionEnabled
Transit encryption flag when connecting to cache. You cannot update this setting after creation.
Boolean atRestEncryptionEnabled
At-rest encryption flag for cache. You cannot update this setting after creation.
String apiCachingBehavior
Caching behavior.
FULL_REQUEST_CACHING: All requests are fully cached.
PER_RESOLVER_CACHING: Individual resolvers that you specify are cached.
String type
The cache instance type. Valid values are
SMALL
MEDIUM
LARGE
XLARGE
LARGE_2X
LARGE_4X
LARGE_8X
(not available in all regions)
LARGE_12X
Historically, instance types were identified by an EC2-style value. As of July 2020, this is deprecated, and the generic identifiers above should be used.
The following legacy instance types are available, but their use is discouraged:
T2_SMALL: A t2.small instance type.
T2_MEDIUM: A t2.medium instance type.
R4_LARGE: A r4.large instance type.
R4_XLARGE: A r4.xlarge instance type.
R4_2XLARGE: A r4.2xlarge instance type.
R4_4XLARGE: A r4.4xlarge instance type.
R4_8XLARGE: A r4.8xlarge instance type.
String healthMetricsConfig
Controls how cache health metrics will be emitted to CloudWatch. Cache health metrics include:
NetworkBandwidthOutAllowanceExceeded: The network packets dropped because the throughput exceeded the aggregated bandwidth limit. This is useful for diagnosing bottlenecks in a cache configuration.
EngineCPUUtilization: The CPU utilization (percentage) allocated to the Redis process. This is useful for diagnosing bottlenecks in a cache configuration.
Metrics will be recorded by API ID. You can set the value to ENABLED
or DISABLED
.
ApiCache apiCache
The ApiCache
object.
String apiId
The ID for your GraphQL API.
String description
A description of the purpose of the API key.
Long expires
From the creation time, the time after which the API key expires. The date is represented as seconds since the epoch, rounded down to the nearest hour. The default value for this parameter is 7 days from creation time. For more information, see .
ApiKey apiKey
The API key.
String apiId
The API ID for the GraphQL API for the DataSource
.
String name
A user-supplied name for the DataSource
.
String description
A description of the DataSource
.
String type
The type of the DataSource
.
String serviceRoleArn
The Identity and Access Management (IAM) service role Amazon Resource Name (ARN) for the data source. The system assumes this role when accessing the data source.
DynamodbDataSourceConfig dynamodbConfig
Amazon DynamoDB settings.
LambdaDataSourceConfig lambdaConfig
Lambda settings.
ElasticsearchDataSourceConfig elasticsearchConfig
Amazon OpenSearch Service settings.
As of September 2021, Amazon Elasticsearch service is Amazon OpenSearch Service. This configuration is deprecated. For new data sources, use CreateDataSourceRequest$openSearchServiceConfig to create an OpenSearch data source.
OpenSearchServiceDataSourceConfig openSearchServiceConfig
Amazon OpenSearch Service settings.
HttpDataSourceConfig httpConfig
HTTP endpoint settings.
RelationalDatabaseDataSourceConfig relationalDatabaseConfig
Relational database settings.
EventBridgeDataSourceConfig eventBridgeConfig
Amazon EventBridge settings.
String metricsConfig
Enables or disables enhanced data source metrics for specified data sources. Note that metricsConfig
won't be used unless the dataSourceLevelMetricsBehavior
value is set to
PER_DATA_SOURCE_METRICS
. If the dataSourceLevelMetricsBehavior
is set to
FULL_REQUEST_DATA_SOURCE_METRICS
instead, metricsConfig
will be ignored. However, you
can still set its value.
metricsConfig
can be ENABLED
or DISABLED
.
DataSource dataSource
The DataSource
object.
String domainName
The domain name.
String certificateArn
The Amazon Resource Name (ARN) of the certificate. This can be an Certificate Manager (ACM) certificate or an Identity and Access Management (IAM) server certificate.
String description
A description of the DomainName
.
DomainNameConfig domainNameConfig
The configuration for the DomainName
.
String apiId
The GraphQL API ID.
String name
The Function
name. The function name does not have to be unique.
String description
The Function
description.
String dataSourceName
The Function
DataSource
name.
String requestMappingTemplate
The Function
request mapping template. Functions support only the 2018-05-29 version of the request
mapping template.
String responseMappingTemplate
The Function
response mapping template.
String functionVersion
The version
of the request mapping template. Currently, the supported value is 2018-05-29. Note that
when using VTL and mapping templates, the functionVersion
is required.
SyncConfig syncConfig
Integer maxBatchSize
The maximum batching size for a resolver.
AppSyncRuntime runtime
String code
The function
code that contains the request and response functions. When code is used, the
runtime
is required. The runtime
value must be APPSYNC_JS
.
FunctionConfiguration functionConfiguration
The Function
object.
String name
A user-supplied name for the GraphqlApi
.
LogConfig logConfig
The Amazon CloudWatch Logs configuration.
String authenticationType
The authentication type: API key, Identity and Access Management (IAM), OpenID Connect (OIDC), Amazon Cognito user pools, or Lambda.
UserPoolConfig userPoolConfig
The Amazon Cognito user pool configuration.
OpenIDConnectConfig openIDConnectConfig
The OIDC configuration.
Map<K,V> tags
A TagMap
object.
List<E> additionalAuthenticationProviders
A list of additional authentication providers for the GraphqlApi
API.
Boolean xrayEnabled
A flag indicating whether to use X-Ray tracing for the GraphqlApi
.
LambdaAuthorizerConfig lambdaAuthorizerConfig
Configuration for Lambda function authorization.
String visibility
Sets the value of the GraphQL API to public (GLOBAL
) or private (PRIVATE
). If no value
is provided, the visibility will be set to GLOBAL
by default. This value cannot be changed once the
API has been created.
String apiType
The value that indicates whether the GraphQL API is a standard API (GRAPHQL
) or merged API (
MERGED
).
String mergedApiExecutionRoleArn
The Identity and Access Management service role ARN for a merged API. The AppSync service assumes this role on
behalf of the Merged API to validate access to source APIs at runtime and to prompt the AUTO_MERGE
to update the merged API endpoint with the source API changes automatically.
String ownerContact
The owner contact information for an API resource.
This field accepts any string input with a length of 0 - 256 characters.
String introspectionConfig
Sets the value of the GraphQL API to enable (ENABLED
) or disable (DISABLED
)
introspection. If no value is provided, the introspection configuration will be set to ENABLED
by
default. This field will produce an error if the operation attempts to use the introspection feature while this
field is disabled.
For more information about introspection, see GraphQL introspection.
Integer queryDepthLimit
The maximum depth a query can have in a single request. Depth refers to the amount of nested levels allowed in
the body of query. The default value is 0
(or unspecified), which indicates there's no depth limit.
If you set a limit, it can be between 1
and 75
nested levels. This field will produce a
limit error if the operation falls out of bounds.
Note that fields can still be set to nullable or non-nullable. If a non-nullable field produces an error, the error will be thrown upwards to the first nullable field available.
Integer resolverCountLimit
The maximum number of resolvers that can be invoked in a single request. The default value is 0
(or
unspecified), which will set the limit to 10000
. When specified, the limit value can be between
1
and 10000
. This field will produce a limit error if the operation falls out of
bounds.
EnhancedMetricsConfig enhancedMetricsConfig
The enhancedMetricsConfig
object.
GraphqlApi graphqlApi
The GraphqlApi
.
String apiId
The ID for the GraphQL API for which the resolver is being created.
String typeName
The name of the Type
.
String fieldName
The name of the field to attach the resolver to.
String dataSourceName
The name of the data source for which the resolver is being created.
String requestMappingTemplate
The mapping template to use for requests.
A resolver uses a request mapping template to convert a GraphQL expression into a format that a data source can understand. Mapping templates are written in Apache Velocity Template Language (VTL).
VTL request mapping templates are optional when using an Lambda data source. For all other data sources, VTL request and response mapping templates are required.
String responseMappingTemplate
The mapping template to use for responses from the data source.
String kind
The resolver type.
UNIT: A UNIT resolver type. A UNIT resolver is the default resolver type. You can use a UNIT resolver to run a GraphQL query against a single data source.
PIPELINE: A PIPELINE resolver type. You can use a PIPELINE resolver to invoke a series of
Function
objects in a serial manner. You can use a pipeline resolver to run a GraphQL query against
multiple data sources.
PipelineConfig pipelineConfig
The PipelineConfig
.
SyncConfig syncConfig
The SyncConfig
for a resolver attached to a versioned data source.
CachingConfig cachingConfig
The caching configuration for the resolver.
Integer maxBatchSize
The maximum batching size for a resolver.
AppSyncRuntime runtime
String code
The resolver
code that contains the request and response functions. When code is used, the
runtime
is required. The runtime
value must be APPSYNC_JS
.
String metricsConfig
Enables or disables enhanced resolver metrics for specified resolvers. Note that metricsConfig
won't
be used unless the resolverLevelMetricsBehavior
value is set to PER_RESOLVER_METRICS
.
If the resolverLevelMetricsBehavior
is set to FULL_REQUEST_RESOLVER_METRICS
instead,
metricsConfig
will be ignored. However, you can still set its value.
metricsConfig
can be ENABLED
or DISABLED
.
Resolver resolver
The Resolver
object.
String apiId
The API ID.
String definition
The type definition, in GraphQL Schema Definition Language (SDL) format.
For more information, see the GraphQL SDL documentation.
String format
The type format: SDL or JSON.
Type type
The Type
object.
String dataSourceArn
The data source Amazon Resource Name (ARN).
String name
The name of the data source.
String description
The description of the data source.
String type
The type of the data source.
AWS_LAMBDA: The data source is an Lambda function.
AMAZON_DYNAMODB: The data source is an Amazon DynamoDB table.
AMAZON_ELASTICSEARCH: The data source is an Amazon OpenSearch Service domain.
AMAZON_OPENSEARCH_SERVICE: The data source is an Amazon OpenSearch Service domain.
AMAZON_EVENTBRIDGE: The data source is an Amazon EventBridge configuration.
NONE: There is no data source. Use this type when you want to invoke a GraphQL operation without connecting to a data source, such as when you're performing data transformation with resolvers or invoking a subscription from a mutation.
HTTP: The data source is an HTTP endpoint.
RELATIONAL_DATABASE: The data source is a relational database.
String serviceRoleArn
The Identity and Access Management (IAM) service role Amazon Resource Name (ARN) for the data source. The system assumes this role when accessing the data source.
DynamodbDataSourceConfig dynamodbConfig
DynamoDB settings.
LambdaDataSourceConfig lambdaConfig
Lambda settings.
ElasticsearchDataSourceConfig elasticsearchConfig
Amazon OpenSearch Service settings.
OpenSearchServiceDataSourceConfig openSearchServiceConfig
Amazon OpenSearch Service settings.
HttpDataSourceConfig httpConfig
HTTP endpoint settings.
RelationalDatabaseDataSourceConfig relationalDatabaseConfig
Relational database settings.
EventBridgeDataSourceConfig eventBridgeConfig
Amazon EventBridge settings.
String metricsConfig
Enables or disables enhanced data source metrics for specified data sources. Note that metricsConfig
won't be used unless the dataSourceLevelMetricsBehavior
value is set to
PER_DATA_SOURCE_METRICS
. If the dataSourceLevelMetricsBehavior
is set to
FULL_REQUEST_DATA_SOURCE_METRICS
instead, metricsConfig
will be ignored. However, you
can still set its value.
metricsConfig
can be ENABLED
or DISABLED
.
String name
The name of the model. For example, this could be the name of a single table in a database.
List<E> fields
The DataSourceIntrospectionModelField
object data.
DataSourceIntrospectionModelIndex primaryKey
The primary key stored as a DataSourceIntrospectionModelIndex
object.
List<E> indexes
The array of DataSourceIntrospectionModelIndex
objects.
String sdl
Contains the output of the SDL that was generated from the introspected types. This is controlled by the
includeModelsSDL
parameter of the GetDataSourceIntrospection
operation.
String name
The name of the field that was retrieved from the introspected data.
DataSourceIntrospectionModelFieldType type
The DataSourceIntrospectionModelFieldType
object data.
Long length
The length value of the introspected field.
String kind
Specifies the classification of data. For example, this could be set to values like Scalar
or
NonNull
to indicate a fundamental property of the field.
Valid values include:
Scalar
: Indicates the value is a primitive type (scalar).
NonNull
: Indicates the field cannot be null
.
List
: Indicates the field contains a list.
String name
The name of the data type that represents the field. For example, String
is a valid
name
value.
DataSourceIntrospectionModelFieldType type
The DataSourceIntrospectionModelFieldType
object data. The type
is only present if
DataSourceIntrospectionModelFieldType.kind
is set to NonNull
or List
.
The type
typically contains its own kind
and name
fields to represent the
actual type data. For instance, type
could contain a kind
value of Scalar
with a name
value of String
. The values Scalar
and String
will be collectively stored in the values
field.
List<E> values
The values of the type
field. This field represents the AppSync data type equivalent of the
introspected field.
String apiId
The API ID.
String domainName
The domain name.
String apiId
The API ID.
String domainName
The domain name.
String sourceApiIdentifier
The identifier of the AppSync Source API. This is generated by the AppSync service. In most cases, source APIs (especially in your account) only require the API ID value or ARN of the source API. However, source APIs from other accounts (cross-account use cases) strictly require the full resource ARN of the source API.
String associationId
The ID generated by the AppSync service for the source API association.
String sourceApiAssociationStatus
The state of the source API association.
String mergedApiIdentifier
The identifier of the AppSync Merged API. This is generated by the AppSync service. In most cases, Merged APIs (especially in your account) only require the API ID value or ARN of the merged API. However, Merged APIs in other accounts (cross-account use cases) strictly require the full resource ARN of the merged API.
String associationId
The ID generated by the AppSync service for the source API association.
String sourceApiAssociationStatus
The state of the source API association.
String domainName
The domain name.
String description
A description of the DomainName
configuration.
String certificateArn
The Amazon Resource Name (ARN) of the certificate. This can be an Certificate Manager (ACM) certificate or an Identity and Access Management (IAM) server certificate.
String appsyncDomainName
The domain name that AppSync provides.
String hostedZoneId
The ID of your Amazon Route 53 hosted zone.
String tableName
The table name.
String awsRegion
The Amazon Web Services Region.
Boolean useCallerCredentials
Set to TRUE to use Amazon Cognito credentials with this data source.
DeltaSyncConfig deltaSyncConfig
The DeltaSyncConfig
for a versioned data source.
Boolean versioned
Set to TRUE to use Conflict Detection and Resolution with this data source.
String resolverLevelMetricsBehavior
Controls how resolver metrics will be emitted to CloudWatch. Resolver metrics include:
GraphQL errors: The number of GraphQL errors that occurred.
Requests: The number of invocations that occurred during a request.
Latency: The time to complete a resolver invocation.
Cache hits: The number of cache hits during a request.
Cache misses: The number of cache misses during a request.
These metrics can be emitted to CloudWatch per resolver or for all resolvers in the request. Metrics will be
recorded by API ID and resolver name. resolverLevelMetricsBehavior
accepts one of these values at a
time:
FULL_REQUEST_RESOLVER_METRICS
: Records and emits metric data for all resolvers in the request.
PER_RESOLVER_METRICS
: Records and emits metric data for resolvers that have the
metricsConfig
value set to ENABLED
.
String dataSourceLevelMetricsBehavior
Controls how data source metrics will be emitted to CloudWatch. Data source metrics include:
Requests: The number of invocations that occured during a request.
Latency: The time to complete a data source invocation.
Errors: The number of errors that occurred during a data source invocation.
These metrics can be emitted to CloudWatch per data source or for all data sources in the request. Metrics will
be recorded by API ID and data source name. dataSourceLevelMetricsBehavior
accepts one of these
values at a time:
FULL_REQUEST_DATA_SOURCE_METRICS
: Records and emits metric data for all data sources in the request.
PER_DATA_SOURCE_METRICS
: Records and emits metric data for data sources that have the
metricsConfig
value set to ENABLED
.
String operationLevelMetricsConfig
Controls how operation metrics will be emitted to CloudWatch. Operation metrics include:
Requests: The number of times a specified GraphQL operation was called.
GraphQL errors: The number of GraphQL errors that occurred during a specified GraphQL operation.
Metrics will be recorded by API ID and operation name. You can set the value to ENABLED
or
DISABLED
.
String message
The error payload.
AppSyncRuntime runtime
The runtime to be used when evaluating the code. Currently, only the APPSYNC_JS
runtime is
supported.
String code
The code definition to be evaluated. Note that code
and runtime
are both required for
this action. The runtime
value must be APPSYNC_JS
.
String context
The map that holds all of the contextual information for your resolver invocation. A context
is
required for this action.
String function
The function within the code to be evaluated. If provided, the valid values are request
and
response
.
String evaluationResult
The result of the evaluation operation.
EvaluateCodeErrorDetail error
Contains the payload of the response error.
List<E> logs
A list of logs that were generated by calls to util.log.info
and util.log.error
in the
evaluated code.
String evaluationResult
The mapping template; this can be a request or response template.
ErrorDetail error
The ErrorDetail
object.
List<E> logs
A list of logs that were generated by calls to util.log.info
and util.log.error
in the
evaluated code.
String eventBusArn
The ARN of the event bus. For more information about event buses, see Amazon EventBridge event buses.
String apiId
The API ID.
String functionId
A unique ID representing the Function
object.
String functionArn
The Amazon Resource Name (ARN) of the Function
object.
String name
The name of the Function
object.
String description
The Function
description.
String dataSourceName
The name of the DataSource
.
String requestMappingTemplate
The Function
request mapping template. Functions support only the 2018-05-29 version of the request
mapping template.
String responseMappingTemplate
The Function
response mapping template.
String functionVersion
The version of the request mapping template. Currently, only the 2018-05-29 version of the template is supported.
SyncConfig syncConfig
Integer maxBatchSize
The maximum batching size for a resolver.
AppSyncRuntime runtime
String code
The function
code that contains the request and response functions. When code is used, the
runtime
is required. The runtime
value must be APPSYNC_JS
.
String domainName
The domain name.
ApiAssociation apiAssociation
The ApiAssociation
object.
String apiId
The API ID.
ApiCache apiCache
The ApiCache
object.
String introspectionId
The introspection ID. Each introspection contains a unique ID that can be used to reference the instrospection record.
Boolean includeModelsSDL
A boolean flag that determines whether SDL should be generated for introspected types or not. If set to
true
, each model will contain an sdl
property that contains the SDL for that type. The
SDL only contains the type data and no additional metadata or directives.
String nextToken
Determines the number of types to be returned in a single response before paginating. This value is typically
taken from nextToken
value from the previous response.
Integer maxResults
The maximum number of introspected types that will be returned in a single response.
String introspectionId
The introspection ID. Each introspection contains a unique ID that can be used to reference the instrospection record.
String introspectionStatus
The status of the introspection during retrieval. By default, when a new instrospection is being retrieved, the
status will be set to PROCESSING
. Once the operation has been completed, the status will change to
SUCCESS
or FAILED
depending on how the data was parsed. A FAILED
operation
will return an error and its details as an introspectionStatusDetail
.
String introspectionStatusDetail
The error detail field. When a FAILED
introspectionStatus
is returned, the
introspectionStatusDetail
will also return the exact error that was generated during the operation.
DataSourceIntrospectionResult introspectionResult
The DataSourceIntrospectionResult
object data.
DataSource dataSource
The DataSource
object.
String domainName
The domain name.
DomainNameConfig domainNameConfig
The configuration for the DomainName
.
FunctionConfiguration functionConfiguration
The Function
object.
String apiId
The ID of the API from which the environmental variable list will be retrieved.
String apiId
The API ID for the GraphQL API.
GraphqlApi graphqlApi
The GraphqlApi
object.
ByteBuffer schema
The schema, in GraphQL Schema Definition Language (SDL) format.
For more information, see the GraphQL SDL documentation.
Resolver resolver
The Resolver
object.
String apiId
The API ID.
String mergedApiIdentifier
The identifier of the AppSync Merged API. This is generated by the AppSync service. In most cases, Merged APIs (especially in your account) only require the API ID value or ARN of the merged API. However, Merged APIs in other accounts (cross-account use cases) strictly require the full resource ARN of the merged API.
String associationId
The ID generated by the AppSync service for the source API association.
SourceApiAssociation sourceApiAssociation
The SourceApiAssociation
object data.
Type type
The Type
object.
String name
The API name.
String apiId
The API ID.
String authenticationType
The authentication type.
LogConfig logConfig
The Amazon CloudWatch Logs configuration.
UserPoolConfig userPoolConfig
The Amazon Cognito user pool configuration.
OpenIDConnectConfig openIDConnectConfig
The OpenID Connect configuration.
String arn
The Amazon Resource Name (ARN).
Map<K,V> uris
The URIs.
Map<K,V> tags
The tags.
List<E> additionalAuthenticationProviders
A list of additional authentication providers for the GraphqlApi
API.
Boolean xrayEnabled
A flag indicating whether to use X-Ray tracing for this GraphqlApi
.
String wafWebAclArn
The ARN of the WAF access control list (ACL) associated with this GraphqlApi
, if one exists.
LambdaAuthorizerConfig lambdaAuthorizerConfig
Configuration for Lambda function authorization.
Map<K,V> dns
The DNS records for the API.
String visibility
Sets the value of the GraphQL API to public (GLOBAL
) or private (PRIVATE
). If no value
is provided, the visibility will be set to GLOBAL
by default. This value cannot be changed once the
API has been created.
String apiType
The value that indicates whether the GraphQL API is a standard API (GRAPHQL
) or merged API (
MERGED
).
String mergedApiExecutionRoleArn
The Identity and Access Management service role ARN for a merged API. The AppSync service assumes this role on
behalf of the Merged API to validate access to source APIs at runtime and to prompt the AUTO_MERGE
to update the merged API endpoint with the source API changes automatically.
String owner
The account owner of the GraphQL API.
String ownerContact
The owner contact information for an API resource.
This field accepts any string input with a length of 0 - 256 characters.
String introspectionConfig
Sets the value of the GraphQL API to enable (ENABLED
) or disable (DISABLED
)
introspection. If no value is provided, the introspection configuration will be set to ENABLED
by
default. This field will produce an error if the operation attempts to use the introspection feature while this
field is disabled.
For more information about introspection, see GraphQL introspection.
Integer queryDepthLimit
The maximum depth a query can have in a single request. Depth refers to the amount of nested levels allowed in
the body of query. The default value is 0
(or unspecified), which indicates there's no depth limit.
If you set a limit, it can be between 1
and 75
nested levels. This field will produce a
limit error if the operation falls out of bounds.
Note that fields can still be set to nullable or non-nullable. If a non-nullable field produces an error, the error will be thrown upwards to the first nullable field available.
Integer resolverCountLimit
The maximum number of resolvers that can be invoked in a single request. The default value is 0
(or
unspecified), which will set the limit to 10000
. When specified, the limit value can be between
1
and 10000
. This field will produce a limit error if the operation falls out of
bounds.
EnhancedMetricsConfig enhancedMetricsConfig
The enhancedMetricsConfig
object.
String endpoint
The HTTP URL endpoint. You can specify either the domain name or IP, and port combination, and the URL scheme must be HTTP or HTTPS. If you don't specify the port, AppSync uses the default port 80 for the HTTP endpoint and port 443 for HTTPS endpoints.
AuthorizationConfig authorizationConfig
The authorization configuration in case the HTTP endpoint requires authorization.
Integer authorizerResultTtlInSeconds
The number of seconds a response should be cached for. The default is 0 seconds, which disables caching. If you
don't specify a value for authorizerResultTtlInSeconds
, the default value is used. The maximum value
is one hour (3600 seconds). The Lambda function can override this by returning a ttlOverride
key in
its response.
String authorizerUri
The Amazon Resource Name (ARN) of the Lambda function to be called for authorization. This can be a standard
Lambda ARN, a version ARN (.../v3
), or an alias ARN.
Note: This Lambda function must have the following resource-based policy assigned to it. When configuring Lambda authorizers in the console, this is done for you. To use the Command Line Interface (CLI), run the following:
aws lambda add-permission --function-name "arn:aws:lambda:us-east-2:111122223333:function:my-function" --statement-id "appsync" --principal appsync.amazonaws.com --action lambda:InvokeFunction
String identityValidationExpression
A regular expression for validation of tokens before the Lambda function is called.
String lambdaConflictHandlerArn
The Amazon Resource Name (ARN) for the Lambda function to use as the Conflict Handler.
String lambdaFunctionArn
The Amazon Resource Name (ARN) for the Lambda function.
String nextToken
An identifier that was returned from the previous call to this operation, which you can use to return the next set of items in the list.
Integer maxResults
The maximum number of results that you want the request to return.
String apiType
The value that indicates whether the GraphQL API is a standard API (GRAPHQL
) or merged API (
MERGED
).
String owner
The account owner of the GraphQL API.
String apiId
The API ID.
String functionId
The function ID.
String nextToken
An identifier that was returned from the previous call to this operation, which you can use to return the next set of items in the list.
Integer maxResults
The maximum number of results that you want the request to return.
String apiId
The API ID.
String typeName
The type name.
String nextToken
An identifier that was returned from the previous call to this operation, which you can use to return the next set of items in the list.
Integer maxResults
The maximum number of results that you want the request to return.
String resourceArn
The GraphqlApi
Amazon Resource Name (ARN).
String mergedApiIdentifier
The identifier of the AppSync Merged API. This is generated by the AppSync service. In most cases, Merged APIs (especially in your account) only require the API ID value or ARN of the merged API. However, Merged APIs in other accounts (cross-account use cases) strictly require the full resource ARN of the merged API.
String associationId
The ID generated by the AppSync service for the source API association.
String format
The format type.
String nextToken
An identifier that was returned from the previous call to this operation, which you can use to return the next set of items in the list.
Integer maxResults
The maximum number of results that you want the request to return.
String apiId
The API ID.
String format
The type format: SDL or JSON.
String nextToken
An identifier that was returned from the previous call to this operation, which you can use to return the next set of items in the list.
Integer maxResults
The maximum number of results that you want the request to return.
String fieldLogLevel
The field logging level. Values can be NONE, ERROR, or ALL.
NONE: No field-level logs are captured.
ERROR: Logs the following information only for the fields that are in error:
The error section in the server response.
Field-level errors.
The generated request/response functions that got resolved for error fields.
ALL: The following information is logged for all fields in the query:
Field-level tracing information.
The generated request/response functions that got resolved for each field.
String cloudWatchLogsRoleArn
The service role that AppSync assumes to publish to CloudWatch logs in your account.
Boolean excludeVerboseContent
Set to TRUE to exclude sections that contain information such as headers, context, and evaluated mapping templates, regardless of logging level.
String issuer
The issuer for the OIDC configuration. The issuer returned by discovery must exactly match the value of
iss
in the ID token.
String clientId
The client identifier of the relying party at the OpenID identity provider. This identifier is typically obtained when the relying party is registered with the OpenID identity provider. You can specify a regular expression so that AppSync can validate against multiple client identifiers at a time.
Long iatTTL
The number of milliseconds that a token is valid after it's issued to a user.
Long authTTL
The number of milliseconds that a token is valid after being authenticated.
String apiId
The ID of the API to which the environmental variable list will be written.
Map<K,V> environmentVariables
The list of environmental variables to add to the API.
When creating an environmental variable key-value pair, it must follow the additional constraints below:
Keys must begin with a letter.
Keys must be at least two characters long.
Keys can only contain letters, numbers, and the underscore character (_).
Values can be up to 512 characters long.
You can configure up to 50 key-value pairs in a GraphQL API.
You can create a list of environmental variables by adding it to the environmentVariables
payload as
a list in the format {"key1":"value1","key2":"value2", …}
. Note that each call of the
PutGraphqlApiEnvironmentVariables
action will result in the overwriting of the existing
environmental variable list of that API. This means the existing environmental variables will be lost. To avoid
this, you must include all existing and new environmental variables in the list each time you call this action.
String resourceArn
The resource ARN of the RDS cluster.
String secretArn
The secret's ARN that was obtained from Secrets Manager. A secret consists of secret information, the secret value, plus metadata about the secret. A secret value can be a string or binary. It typically includes the ARN, secret name and description, policies, tags, encryption key from the Key Management Service, and key rotation data.
String databaseName
The name of the database in the cluster.
String awsRegion
Amazon Web Services Region for Amazon RDS HTTP endpoint.
String dbClusterIdentifier
Amazon RDS cluster Amazon Resource Name (ARN).
String databaseName
Logical database name.
String schema
Logical schema name.
String awsSecretStoreArn
Amazon Web Services secret store Amazon Resource Name (ARN) for database credentials.
String relationalDatabaseSourceType
Source type for the relational database.
RDS_HTTP_ENDPOINT: The relational database source type is an Amazon Relational Database Service (Amazon RDS) HTTP endpoint.
RdsHttpEndpointConfig rdsHttpEndpointConfig
Amazon RDS HTTP endpoint settings.
String typeName
The resolver type name.
String fieldName
The resolver field name.
String dataSourceName
The resolver data source name.
String resolverArn
The resolver Amazon Resource Name (ARN).
String requestMappingTemplate
The request mapping template.
String responseMappingTemplate
The response mapping template.
String kind
The resolver type.
UNIT: A UNIT resolver type. A UNIT resolver is the default resolver type. You can use a UNIT resolver to run a GraphQL query against a single data source.
PIPELINE: A PIPELINE resolver type. You can use a PIPELINE resolver to invoke a series of
Function
objects in a serial manner. You can use a pipeline resolver to run a GraphQL query against
multiple data sources.
PipelineConfig pipelineConfig
The PipelineConfig
.
SyncConfig syncConfig
The SyncConfig
for a resolver attached to a versioned data source.
CachingConfig cachingConfig
The caching configuration for the resolver.
Integer maxBatchSize
The maximum batching size for a resolver.
AppSyncRuntime runtime
String code
The resolver
code that contains the request and response functions. When code is used, the
runtime
is required. The runtime
value must be APPSYNC_JS
.
String metricsConfig
Enables or disables enhanced resolver metrics for specified resolvers. Note that metricsConfig
won't
be used unless the resolverLevelMetricsBehavior
value is set to PER_RESOLVER_METRICS
.
If the resolverLevelMetricsBehavior
is set to FULL_REQUEST_RESOLVER_METRICS
instead,
metricsConfig
will be ignored. However, you can still set its value.
metricsConfig
can be ENABLED
or DISABLED
.
String associationId
The ID generated by the AppSync service for the source API association.
String associationArn
The Amazon Resource Name (ARN) of the source API association.
String sourceApiId
The ID of the AppSync source API.
String sourceApiArn
The Amazon Resource Name (ARN) of the AppSync source API.
String mergedApiArn
The Amazon Resource Name (ARN) of the AppSync Merged API.
String mergedApiId
The ID of the AppSync Merged API.
String description
The description field.
SourceApiAssociationConfig sourceApiAssociationConfig
The SourceApiAssociationConfig
object data.
String sourceApiAssociationStatus
The state of the source API association.
String sourceApiAssociationStatusDetail
The detailed message related to the current state of the source API association.
Date lastSuccessfulMergeDate
The datetime value of the last successful merge of the source API association. The result will be in UTC format and your local time zone.
String mergeType
The property that indicates which merging option is enabled in the source API association.
Valid merge types are MANUAL_MERGE
(default) and AUTO_MERGE
. Manual merges are the
default behavior and require the user to trigger any changes from the source APIs to the merged API manually.
Auto merges subscribe the merged API to the changes performed on the source APIs so that any change in the source
APIs are also made to the merged API. Auto merges use MergedApiExecutionRoleArn
to perform merge
operations.
String associationId
The ID generated by the AppSync service for the source API association.
String associationArn
The Amazon Resource Name (ARN) of the source API association.
String sourceApiId
The ID of the AppSync source API.
String sourceApiArn
The Amazon Resource Name (ARN) of the AppSync Source API.
String mergedApiId
The ID of the AppSync Merged API.
String mergedApiArn
The Amazon Resource Name (ARN) of the AppSync Merged API.
String description
The description field.
RdsDataApiConfig rdsDataApiConfig
The rdsDataApiConfig
object data.
String introspectionId
The introspection ID. Each introspection contains a unique ID that can be used to reference the instrospection record.
String introspectionStatus
The status of the introspection during creation. By default, when a new instrospection has been created, the
status will be set to PROCESSING
. Once the operation has been completed, the status will change to
SUCCESS
or FAILED
depending on how the data was parsed. A FAILED
operation
will return an error and its details as an introspectionStatusDetail
.
String introspectionStatusDetail
The error detail field. When a FAILED
introspectionStatus
is returned, the
introspectionStatusDetail
will also return the exact error that was generated during the operation.
String apiId
The API ID.
ByteBuffer definition
The schema definition, in GraphQL schema language format.
String status
The current state of the schema (PROCESSING, FAILED, SUCCESS, or NOT_APPLICABLE). When the schema is in the ACTIVE state, you can add data.
String associationId
The ID generated by the AppSync service for the source API association.
String mergedApiIdentifier
The identifier of the AppSync Merged API. This is generated by the AppSync service. In most cases, Merged APIs (especially in your account) only require the API ID value or ARN of the merged API. However, Merged APIs in other accounts (cross-account use cases) strictly require the full resource ARN of the merged API.
String sourceApiAssociationStatus
The state of the source API association.
String conflictHandler
The Conflict Resolution strategy to perform in the event of a conflict.
OPTIMISTIC_CONCURRENCY: Resolve conflicts by rejecting mutations when versions don't match the latest version at the server.
AUTOMERGE: Resolve conflicts with the Automerge conflict resolution strategy.
LAMBDA: Resolve conflicts with an Lambda function supplied in the LambdaConflictHandlerConfig
.
String conflictDetection
The Conflict Detection strategy to use.
VERSION: Detect conflicts based on object versions for this resolver.
NONE: Do not detect conflicts when invoking this resolver.
LambdaConflictHandlerConfig lambdaConflictHandlerConfig
The LambdaConflictHandlerConfig
when configuring LAMBDA
as the Conflict Handler.
String apiId
The GraphQL API ID.
Long ttl
TTL in seconds for cache entries.
Valid values are 1–3,600 seconds.
String apiCachingBehavior
Caching behavior.
FULL_REQUEST_CACHING: All requests are fully cached.
PER_RESOLVER_CACHING: Individual resolvers that you specify are cached.
String type
The cache instance type. Valid values are
SMALL
MEDIUM
LARGE
XLARGE
LARGE_2X
LARGE_4X
LARGE_8X
(not available in all regions)
LARGE_12X
Historically, instance types were identified by an EC2-style value. As of July 2020, this is deprecated, and the generic identifiers above should be used.
The following legacy instance types are available, but their use is discouraged:
T2_SMALL: A t2.small instance type.
T2_MEDIUM: A t2.medium instance type.
R4_LARGE: A r4.large instance type.
R4_XLARGE: A r4.xlarge instance type.
R4_2XLARGE: A r4.2xlarge instance type.
R4_4XLARGE: A r4.4xlarge instance type.
R4_8XLARGE: A r4.8xlarge instance type.
String healthMetricsConfig
Controls how cache health metrics will be emitted to CloudWatch. Cache health metrics include:
NetworkBandwidthOutAllowanceExceeded: The network packets dropped because the throughput exceeded the aggregated bandwidth limit. This is useful for diagnosing bottlenecks in a cache configuration.
EngineCPUUtilization: The CPU utilization (percentage) allocated to the Redis process. This is useful for diagnosing bottlenecks in a cache configuration.
Metrics will be recorded by API ID. You can set the value to ENABLED
or DISABLED
.
ApiCache apiCache
The ApiCache
object.
String apiId
The ID for the GraphQL API.
String id
The API key ID.
String description
A description of the purpose of the API key.
Long expires
From the update time, the time after which the API key expires. The date is represented as seconds since the epoch. For more information, see .
ApiKey apiKey
The API key.
String apiId
The API ID.
String name
The new name for the data source.
String description
The new description for the data source.
String type
The new data source type.
String serviceRoleArn
The new service role Amazon Resource Name (ARN) for the data source.
DynamodbDataSourceConfig dynamodbConfig
The new Amazon DynamoDB configuration.
LambdaDataSourceConfig lambdaConfig
The new Lambda configuration.
ElasticsearchDataSourceConfig elasticsearchConfig
The new OpenSearch configuration.
As of September 2021, Amazon Elasticsearch service is Amazon OpenSearch Service. This configuration is deprecated. Instead, use UpdateDataSourceRequest$openSearchServiceConfig to update an OpenSearch data source.
OpenSearchServiceDataSourceConfig openSearchServiceConfig
The new OpenSearch configuration.
HttpDataSourceConfig httpConfig
The new HTTP endpoint configuration.
RelationalDatabaseDataSourceConfig relationalDatabaseConfig
The new relational database configuration.
EventBridgeDataSourceConfig eventBridgeConfig
The new Amazon EventBridge settings.
String metricsConfig
Enables or disables enhanced data source metrics for specified data sources. Note that metricsConfig
won't be used unless the dataSourceLevelMetricsBehavior
value is set to
PER_DATA_SOURCE_METRICS
. If the dataSourceLevelMetricsBehavior
is set to
FULL_REQUEST_DATA_SOURCE_METRICS
instead, metricsConfig
will be ignored. However, you
can still set its value.
metricsConfig
can be ENABLED
or DISABLED
.
DataSource dataSource
The updated DataSource
object.
DomainNameConfig domainNameConfig
The configuration for the DomainName
.
String apiId
The GraphQL API ID.
String name
The Function
name.
String description
The Function
description.
String functionId
The function ID.
String dataSourceName
The Function
DataSource
name.
String requestMappingTemplate
The Function
request mapping template. Functions support only the 2018-05-29 version of the request
mapping template.
String responseMappingTemplate
The Function
request mapping template.
String functionVersion
The version
of the request mapping template. Currently, the supported value is 2018-05-29. Note that
when using VTL and mapping templates, the functionVersion
is required.
SyncConfig syncConfig
Integer maxBatchSize
The maximum batching size for a resolver.
AppSyncRuntime runtime
String code
The function
code that contains the request and response functions. When code is used, the
runtime
is required. The runtime
value must be APPSYNC_JS
.
FunctionConfiguration functionConfiguration
The Function
object.
String apiId
The API ID.
String name
The new name for the GraphqlApi
object.
LogConfig logConfig
The Amazon CloudWatch Logs configuration for the GraphqlApi
object.
String authenticationType
The new authentication type for the GraphqlApi
object.
UserPoolConfig userPoolConfig
The new Amazon Cognito user pool configuration for the ~GraphqlApi
object.
OpenIDConnectConfig openIDConnectConfig
The OpenID Connect configuration for the GraphqlApi
object.
List<E> additionalAuthenticationProviders
A list of additional authentication providers for the GraphqlApi
API.
Boolean xrayEnabled
A flag indicating whether to use X-Ray tracing for the GraphqlApi
.
LambdaAuthorizerConfig lambdaAuthorizerConfig
Configuration for Lambda function authorization.
String mergedApiExecutionRoleArn
The Identity and Access Management service role ARN for a merged API. The AppSync service assumes this role on
behalf of the Merged API to validate access to source APIs at runtime and to prompt the AUTO_MERGE
to update the merged API endpoint with the source API changes automatically.
String ownerContact
The owner contact information for an API resource.
This field accepts any string input with a length of 0 - 256 characters.
String introspectionConfig
Sets the value of the GraphQL API to enable (ENABLED
) or disable (DISABLED
)
introspection. If no value is provided, the introspection configuration will be set to ENABLED
by
default. This field will produce an error if the operation attempts to use the introspection feature while this
field is disabled.
For more information about introspection, see GraphQL introspection.
Integer queryDepthLimit
The maximum depth a query can have in a single request. Depth refers to the amount of nested levels allowed in
the body of query. The default value is 0
(or unspecified), which indicates there's no depth limit.
If you set a limit, it can be between 1
and 75
nested levels. This field will produce a
limit error if the operation falls out of bounds.
Note that fields can still be set to nullable or non-nullable. If a non-nullable field produces an error, the error will be thrown upwards to the first nullable field available.
Integer resolverCountLimit
The maximum number of resolvers that can be invoked in a single request. The default value is 0
(or
unspecified), which will set the limit to 10000
. When specified, the limit value can be between
1
and 10000
. This field will produce a limit error if the operation falls out of
bounds.
EnhancedMetricsConfig enhancedMetricsConfig
The enhancedMetricsConfig
object.
GraphqlApi graphqlApi
The updated GraphqlApi
object.
String apiId
The API ID.
String typeName
The new type name.
String fieldName
The new field name.
String dataSourceName
The new data source name.
String requestMappingTemplate
The new request mapping template.
A resolver uses a request mapping template to convert a GraphQL expression into a format that a data source can understand. Mapping templates are written in Apache Velocity Template Language (VTL).
VTL request mapping templates are optional when using an Lambda data source. For all other data sources, VTL request and response mapping templates are required.
String responseMappingTemplate
The new response mapping template.
String kind
The resolver type.
UNIT: A UNIT resolver type. A UNIT resolver is the default resolver type. You can use a UNIT resolver to run a GraphQL query against a single data source.
PIPELINE: A PIPELINE resolver type. You can use a PIPELINE resolver to invoke a series of
Function
objects in a serial manner. You can use a pipeline resolver to run a GraphQL query against
multiple data sources.
PipelineConfig pipelineConfig
The PipelineConfig
.
SyncConfig syncConfig
The SyncConfig
for a resolver attached to a versioned data source.
CachingConfig cachingConfig
The caching configuration for the resolver.
Integer maxBatchSize
The maximum batching size for a resolver.
AppSyncRuntime runtime
String code
The resolver
code that contains the request and response functions. When code is used, the
runtime
is required. The runtime
value must be APPSYNC_JS
.
String metricsConfig
Enables or disables enhanced resolver metrics for specified resolvers. Note that metricsConfig
won't
be used unless the resolverLevelMetricsBehavior
value is set to PER_RESOLVER_METRICS
.
If the resolverLevelMetricsBehavior
is set to FULL_REQUEST_RESOLVER_METRICS
instead,
metricsConfig
will be ignored. However, you can still set its value.
metricsConfig
can be ENABLED
or DISABLED
.
Resolver resolver
The updated Resolver
object.
String associationId
The ID generated by the AppSync service for the source API association.
String mergedApiIdentifier
The identifier of the AppSync Merged API. This is generated by the AppSync service. In most cases, Merged APIs (especially in your account) only require the API ID value or ARN of the merged API. However, Merged APIs in other accounts (cross-account use cases) strictly require the full resource ARN of the merged API.
String description
The description field.
SourceApiAssociationConfig sourceApiAssociationConfig
The SourceApiAssociationConfig
object data.
SourceApiAssociation sourceApiAssociation
The SourceApiAssociation
object data.
Type type
The updated Type
object.
String userPoolId
The user pool ID.
String awsRegion
The Amazon Web Services Region in which the user pool was created.
String defaultAction
The action that you want your GraphQL API to take when a request that uses Amazon Cognito user pool authentication doesn't match the Amazon Cognito user pool configuration.
String appIdClientRegex
A regular expression for validating the incoming Amazon Cognito user pool app client ID. If this value isn't set, no filtering is applied.
Copyright © 2024. All rights reserved.