CfnGraphQLApiProps

class aws_cdk.aws_appsync.CfnGraphQLApiProps(*, authentication_type, name, additional_authentication_providers=None, api_type=None, lambda_authorizer_config=None, log_config=None, merged_api_execution_role_arn=None, open_id_connect_config=None, owner_contact=None, tags=None, user_pool_config=None, visibility=None, xray_enabled=None)

Bases: object

Properties for defining a CfnGraphQLApi.

Parameters:
  • authentication_type (str) – Security configuration for your GraphQL API. For allowed values (such as API_KEY , AWS_IAM , AMAZON_COGNITO_USER_POOLS , OPENID_CONNECT , or AWS_LAMBDA ), see Security in the AWS AppSync Developer Guide .

  • name (str) – The API name.

  • additional_authentication_providers (Union[IResolvable, Sequence[Union[IResolvable, AdditionalAuthenticationProviderProperty, Dict[str, Any]]], None]) – A list of additional authentication providers for the GraphqlApi API.

  • api_type (Optional[str]) – The value that indicates whether the GraphQL API is a standard API ( GRAPHQL ) or merged API ( MERGED ). The following values are valid: GRAPHQL | MERGED

  • lambda_authorizer_config (Union[IResolvable, LambdaAuthorizerConfigProperty, Dict[str, Any], None]) – A LambdaAuthorizerConfig holds configuration on how to authorize AWS AppSync API access when using the AWS_LAMBDA authorizer mode. Be aware that an AWS AppSync API may have only one Lambda authorizer configured at a time.

  • log_config (Union[IResolvable, LogConfigProperty, Dict[str, Any], None]) – The Amazon CloudWatch Logs configuration.

  • merged_api_execution_role_arn (Optional[str]) – 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.

  • open_id_connect_config (Union[IResolvable, OpenIDConnectConfigProperty, Dict[str, Any], None]) – The OpenID Connect configuration.

  • owner_contact (Optional[str]) – The owner contact information for an API resource. This field accepts any string input with a length of 0 - 256 characters.

  • tags (Optional[Sequence[Union[CfnTag, Dict[str, Any]]]]) – An arbitrary set of tags (key-value pairs) for this GraphQL API.

  • user_pool_config (Union[IResolvable, UserPoolConfigProperty, Dict[str, Any], None]) – Optional authorization configuration for using Amazon Cognito user pools with your GraphQL endpoint.

  • visibility (Optional[str]) – 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.

  • xray_enabled (Union[bool, IResolvable, None]) – A flag indicating whether to use AWS X-Ray tracing for this GraphqlApi .

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html

ExampleMetadata:

fixture=_generated

Example:

# The code below shows an example of how to instantiate this type.
# The values are placeholders you should change.
import aws_cdk.aws_appsync as appsync

cfn_graph_qLApi_props = appsync.CfnGraphQLApiProps(
    authentication_type="authenticationType",
    name="name",

    # the properties below are optional
    additional_authentication_providers=[appsync.CfnGraphQLApi.AdditionalAuthenticationProviderProperty(
        authentication_type="authenticationType",

        # the properties below are optional
        lambda_authorizer_config=appsync.CfnGraphQLApi.LambdaAuthorizerConfigProperty(
            authorizer_result_ttl_in_seconds=123,
            authorizer_uri="authorizerUri",
            identity_validation_expression="identityValidationExpression"
        ),
        open_id_connect_config=appsync.CfnGraphQLApi.OpenIDConnectConfigProperty(
            auth_ttl=123,
            client_id="clientId",
            iat_ttl=123,
            issuer="issuer"
        ),
        user_pool_config=appsync.CfnGraphQLApi.CognitoUserPoolConfigProperty(
            app_id_client_regex="appIdClientRegex",
            aws_region="awsRegion",
            user_pool_id="userPoolId"
        )
    )],
    api_type="apiType",
    lambda_authorizer_config=appsync.CfnGraphQLApi.LambdaAuthorizerConfigProperty(
        authorizer_result_ttl_in_seconds=123,
        authorizer_uri="authorizerUri",
        identity_validation_expression="identityValidationExpression"
    ),
    log_config=appsync.CfnGraphQLApi.LogConfigProperty(
        cloud_watch_logs_role_arn="cloudWatchLogsRoleArn",
        exclude_verbose_content=False,
        field_log_level="fieldLogLevel"
    ),
    merged_api_execution_role_arn="mergedApiExecutionRoleArn",
    open_id_connect_config=appsync.CfnGraphQLApi.OpenIDConnectConfigProperty(
        auth_ttl=123,
        client_id="clientId",
        iat_ttl=123,
        issuer="issuer"
    ),
    owner_contact="ownerContact",
    tags=[CfnTag(
        key="key",
        value="value"
    )],
    user_pool_config=appsync.CfnGraphQLApi.UserPoolConfigProperty(
        app_id_client_regex="appIdClientRegex",
        aws_region="awsRegion",
        default_action="defaultAction",
        user_pool_id="userPoolId"
    ),
    visibility="visibility",
    xray_enabled=False
)

Attributes

additional_authentication_providers

A list of additional authentication providers for the GraphqlApi API.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-additionalauthenticationproviders

api_type

The value that indicates whether the GraphQL API is a standard API ( GRAPHQL ) or merged API ( MERGED ).

The following values are valid:

GRAPHQL | MERGED

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-apitype

authentication_type

Security configuration for your GraphQL API.

For allowed values (such as API_KEY , AWS_IAM , AMAZON_COGNITO_USER_POOLS , OPENID_CONNECT , or AWS_LAMBDA ), see Security in the AWS AppSync Developer Guide .

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-authenticationtype

lambda_authorizer_config

A LambdaAuthorizerConfig holds configuration on how to authorize AWS AppSync API access when using the AWS_LAMBDA authorizer mode.

Be aware that an AWS AppSync API may have only one Lambda authorizer configured at a time.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-lambdaauthorizerconfig

log_config

The Amazon CloudWatch Logs configuration.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-logconfig

merged_api_execution_role_arn

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.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-mergedapiexecutionrolearn

name

The API name.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-name

open_id_connect_config

The OpenID Connect configuration.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-openidconnectconfig

owner_contact

The owner contact information for an API resource.

This field accepts any string input with a length of 0 - 256 characters.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-ownercontact

tags

An arbitrary set of tags (key-value pairs) for this GraphQL API.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-tags

user_pool_config

Optional authorization configuration for using Amazon Cognito user pools with your GraphQL endpoint.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-userpoolconfig

visibility

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.

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-visibility

xray_enabled

A flag indicating whether to use AWS X-Ray tracing for this GraphqlApi .

Link:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-graphqlapi.html#cfn-appsync-graphqlapi-xrayenabled