Class CfnGraphQLApi

java.lang.Object
software.amazon.jsii.JsiiObject
software.constructs.Construct
All Implemented Interfaces:
IInspectable, ITaggable, software.amazon.jsii.JsiiSerializable, software.constructs.IConstruct, software.constructs.IDependable

@Generated(value="jsii-pacmak/1.98.0 (build 00b106d)", date="2024-05-02T15:58:21.543Z") @Stability(Stable) public class CfnGraphQLApi extends CfnResource implements IInspectable, ITaggable
The AWS::AppSync::GraphQLApi resource creates a new AWS AppSync GraphQL API.

This is the top-level construct for your application. For more information, see Quick Start in the AWS AppSync Developer Guide .

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.*;
 Object environmentVariables;
 CfnGraphQLApi cfnGraphQLApi = CfnGraphQLApi.Builder.create(this, "MyCfnGraphQLApi")
         .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(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:
  • Field Details

    • CFN_RESOURCE_TYPE_NAME

      @Stability(Stable) public static final String CFN_RESOURCE_TYPE_NAME
      The CloudFormation resource type name for this resource class.
  • Constructor Details

    • CfnGraphQLApi

      protected CfnGraphQLApi(software.amazon.jsii.JsiiObjectRef objRef)
    • CfnGraphQLApi

      protected CfnGraphQLApi(software.amazon.jsii.JsiiObject.InitializationMode initializationMode)
    • CfnGraphQLApi

      @Stability(Stable) public CfnGraphQLApi(@NotNull software.constructs.Construct scope, @NotNull String id, @NotNull CfnGraphQLApiProps props)
      Parameters:
      scope - Scope in which this resource is defined. This parameter is required.
      id - Construct identifier for this resource (unique in its scope). This parameter is required.
      props - Resource properties. This parameter is required.
  • Method Details

    • inspect

      @Stability(Stable) public void inspect(@NotNull TreeInspector inspector)
      Examines the CloudFormation resource and discloses attributes.

      Specified by:
      inspect in interface IInspectable
      Parameters:
      inspector - tree inspector to collect and process attributes. This parameter is required.
    • renderProperties

      @Stability(Stable) @NotNull protected Map<String,Object> renderProperties(@NotNull Map<String,Object> props)
      Overrides:
      renderProperties in class CfnResource
      Parameters:
      props - This parameter is required.
    • getAttrApiId

      @Stability(Stable) @NotNull public String getAttrApiId()
      Unique AWS AppSync GraphQL API identifier.
    • getAttrArn

      @Stability(Stable) @NotNull public String getAttrArn()
      The Amazon Resource Name (ARN) of the API key, such as arn:aws:appsync:us-east-1:123456789012:apis/graphqlapiid .
    • getAttrGraphQlDns

      @Stability(Stable) @NotNull public String getAttrGraphQlDns()
      The fully qualified domain name (FQDN) of the endpoint URL of your GraphQL API.
    • getAttrGraphQlEndpointArn

      @Stability(Stable) @NotNull public String getAttrGraphQlEndpointArn()
      The GraphQL endpoint ARN.
    • getAttrGraphQlUrl

      @Stability(Stable) @NotNull public String getAttrGraphQlUrl()
      The Endpoint URL of your GraphQL API.
    • getAttrId

      @Stability(Stable) @NotNull public String getAttrId()
      The ID value.
    • getAttrRealtimeDns

      @Stability(Stable) @NotNull public String getAttrRealtimeDns()
      The fully qualified domain name (FQDN) of the real-time endpoint URL of your GraphQL API.
    • getAttrRealtimeUrl

      @Stability(Stable) @NotNull public String getAttrRealtimeUrl()
      The GraphQL API real-time endpoint URL.

      For more information, see Discovering the real-time endpoint from the GraphQL endpoint .

    • getCfnProperties

      @Stability(Stable) @NotNull protected Map<String,Object> getCfnProperties()
      Overrides:
      getCfnProperties in class CfnResource
    • getTags

      @Stability(Stable) @NotNull public TagManager getTags()
      Tag Manager which manages the tags for this resource.
      Specified by:
      getTags in interface ITaggable
    • getAuthenticationType

      @Stability(Stable) @NotNull public String getAuthenticationType()
      Security configuration for your GraphQL API.
    • setAuthenticationType

      @Stability(Stable) public void setAuthenticationType(@NotNull String value)
      Security configuration for your GraphQL API.
    • getName

      @Stability(Stable) @NotNull public String getName()
      The API name.
    • setName

      @Stability(Stable) public void setName(@NotNull String value)
      The API name.
    • getAdditionalAuthenticationProviders

      @Stability(Stable) @Nullable public Object getAdditionalAuthenticationProviders()
      A list of additional authentication providers for the GraphqlApi API.
    • setAdditionalAuthenticationProviders

      @Stability(Stable) public void setAdditionalAuthenticationProviders(@Nullable IResolvable value)
      A list of additional authentication providers for the GraphqlApi API.
    • setAdditionalAuthenticationProviders

      @Stability(Stable) public void setAdditionalAuthenticationProviders(@Nullable List<Object> value)
      A list of additional authentication providers for the GraphqlApi API.
    • getApiType

      @Stability(Stable) @Nullable public String getApiType()
      The value that indicates whether the GraphQL API is a standard API ( GRAPHQL ) or merged API ( MERGED ).
    • setApiType

      @Stability(Stable) public void setApiType(@Nullable String value)
      The value that indicates whether the GraphQL API is a standard API ( GRAPHQL ) or merged API ( MERGED ).
    • getEnhancedMetricsConfig

      @Stability(Stable) @Nullable public Object getEnhancedMetricsConfig()
      Enables and controls the enhanced metrics feature.
    • setEnhancedMetricsConfig

      @Stability(Stable) public void setEnhancedMetricsConfig(@Nullable IResolvable value)
      Enables and controls the enhanced metrics feature.
    • setEnhancedMetricsConfig

      @Stability(Stable) public void setEnhancedMetricsConfig(@Nullable CfnGraphQLApi.EnhancedMetricsConfigProperty value)
      Enables and controls the enhanced metrics feature.
    • getEnvironmentVariables

      @Stability(Stable) @Nullable public Object getEnvironmentVariables()
      A map containing the list of resources with their properties and environment variables.
    • setEnvironmentVariables

      @Stability(Stable) public void setEnvironmentVariables(@Nullable Object value)
      A map containing the list of resources with their properties and environment variables.
    • getIntrospectionConfig

      @Stability(Stable) @Nullable public String getIntrospectionConfig()
      Sets the value of the GraphQL API to enable ( ENABLED ) or disable ( DISABLED ) introspection.
    • setIntrospectionConfig

      @Stability(Stable) public void setIntrospectionConfig(@Nullable String value)
      Sets the value of the GraphQL API to enable ( ENABLED ) or disable ( DISABLED ) introspection.
    • getLambdaAuthorizerConfig

      @Stability(Stable) @Nullable public Object getLambdaAuthorizerConfig()
      A LambdaAuthorizerConfig holds configuration on how to authorize AWS AppSync API access when using the AWS_LAMBDA authorizer mode.
    • setLambdaAuthorizerConfig

      @Stability(Stable) public void setLambdaAuthorizerConfig(@Nullable IResolvable value)
      A LambdaAuthorizerConfig holds configuration on how to authorize AWS AppSync API access when using the AWS_LAMBDA authorizer mode.
    • setLambdaAuthorizerConfig

      @Stability(Stable) public void setLambdaAuthorizerConfig(@Nullable CfnGraphQLApi.LambdaAuthorizerConfigProperty value)
      A LambdaAuthorizerConfig holds configuration on how to authorize AWS AppSync API access when using the AWS_LAMBDA authorizer mode.
    • getLogConfig

      @Stability(Stable) @Nullable public Object getLogConfig()
      The Amazon CloudWatch Logs configuration.
    • setLogConfig

      @Stability(Stable) public void setLogConfig(@Nullable IResolvable value)
      The Amazon CloudWatch Logs configuration.
    • setLogConfig

      @Stability(Stable) public void setLogConfig(@Nullable CfnGraphQLApi.LogConfigProperty value)
      The Amazon CloudWatch Logs configuration.
    • getMergedApiExecutionRoleArn

      @Stability(Stable) @Nullable public String getMergedApiExecutionRoleArn()
      The AWS Identity and Access Management service role ARN for a merged API.
    • setMergedApiExecutionRoleArn

      @Stability(Stable) public void setMergedApiExecutionRoleArn(@Nullable String value)
      The AWS Identity and Access Management service role ARN for a merged API.
    • getOpenIdConnectConfig

      @Stability(Stable) @Nullable public Object getOpenIdConnectConfig()
      The OpenID Connect configuration.
    • setOpenIdConnectConfig

      @Stability(Stable) public void setOpenIdConnectConfig(@Nullable IResolvable value)
      The OpenID Connect configuration.
    • setOpenIdConnectConfig

      @Stability(Stable) public void setOpenIdConnectConfig(@Nullable CfnGraphQLApi.OpenIDConnectConfigProperty value)
      The OpenID Connect configuration.
    • getOwnerContact

      @Stability(Stable) @Nullable public String getOwnerContact()
      The owner contact information for an API resource.
    • setOwnerContact

      @Stability(Stable) public void setOwnerContact(@Nullable String value)
      The owner contact information for an API resource.
    • getQueryDepthLimit

      @Stability(Stable) @Nullable public Number getQueryDepthLimit()
      The maximum depth a query can have in a single request.
    • setQueryDepthLimit

      @Stability(Stable) public void setQueryDepthLimit(@Nullable Number value)
      The maximum depth a query can have in a single request.
    • getResolverCountLimit

      @Stability(Stable) @Nullable public Number getResolverCountLimit()
      The maximum number of resolvers that can be invoked in a single request.
    • setResolverCountLimit

      @Stability(Stable) public void setResolverCountLimit(@Nullable Number value)
      The maximum number of resolvers that can be invoked in a single request.
    • getTagsRaw

      @Stability(Stable) @Nullable public List<CfnTag> getTagsRaw()
      An arbitrary set of tags (key-value pairs) for this GraphQL API.
    • setTagsRaw

      @Stability(Stable) public void setTagsRaw(@Nullable List<CfnTag> value)
      An arbitrary set of tags (key-value pairs) for this GraphQL API.
    • getUserPoolConfig

      @Stability(Stable) @Nullable public Object getUserPoolConfig()
      Optional authorization configuration for using Amazon Cognito user pools with your GraphQL endpoint.
    • setUserPoolConfig

      @Stability(Stable) public void setUserPoolConfig(@Nullable IResolvable value)
      Optional authorization configuration for using Amazon Cognito user pools with your GraphQL endpoint.
    • setUserPoolConfig

      @Stability(Stable) public void setUserPoolConfig(@Nullable CfnGraphQLApi.UserPoolConfigProperty value)
      Optional authorization configuration for using Amazon Cognito user pools with your GraphQL endpoint.
    • getVisibility

      @Stability(Stable) @Nullable public String getVisibility()
      Sets the scope of the GraphQL API to public ( GLOBAL ) or private ( PRIVATE ).
    • setVisibility

      @Stability(Stable) public void setVisibility(@Nullable String value)
      Sets the scope of the GraphQL API to public ( GLOBAL ) or private ( PRIVATE ).
    • getXrayEnabled

      @Stability(Stable) @Nullable public Object getXrayEnabled()
      A flag indicating whether to use AWS X-Ray tracing for this GraphqlApi .
    • setXrayEnabled

      @Stability(Stable) public void setXrayEnabled(@Nullable Boolean value)
      A flag indicating whether to use AWS X-Ray tracing for this GraphqlApi .
    • setXrayEnabled

      @Stability(Stable) public void setXrayEnabled(@Nullable IResolvable value)
      A flag indicating whether to use AWS X-Ray tracing for this GraphqlApi .