CfnDataSourceProps

class aws_cdk.aws_appsync.CfnDataSourceProps(*, api_id, name, type, description=None, dynamo_db_config=None, elasticsearch_config=None, http_config=None, lambda_config=None, open_search_service_config=None, relational_database_config=None, service_role_arn=None)

Bases: object

Properties for defining a CfnDataSource.

Parameters
  • api_id (str) – Unique AWS AppSync GraphQL API identifier where this data source will be created.

  • name (str) – Friendly name for you to identify your AppSync data source after creation.

  • type (str) – The type of the data source. - AWS_LAMBDA : The data source is an AWS 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. - NONE : There is no data source. This type is used when you wish to invoke a GraphQL operation without connecting to a data source, such as performing data transformation with resolvers or triggering a subscription to be invoked from a mutation. - HTTP : The data source is an HTTP endpoint. - RELATIONAL_DATABASE : The data source is a relational database.

  • description (Optional[str]) – The description of the data source.

  • dynamo_db_config (Union[IResolvable, DynamoDBConfigProperty, None]) – AWS Region and TableName for an Amazon DynamoDB table in your account.

  • elasticsearch_config (Union[IResolvable, ElasticsearchConfigProperty, None]) – AWS Region and Endpoints for an Amazon OpenSearch Service domain in your account. As of September 2021, Amazon Elasticsearch Service is Amazon OpenSearch Service . This property is deprecated. For new data sources, use OpenSearchServiceConfig to specify an OpenSearch Service data source.

  • http_config (Union[IResolvable, HttpConfigProperty, None]) – Endpoints for an HTTP data source.

  • lambda_config (Union[IResolvable, LambdaConfigProperty, None]) – An ARN of a Lambda function in valid ARN format. This can be the ARN of a Lambda function that exists in the current account or in another account.

  • open_search_service_config (Union[IResolvable, OpenSearchServiceConfigProperty, None]) – AWS Region and Endpoints for an Amazon OpenSearch Service domain in your account.

  • relational_database_config (Union[IResolvable, RelationalDatabaseConfigProperty, None]) – Relational Database configuration of the relational database data source.

  • service_role_arn (Optional[str]) – The AWS Identity and Access Management service role ARN for the data source. The system assumes this role when accessing the data source. Required if Type is specified as AWS_LAMBDA , AMAZON_DYNAMODB , AMAZON_ELASTICSEARCH , or AMAZON_OPENSEARCH_SERVICE .

Link

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-appsync-datasource.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_data_source_props = appsync.CfnDataSourceProps(
    api_id="apiId",
    name="name",
    type="type",

    # the properties below are optional
    description="description",
    dynamo_db_config=appsync.CfnDataSource.DynamoDBConfigProperty(
        aws_region="awsRegion",
        table_name="tableName",

        # the properties below are optional
        delta_sync_config=appsync.CfnDataSource.DeltaSyncConfigProperty(
            base_table_ttl="baseTableTtl",
            delta_sync_table_name="deltaSyncTableName",
            delta_sync_table_ttl="deltaSyncTableTtl"
        ),
        use_caller_credentials=False,
        versioned=False
    ),
    elasticsearch_config=appsync.CfnDataSource.ElasticsearchConfigProperty(
        aws_region="awsRegion",
        endpoint="endpoint"
    ),
    http_config=appsync.CfnDataSource.HttpConfigProperty(
        endpoint="endpoint",

        # the properties below are optional
        authorization_config=appsync.CfnDataSource.AuthorizationConfigProperty(
            authorization_type="authorizationType",

            # the properties below are optional
            aws_iam_config=appsync.CfnDataSource.AwsIamConfigProperty(
                signing_region="signingRegion",
                signing_service_name="signingServiceName"
            )
        )
    ),
    lambda_config=appsync.CfnDataSource.LambdaConfigProperty(
        lambda_function_arn="lambdaFunctionArn"
    ),
    open_search_service_config=appsync.CfnDataSource.OpenSearchServiceConfigProperty(
        aws_region="awsRegion",
        endpoint="endpoint"
    ),
    relational_database_config=appsync.CfnDataSource.RelationalDatabaseConfigProperty(
        relational_database_source_type="relationalDatabaseSourceType",

        # the properties below are optional
        rds_http_endpoint_config=appsync.CfnDataSource.RdsHttpEndpointConfigProperty(
            aws_region="awsRegion",
            aws_secret_store_arn="awsSecretStoreArn",
            db_cluster_identifier="dbClusterIdentifier",

            # the properties below are optional
            database_name="databaseName",
            schema="schema"
        )
    ),
    service_role_arn="serviceRoleArn"
)

Attributes

api_id

Unique AWS AppSync GraphQL API identifier where this data source will be created.

Link

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

Return type

str

description

The description of the data source.

Link

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

Return type

Optional[str]

dynamo_db_config

AWS Region and TableName for an Amazon DynamoDB table in your account.

Link

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

Return type

Union[IResolvable, DynamoDBConfigProperty, None]

elasticsearch_config

AWS Region and Endpoints for an Amazon OpenSearch Service domain in your account.

As of September 2021, Amazon Elasticsearch Service is Amazon OpenSearch Service . This property is deprecated. For new data sources, use OpenSearchServiceConfig to specify an OpenSearch Service data source.

Link

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

Return type

Union[IResolvable, ElasticsearchConfigProperty, None]

http_config

Endpoints for an HTTP data source.

Link

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

Return type

Union[IResolvable, HttpConfigProperty, None]

lambda_config

An ARN of a Lambda function in valid ARN format.

This can be the ARN of a Lambda function that exists in the current account or in another account.

Link

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

Return type

Union[IResolvable, LambdaConfigProperty, None]

name

Friendly name for you to identify your AppSync data source after creation.

Link

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

Return type

str

open_search_service_config

AWS Region and Endpoints for an Amazon OpenSearch Service domain in your account.

Link

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

Return type

Union[IResolvable, OpenSearchServiceConfigProperty, None]

relational_database_config

Relational Database configuration of the relational database data source.

Link

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

Return type

Union[IResolvable, RelationalDatabaseConfigProperty, None]

service_role_arn

The AWS Identity and Access Management service role ARN for the data source.

The system assumes this role when accessing the data source.

Required if Type is specified as AWS_LAMBDA , AMAZON_DYNAMODB , AMAZON_ELASTICSEARCH , or AMAZON_OPENSEARCH_SERVICE .

Link

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

Return type

Optional[str]

type

The type of the data source.

  • AWS_LAMBDA : The data source is an AWS 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.

  • NONE : There is no data source. This type is used when you wish to invoke a GraphQL operation without connecting to a data source, such as performing data transformation with resolvers or triggering a subscription to be invoked from a mutation.

  • HTTP : The data source is an HTTP endpoint.

  • RELATIONAL_DATABASE : The data source is a relational database.

Link

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

Return type

str