AppSync / Client / create_data_source
create_data_source#
- AppSync.Client.create_data_source(**kwargs)#
Creates a
DataSource
object.See also: AWS API Documentation
Request Syntax
response = client.create_data_source( apiId='string', name='string', description='string', type='AWS_LAMBDA'|'AMAZON_DYNAMODB'|'AMAZON_ELASTICSEARCH'|'NONE'|'HTTP'|'RELATIONAL_DATABASE'|'AMAZON_OPENSEARCH_SERVICE'|'AMAZON_EVENTBRIDGE'|'AMAZON_BEDROCK_RUNTIME', serviceRoleArn='string', dynamodbConfig={ 'tableName': 'string', 'awsRegion': 'string', 'useCallerCredentials': True|False, 'deltaSyncConfig': { 'baseTableTTL': 123, 'deltaSyncTableName': 'string', 'deltaSyncTableTTL': 123 }, 'versioned': True|False }, lambdaConfig={ 'lambdaFunctionArn': 'string' }, elasticsearchConfig={ 'endpoint': 'string', 'awsRegion': 'string' }, openSearchServiceConfig={ 'endpoint': 'string', 'awsRegion': 'string' }, httpConfig={ 'endpoint': 'string', 'authorizationConfig': { 'authorizationType': 'AWS_IAM', 'awsIamConfig': { 'signingRegion': 'string', 'signingServiceName': 'string' } } }, relationalDatabaseConfig={ 'relationalDatabaseSourceType': 'RDS_HTTP_ENDPOINT', 'rdsHttpEndpointConfig': { 'awsRegion': 'string', 'dbClusterIdentifier': 'string', 'databaseName': 'string', 'schema': 'string', 'awsSecretStoreArn': 'string' } }, eventBridgeConfig={ 'eventBusArn': 'string' }, metricsConfig='ENABLED'|'DISABLED' )
- Parameters:
apiId (string) –
[REQUIRED]
The API ID for the GraphQL API for the
DataSource
.name (string) –
[REQUIRED]
A user-supplied name for the
DataSource
.description (string) – A description of the
DataSource
.type (string) –
[REQUIRED]
The type of the
DataSource
.serviceRoleArn (string) – 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.
dynamodbConfig (dict) –
Amazon DynamoDB settings.
tableName (string) – [REQUIRED]
The table name.
awsRegion (string) – [REQUIRED]
The Amazon Web Services Region.
useCallerCredentials (boolean) –
Set to TRUE to use Amazon Cognito credentials with this data source.
deltaSyncConfig (dict) –
The
DeltaSyncConfig
for a versioned data source.baseTableTTL (integer) –
The number of minutes that an Item is stored in the data source.
deltaSyncTableName (string) –
The Delta Sync table name.
deltaSyncTableTTL (integer) –
The number of minutes that a Delta Sync log entry is stored in the Delta Sync table.
versioned (boolean) –
Set to TRUE to use Conflict Detection and Resolution with this data source.
lambdaConfig (dict) –
Lambda settings.
lambdaFunctionArn (string) – [REQUIRED]
The Amazon Resource Name (ARN) for the Lambda function.
elasticsearchConfig (dict) –
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.
endpoint (string) – [REQUIRED]
The endpoint.
awsRegion (string) – [REQUIRED]
The Amazon Web Services Region.
openSearchServiceConfig (dict) –
Amazon OpenSearch Service settings.
endpoint (string) – [REQUIRED]
The endpoint.
awsRegion (string) – [REQUIRED]
The Amazon Web Services Region.
httpConfig (dict) –
HTTP endpoint settings.
endpoint (string) –
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 (dict) –
The authorization configuration in case the HTTP endpoint requires authorization.
authorizationType (string) – [REQUIRED]
The authorization type that the HTTP endpoint requires.
AWS_IAM: The authorization type is Signature Version 4 (SigV4).
awsIamConfig (dict) –
The Identity and Access Management (IAM) settings.
signingRegion (string) –
The signing Amazon Web Services Region for IAM authorization.
signingServiceName (string) –
The signing service name for IAM authorization.
relationalDatabaseConfig (dict) –
Relational database settings.
relationalDatabaseSourceType (string) –
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 (dict) –
Amazon RDS HTTP endpoint settings.
awsRegion (string) –
Amazon Web Services Region for Amazon RDS HTTP endpoint.
dbClusterIdentifier (string) –
Amazon RDS cluster Amazon Resource Name (ARN).
databaseName (string) –
Logical database name.
schema (string) –
Logical schema name.
awsSecretStoreArn (string) –
Amazon Web Services secret store Amazon Resource Name (ARN) for database credentials.
eventBridgeConfig (dict) –
Amazon EventBridge settings.
eventBusArn (string) – [REQUIRED]
The ARN of the event bus. For more information about event buses, see Amazon EventBridge event buses.
metricsConfig (string) –
Enables or disables enhanced data source metrics for specified data sources. Note that
metricsConfig
won’t be used unless thedataSourceLevelMetricsBehavior
value is set toPER_DATA_SOURCE_METRICS
. If thedataSourceLevelMetricsBehavior
is set toFULL_REQUEST_DATA_SOURCE_METRICS
instead,metricsConfig
will be ignored. However, you can still set its value.metricsConfig
can beENABLED
orDISABLED
.
- Return type:
dict
- Returns:
Response Syntax
{ 'dataSource': { 'dataSourceArn': 'string', 'name': 'string', 'description': 'string', 'type': 'AWS_LAMBDA'|'AMAZON_DYNAMODB'|'AMAZON_ELASTICSEARCH'|'NONE'|'HTTP'|'RELATIONAL_DATABASE'|'AMAZON_OPENSEARCH_SERVICE'|'AMAZON_EVENTBRIDGE'|'AMAZON_BEDROCK_RUNTIME', 'serviceRoleArn': 'string', 'dynamodbConfig': { 'tableName': 'string', 'awsRegion': 'string', 'useCallerCredentials': True|False, 'deltaSyncConfig': { 'baseTableTTL': 123, 'deltaSyncTableName': 'string', 'deltaSyncTableTTL': 123 }, 'versioned': True|False }, 'lambdaConfig': { 'lambdaFunctionArn': 'string' }, 'elasticsearchConfig': { 'endpoint': 'string', 'awsRegion': 'string' }, 'openSearchServiceConfig': { 'endpoint': 'string', 'awsRegion': 'string' }, 'httpConfig': { 'endpoint': 'string', 'authorizationConfig': { 'authorizationType': 'AWS_IAM', 'awsIamConfig': { 'signingRegion': 'string', 'signingServiceName': 'string' } } }, 'relationalDatabaseConfig': { 'relationalDatabaseSourceType': 'RDS_HTTP_ENDPOINT', 'rdsHttpEndpointConfig': { 'awsRegion': 'string', 'dbClusterIdentifier': 'string', 'databaseName': 'string', 'schema': 'string', 'awsSecretStoreArn': 'string' } }, 'eventBridgeConfig': { 'eventBusArn': 'string' }, 'metricsConfig': 'ENABLED'|'DISABLED' } }
Response Structure
(dict) –
dataSource (dict) –
The
DataSource
object.dataSourceArn (string) –
The data source Amazon Resource Name (ARN).
name (string) –
The name of the data source.
description (string) –
The description of the data source.
type (string) –
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.
serviceRoleArn (string) –
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.
dynamodbConfig (dict) –
DynamoDB settings.
tableName (string) –
The table name.
awsRegion (string) –
The Amazon Web Services Region.
useCallerCredentials (boolean) –
Set to TRUE to use Amazon Cognito credentials with this data source.
deltaSyncConfig (dict) –
The
DeltaSyncConfig
for a versioned data source.baseTableTTL (integer) –
The number of minutes that an Item is stored in the data source.
deltaSyncTableName (string) –
The Delta Sync table name.
deltaSyncTableTTL (integer) –
The number of minutes that a Delta Sync log entry is stored in the Delta Sync table.
versioned (boolean) –
Set to TRUE to use Conflict Detection and Resolution with this data source.
lambdaConfig (dict) –
Lambda settings.
lambdaFunctionArn (string) –
The Amazon Resource Name (ARN) for the Lambda function.
elasticsearchConfig (dict) –
Amazon OpenSearch Service settings.
endpoint (string) –
The endpoint.
awsRegion (string) –
The Amazon Web Services Region.
openSearchServiceConfig (dict) –
Amazon OpenSearch Service settings.
endpoint (string) –
The endpoint.
awsRegion (string) –
The Amazon Web Services Region.
httpConfig (dict) –
HTTP endpoint settings.
endpoint (string) –
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 (dict) –
The authorization configuration in case the HTTP endpoint requires authorization.
authorizationType (string) –
The authorization type that the HTTP endpoint requires.
AWS_IAM: The authorization type is Signature Version 4 (SigV4).
awsIamConfig (dict) –
The Identity and Access Management (IAM) settings.
signingRegion (string) –
The signing Amazon Web Services Region for IAM authorization.
signingServiceName (string) –
The signing service name for IAM authorization.
relationalDatabaseConfig (dict) –
Relational database settings.
relationalDatabaseSourceType (string) –
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 (dict) –
Amazon RDS HTTP endpoint settings.
awsRegion (string) –
Amazon Web Services Region for Amazon RDS HTTP endpoint.
dbClusterIdentifier (string) –
Amazon RDS cluster Amazon Resource Name (ARN).
databaseName (string) –
Logical database name.
schema (string) –
Logical schema name.
awsSecretStoreArn (string) –
Amazon Web Services secret store Amazon Resource Name (ARN) for database credentials.
eventBridgeConfig (dict) –
Amazon EventBridge settings.
eventBusArn (string) –
The ARN of the event bus. For more information about event buses, see Amazon EventBridge event buses.
metricsConfig (string) –
Enables or disables enhanced data source metrics for specified data sources. Note that
metricsConfig
won’t be used unless thedataSourceLevelMetricsBehavior
value is set toPER_DATA_SOURCE_METRICS
. If thedataSourceLevelMetricsBehavior
is set toFULL_REQUEST_DATA_SOURCE_METRICS
instead,metricsConfig
will be ignored. However, you can still set its value.metricsConfig
can beENABLED
orDISABLED
.
Exceptions