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',
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'
}
)
[REQUIRED]
The API ID for the GraphQL API for the DataSource
.
[REQUIRED]
A user-supplied name for the DataSource
.
DataSource
.[REQUIRED]
The type of the DataSource
.
Amazon DynamoDB settings.
The table name.
The Amazon Web Services Region.
Set to TRUE to use Amazon Cognito credentials with this data source.
The DeltaSyncConfig
for a versioned data source.
The number of minutes that an Item is stored in the data source.
The Delta Sync table name.
The number of minutes that a Delta Sync log entry is stored in the Delta Sync table.
Set to TRUE to use Conflict Detection and Resolution with this data source.
Lambda settings.
The Amazon Resource Name (ARN) for the Lambda function.
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.
The endpoint.
The Amazon Web Services Region.
Amazon OpenSearch Service settings.
The endpoint.
The Amazon Web Services Region.
HTTP endpoint settings.
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.
The authorization configuration in case the HTTP endpoint requires authorization.
The authorization type that the HTTP endpoint requires.
The Identity and Access Management (IAM) settings.
The signing Amazon Web Services Region for IAM authorization.
The signing service name for IAM authorization.
Relational database settings.
Source type for the relational database.
Amazon RDS HTTP endpoint settings.
Amazon Web Services Region for Amazon RDS HTTP endpoint.
Amazon RDS cluster Amazon Resource Name (ARN).
Logical database name.
Logical schema name.
Amazon Web Services secret store Amazon Resource Name (ARN) for database credentials.
Amazon EventBridge settings.
The ARN of the event bus. For more information about event buses, see Amazon EventBridge event buses.
dict
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',
'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'
}
}
}
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.
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.
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.
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.
Exceptions
AppSync.Client.exceptions.BadRequestException
AppSync.Client.exceptions.ConcurrentModificationException
AppSync.Client.exceptions.NotFoundException
AppSync.Client.exceptions.UnauthorizedException
AppSync.Client.exceptions.InternalFailureException