Interface CfnGraphQLApiProps
- All Superinterfaces:
software.amazon.jsii.JsiiSerializable
- All Known Implementing Classes:
CfnGraphQLApiProps.Jsii$Proxy
CfnGraphQLApi
.
Example:
// The code below shows an example of how to instantiate this type. // The values are placeholders you should change. import software.amazon.awscdk.services.appsync.*; CfnGraphQLApiProps cfnGraphQLApiProps = CfnGraphQLApiProps.builder() .authenticationType("authenticationType") .name("name") // the properties below are optional .additionalAuthenticationProviders(List.of(AdditionalAuthenticationProviderProperty.builder() .authenticationType("authenticationType") // the properties below are optional .lambdaAuthorizerConfig(LambdaAuthorizerConfigProperty.builder() .authorizerResultTtlInSeconds(123) .authorizerUri("authorizerUri") .identityValidationExpression("identityValidationExpression") .build()) .openIdConnectConfig(OpenIDConnectConfigProperty.builder() .authTtl(123) .clientId("clientId") .iatTtl(123) .issuer("issuer") .build()) .userPoolConfig(CognitoUserPoolConfigProperty.builder() .appIdClientRegex("appIdClientRegex") .awsRegion("awsRegion") .userPoolId("userPoolId") .build()) .build())) .apiType("apiType") .enhancedMetricsConfig(EnhancedMetricsConfigProperty.builder() .dataSourceLevelMetricsBehavior("dataSourceLevelMetricsBehavior") .operationLevelMetricsConfig("operationLevelMetricsConfig") .resolverLevelMetricsBehavior("resolverLevelMetricsBehavior") .build()) .environmentVariables(Map.of( "environmentVariablesKey", "environmentVariables")) .introspectionConfig("introspectionConfig") .lambdaAuthorizerConfig(LambdaAuthorizerConfigProperty.builder() .authorizerResultTtlInSeconds(123) .authorizerUri("authorizerUri") .identityValidationExpression("identityValidationExpression") .build()) .logConfig(LogConfigProperty.builder() .cloudWatchLogsRoleArn("cloudWatchLogsRoleArn") .excludeVerboseContent(false) .fieldLogLevel("fieldLogLevel") .build()) .mergedApiExecutionRoleArn("mergedApiExecutionRoleArn") .openIdConnectConfig(OpenIDConnectConfigProperty.builder() .authTtl(123) .clientId("clientId") .iatTtl(123) .issuer("issuer") .build()) .ownerContact("ownerContact") .queryDepthLimit(123) .resolverCountLimit(123) .tags(List.of(CfnTag.builder() .key("key") .value("value") .build())) .userPoolConfig(UserPoolConfigProperty.builder() .appIdClientRegex("appIdClientRegex") .awsRegion("awsRegion") .defaultAction("defaultAction") .userPoolId("userPoolId") .build()) .visibility("visibility") .xrayEnabled(false) .build();
- See Also:
-
Nested Class Summary
Modifier and TypeInterfaceDescriptionstatic final class
A builder forCfnGraphQLApiProps
static final class
An implementation forCfnGraphQLApiProps
-
Method Summary
Modifier and TypeMethodDescriptionstatic CfnGraphQLApiProps.Builder
builder()
default Object
A list of additional authentication providers for theGraphqlApi
API.default String
The value that indicates whether the GraphQL API is a standard API (GRAPHQL
) or merged API (MERGED
).Security configuration for your GraphQL API.default Object
Enables and controls the enhanced metrics feature.default Object
A map containing the list of resources with their properties and environment variables.default String
Sets the value of the GraphQL API to enable (ENABLED
) or disable (DISABLED
) introspection.default Object
ALambdaAuthorizerConfig
holds configuration on how to authorize AWS AppSync API access when using theAWS_LAMBDA
authorizer mode.default Object
The Amazon CloudWatch Logs configuration.default String
The AWS Identity and Access Management service role ARN for a merged API.getName()
The API name.default Object
The OpenID Connect configuration.default String
The owner contact information for an API resource.default Number
The maximum depth a query can have in a single request.default Number
The maximum number of resolvers that can be invoked in a single request.getTags()
An arbitrary set of tags (key-value pairs) for this GraphQL API.default Object
Optional authorization configuration for using Amazon Cognito user pools with your GraphQL endpoint.default String
Sets the scope of the GraphQL API to public (GLOBAL
) or private (PRIVATE
).default Object
A flag indicating whether to use AWS X-Ray tracing for thisGraphqlApi
.Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Method Details
-
getAuthenticationType
Security configuration for your GraphQL API.For allowed values (such as
API_KEY
,AWS_IAM
,AMAZON_COGNITO_USER_POOLS
,OPENID_CONNECT
, orAWS_LAMBDA
), see Security in the AWS AppSync Developer Guide .- See Also:
-
getName
The API name.- See Also:
-
getAdditionalAuthenticationProviders
A list of additional authentication providers for theGraphqlApi
API.- See Also:
-
getApiType
The value that indicates whether the GraphQL API is a standard API (GRAPHQL
) or merged API (MERGED
).WARNING : If the
ApiType
has not been defined, explicitly setting it toGRAPHQL
in a template/stack update will result in an API replacement and new DNS values.The following values are valid:
GRAPHQL | MERGED
- See Also:
-
getEnhancedMetricsConfig
Enables and controls the enhanced metrics feature.Enhanced metrics emit granular data on API usage and performance such as AppSync request and error counts, latency, and cache hits/misses. All enhanced metric data is sent to your CloudWatch account, and you can configure the types of data that will be sent.
Enhanced metrics can be configured at the resolver, data source, and operation levels. For more information, see Monitoring and logging in the AWS AppSync User Guide .
- See Also:
-
getEnvironmentVariables
A map containing the list of resources with their properties and environment variables.For more information, see Environmental variables .
Pattern :
^[A-Za-z]+\\w*$\\
Minimum : 2
Maximum : 64
- See Also:
-
getIntrospectionConfig
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 .
- See Also:
-
getLambdaAuthorizerConfig
ALambdaAuthorizerConfig
holds configuration on how to authorize AWS AppSync API access when using theAWS_LAMBDA
authorizer mode.Be aware that an AWS AppSync API may have only one Lambda authorizer configured at a time.
- See Also:
-
getLogConfig
The Amazon CloudWatch Logs configuration.- See Also:
-
getMergedApiExecutionRoleArn
The AWS 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.- See Also:
-
getOpenIdConnectConfig
The OpenID Connect configuration.- See Also:
-
getOwnerContact
The owner contact information for an API resource.This field accepts any string input with a length of 0 - 256 characters.
- See Also:
-
getQueryDepthLimit
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 between1
and75
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.- See Also:
-
getResolverCountLimit
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 to10000
. When specified, the limit value can be between1
and10000
. This field will produce a limit error if the operation falls out of bounds.- See Also:
-
getTags
An arbitrary set of tags (key-value pairs) for this GraphQL API.- See Also:
-
getUserPoolConfig
Optional authorization configuration for using Amazon Cognito user pools with your GraphQL endpoint.- See Also:
-
getVisibility
Sets the scope of the GraphQL API to public (GLOBAL
) or private (PRIVATE
).By default, the scope is set to
Global
if no value is provided.WARNING : If
Visibility
has not been defined, explicitly setting it toGLOBAL
in a template/stack update will result in an API replacement and new DNS values.- See Also:
-
getXrayEnabled
A flag indicating whether to use AWS X-Ray tracing for thisGraphqlApi
.- See Also:
-
builder
- Returns:
- a
CfnGraphQLApiProps.Builder
ofCfnGraphQLApiProps
-