AWS Classic v5.41.0, May 15 23
AWS Classic v5.41.0, May 15 23
aws.appsync.DataSource
Explore with Pulumi AI
Provides an AppSync Data Source.
Example Usage
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Aws = Pulumi.Aws;
return await Deployment.RunAsync(() =>
{
var exampleTable = new Aws.DynamoDB.Table("exampleTable", new()
{
ReadCapacity = 1,
WriteCapacity = 1,
HashKey = "UserId",
Attributes = new[]
{
new Aws.DynamoDB.Inputs.TableAttributeArgs
{
Name = "UserId",
Type = "S",
},
},
});
var assumeRole = Aws.Iam.GetPolicyDocument.Invoke(new()
{
Statements = new[]
{
new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs
{
Effect = "Allow",
Principals = new[]
{
new Aws.Iam.Inputs.GetPolicyDocumentStatementPrincipalInputArgs
{
Type = "Service",
Identifiers = new[]
{
"appsync.amazonaws.com",
},
},
},
Actions = new[]
{
"sts:AssumeRole",
},
},
},
});
var exampleRole = new Aws.Iam.Role("exampleRole", new()
{
AssumeRolePolicy = assumeRole.Apply(getPolicyDocumentResult => getPolicyDocumentResult.Json),
});
var examplePolicyDocument = Aws.Iam.GetPolicyDocument.Invoke(new()
{
Statements = new[]
{
new Aws.Iam.Inputs.GetPolicyDocumentStatementInputArgs
{
Effect = "Allow",
Actions = new[]
{
"dynamodb:*",
},
Resources = new[]
{
exampleTable.Arn,
},
},
},
});
var exampleRolePolicy = new Aws.Iam.RolePolicy("exampleRolePolicy", new()
{
Role = exampleRole.Id,
Policy = examplePolicyDocument.Apply(getPolicyDocumentResult => getPolicyDocumentResult.Json),
});
var exampleGraphQLApi = new Aws.AppSync.GraphQLApi("exampleGraphQLApi", new()
{
AuthenticationType = "API_KEY",
});
var exampleDataSource = new Aws.AppSync.DataSource("exampleDataSource", new()
{
ApiId = exampleGraphQLApi.Id,
Name = "my_appsync_example",
ServiceRoleArn = exampleRole.Arn,
Type = "AMAZON_DYNAMODB",
DynamodbConfig = new Aws.AppSync.Inputs.DataSourceDynamodbConfigArgs
{
TableName = exampleTable.Name,
},
});
});
package main
import (
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/appsync"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/dynamodb"
"github.com/pulumi/pulumi-aws/sdk/v5/go/aws/iam"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
exampleTable, err := dynamodb.NewTable(ctx, "exampleTable", &dynamodb.TableArgs{
ReadCapacity: pulumi.Int(1),
WriteCapacity: pulumi.Int(1),
HashKey: pulumi.String("UserId"),
Attributes: dynamodb.TableAttributeArray{
&dynamodb.TableAttributeArgs{
Name: pulumi.String("UserId"),
Type: pulumi.String("S"),
},
},
})
if err != nil {
return err
}
assumeRole, err := iam.GetPolicyDocument(ctx, &iam.GetPolicyDocumentArgs{
Statements: []iam.GetPolicyDocumentStatement{
{
Effect: pulumi.StringRef("Allow"),
Principals: []iam.GetPolicyDocumentStatementPrincipal{
{
Type: "Service",
Identifiers: []string{
"appsync.amazonaws.com",
},
},
},
Actions: []string{
"sts:AssumeRole",
},
},
},
}, nil)
if err != nil {
return err
}
exampleRole, err := iam.NewRole(ctx, "exampleRole", &iam.RoleArgs{
AssumeRolePolicy: *pulumi.String(assumeRole.Json),
})
if err != nil {
return err
}
examplePolicyDocument := iam.GetPolicyDocumentOutput(ctx, iam.GetPolicyDocumentOutputArgs{
Statements: iam.GetPolicyDocumentStatementArray{
&iam.GetPolicyDocumentStatementArgs{
Effect: pulumi.String("Allow"),
Actions: pulumi.StringArray{
pulumi.String("dynamodb:*"),
},
Resources: pulumi.StringArray{
exampleTable.Arn,
},
},
},
}, nil)
_, err = iam.NewRolePolicy(ctx, "exampleRolePolicy", &iam.RolePolicyArgs{
Role: exampleRole.ID(),
Policy: examplePolicyDocument.ApplyT(func(examplePolicyDocument iam.GetPolicyDocumentResult) (*string, error) {
return &examplePolicyDocument.Json, nil
}).(pulumi.StringPtrOutput),
})
if err != nil {
return err
}
exampleGraphQLApi, err := appsync.NewGraphQLApi(ctx, "exampleGraphQLApi", &appsync.GraphQLApiArgs{
AuthenticationType: pulumi.String("API_KEY"),
})
if err != nil {
return err
}
_, err = appsync.NewDataSource(ctx, "exampleDataSource", &appsync.DataSourceArgs{
ApiId: exampleGraphQLApi.ID(),
Name: pulumi.String("my_appsync_example"),
ServiceRoleArn: exampleRole.Arn,
Type: pulumi.String("AMAZON_DYNAMODB"),
DynamodbConfig: &appsync.DataSourceDynamodbConfigArgs{
TableName: exampleTable.Name,
},
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.aws.dynamodb.Table;
import com.pulumi.aws.dynamodb.TableArgs;
import com.pulumi.aws.dynamodb.inputs.TableAttributeArgs;
import com.pulumi.aws.iam.IamFunctions;
import com.pulumi.aws.iam.inputs.GetPolicyDocumentArgs;
import com.pulumi.aws.iam.Role;
import com.pulumi.aws.iam.RoleArgs;
import com.pulumi.aws.iam.RolePolicy;
import com.pulumi.aws.iam.RolePolicyArgs;
import com.pulumi.aws.appsync.GraphQLApi;
import com.pulumi.aws.appsync.GraphQLApiArgs;
import com.pulumi.aws.appsync.DataSource;
import com.pulumi.aws.appsync.DataSourceArgs;
import com.pulumi.aws.appsync.inputs.DataSourceDynamodbConfigArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var exampleTable = new Table("exampleTable", TableArgs.builder()
.readCapacity(1)
.writeCapacity(1)
.hashKey("UserId")
.attributes(TableAttributeArgs.builder()
.name("UserId")
.type("S")
.build())
.build());
final var assumeRole = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
.statements(GetPolicyDocumentStatementArgs.builder()
.effect("Allow")
.principals(GetPolicyDocumentStatementPrincipalArgs.builder()
.type("Service")
.identifiers("appsync.amazonaws.com")
.build())
.actions("sts:AssumeRole")
.build())
.build());
var exampleRole = new Role("exampleRole", RoleArgs.builder()
.assumeRolePolicy(assumeRole.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult.json()))
.build());
final var examplePolicyDocument = IamFunctions.getPolicyDocument(GetPolicyDocumentArgs.builder()
.statements(GetPolicyDocumentStatementArgs.builder()
.effect("Allow")
.actions("dynamodb:*")
.resources(exampleTable.arn())
.build())
.build());
var exampleRolePolicy = new RolePolicy("exampleRolePolicy", RolePolicyArgs.builder()
.role(exampleRole.id())
.policy(examplePolicyDocument.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult).applyValue(examplePolicyDocument -> examplePolicyDocument.applyValue(getPolicyDocumentResult -> getPolicyDocumentResult.json())))
.build());
var exampleGraphQLApi = new GraphQLApi("exampleGraphQLApi", GraphQLApiArgs.builder()
.authenticationType("API_KEY")
.build());
var exampleDataSource = new DataSource("exampleDataSource", DataSourceArgs.builder()
.apiId(exampleGraphQLApi.id())
.name("my_appsync_example")
.serviceRoleArn(exampleRole.arn())
.type("AMAZON_DYNAMODB")
.dynamodbConfig(DataSourceDynamodbConfigArgs.builder()
.tableName(exampleTable.name())
.build())
.build());
}
}
import pulumi
import pulumi_aws as aws
example_table = aws.dynamodb.Table("exampleTable",
read_capacity=1,
write_capacity=1,
hash_key="UserId",
attributes=[aws.dynamodb.TableAttributeArgs(
name="UserId",
type="S",
)])
assume_role = aws.iam.get_policy_document(statements=[aws.iam.GetPolicyDocumentStatementArgs(
effect="Allow",
principals=[aws.iam.GetPolicyDocumentStatementPrincipalArgs(
type="Service",
identifiers=["appsync.amazonaws.com"],
)],
actions=["sts:AssumeRole"],
)])
example_role = aws.iam.Role("exampleRole", assume_role_policy=assume_role.json)
example_policy_document = aws.iam.get_policy_document_output(statements=[aws.iam.GetPolicyDocumentStatementArgs(
effect="Allow",
actions=["dynamodb:*"],
resources=[example_table.arn],
)])
example_role_policy = aws.iam.RolePolicy("exampleRolePolicy",
role=example_role.id,
policy=example_policy_document.json)
example_graph_ql_api = aws.appsync.GraphQLApi("exampleGraphQLApi", authentication_type="API_KEY")
example_data_source = aws.appsync.DataSource("exampleDataSource",
api_id=example_graph_ql_api.id,
name="my_appsync_example",
service_role_arn=example_role.arn,
type="AMAZON_DYNAMODB",
dynamodb_config=aws.appsync.DataSourceDynamodbConfigArgs(
table_name=example_table.name,
))
import * as pulumi from "@pulumi/pulumi";
import * as aws from "@pulumi/aws";
const exampleTable = new aws.dynamodb.Table("exampleTable", {
readCapacity: 1,
writeCapacity: 1,
hashKey: "UserId",
attributes: [{
name: "UserId",
type: "S",
}],
});
const assumeRole = aws.iam.getPolicyDocument({
statements: [{
effect: "Allow",
principals: [{
type: "Service",
identifiers: ["appsync.amazonaws.com"],
}],
actions: ["sts:AssumeRole"],
}],
});
const exampleRole = new aws.iam.Role("exampleRole", {assumeRolePolicy: assumeRole.then(assumeRole => assumeRole.json)});
const examplePolicyDocument = aws.iam.getPolicyDocumentOutput({
statements: [{
effect: "Allow",
actions: ["dynamodb:*"],
resources: [exampleTable.arn],
}],
});
const exampleRolePolicy = new aws.iam.RolePolicy("exampleRolePolicy", {
role: exampleRole.id,
policy: examplePolicyDocument.apply(examplePolicyDocument => examplePolicyDocument.json),
});
const exampleGraphQLApi = new aws.appsync.GraphQLApi("exampleGraphQLApi", {authenticationType: "API_KEY"});
const exampleDataSource = new aws.appsync.DataSource("exampleDataSource", {
apiId: exampleGraphQLApi.id,
name: "my_appsync_example",
serviceRoleArn: exampleRole.arn,
type: "AMAZON_DYNAMODB",
dynamodbConfig: {
tableName: exampleTable.name,
},
});
resources:
exampleTable:
type: aws:dynamodb:Table
properties:
readCapacity: 1
writeCapacity: 1
hashKey: UserId
attributes:
- name: UserId
type: S
exampleRole:
type: aws:iam:Role
properties:
assumeRolePolicy: ${assumeRole.json}
exampleRolePolicy:
type: aws:iam:RolePolicy
properties:
role: ${exampleRole.id}
policy: ${examplePolicyDocument.json}
exampleGraphQLApi:
type: aws:appsync:GraphQLApi
properties:
authenticationType: API_KEY
exampleDataSource:
type: aws:appsync:DataSource
properties:
apiId: ${exampleGraphQLApi.id}
name: my_appsync_example
serviceRoleArn: ${exampleRole.arn}
type: AMAZON_DYNAMODB
dynamodbConfig:
tableName: ${exampleTable.name}
variables:
assumeRole:
fn::invoke:
Function: aws:iam:getPolicyDocument
Arguments:
statements:
- effect: Allow
principals:
- type: Service
identifiers:
- appsync.amazonaws.com
actions:
- sts:AssumeRole
examplePolicyDocument:
fn::invoke:
Function: aws:iam:getPolicyDocument
Arguments:
statements:
- effect: Allow
actions:
- dynamodb:*
resources:
- ${exampleTable.arn}
Create DataSource Resource
new DataSource(name: string, args: DataSourceArgs, opts?: CustomResourceOptions);
@overload
def DataSource(resource_name: str,
opts: Optional[ResourceOptions] = None,
api_id: Optional[str] = None,
description: Optional[str] = None,
dynamodb_config: Optional[DataSourceDynamodbConfigArgs] = None,
elasticsearch_config: Optional[DataSourceElasticsearchConfigArgs] = None,
event_bridge_config: Optional[DataSourceEventBridgeConfigArgs] = None,
http_config: Optional[DataSourceHttpConfigArgs] = None,
lambda_config: Optional[DataSourceLambdaConfigArgs] = None,
name: Optional[str] = None,
opensearchservice_config: Optional[DataSourceOpensearchserviceConfigArgs] = None,
relational_database_config: Optional[DataSourceRelationalDatabaseConfigArgs] = None,
service_role_arn: Optional[str] = None,
type: Optional[str] = None)
@overload
def DataSource(resource_name: str,
args: DataSourceArgs,
opts: Optional[ResourceOptions] = None)
func NewDataSource(ctx *Context, name string, args DataSourceArgs, opts ...ResourceOption) (*DataSource, error)
public DataSource(string name, DataSourceArgs args, CustomResourceOptions? opts = null)
public DataSource(String name, DataSourceArgs args)
public DataSource(String name, DataSourceArgs args, CustomResourceOptions options)
type: aws:appsync:DataSource
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args DataSourceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args DataSourceArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args DataSourceArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args DataSourceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args DataSourceArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
DataSource Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The DataSource resource accepts the following input properties:
- Api
Id string API ID for the GraphQL API for the data source.
- Type string
Type of the Data Source. Valid values:
AWS_LAMBDA
,AMAZON_DYNAMODB
,AMAZON_ELASTICSEARCH
,HTTP
,NONE
,RELATIONAL_DATABASE
,AMAZON_EVENTBRIDGE
.- Description string
Description of the data source.
- Dynamodb
Config DataSource Dynamodb Config Args DynamoDB settings. See below
- Elasticsearch
Config DataSource Elasticsearch Config Args Amazon Elasticsearch settings. See below
- Event
Bridge DataConfig Source Event Bridge Config Args AWS EventBridge settings. See below
- Http
Config DataSource Http Config Args HTTP settings. See below
- Lambda
Config DataSource Lambda Config Args AWS Lambda settings. See below
- Name string
User-supplied name for the data source.
- Opensearchservice
Config DataSource Opensearchservice Config Args Amazon OpenSearch Service settings. See below
- Relational
Database DataConfig Source Relational Database Config Args AWS RDS settings. See Relational Database Config
- Service
Role stringArn IAM service role ARN for the data source.
- Api
Id string API ID for the GraphQL API for the data source.
- Type string
Type of the Data Source. Valid values:
AWS_LAMBDA
,AMAZON_DYNAMODB
,AMAZON_ELASTICSEARCH
,HTTP
,NONE
,RELATIONAL_DATABASE
,AMAZON_EVENTBRIDGE
.- Description string
Description of the data source.
- Dynamodb
Config DataSource Dynamodb Config Args DynamoDB settings. See below
- Elasticsearch
Config DataSource Elasticsearch Config Args Amazon Elasticsearch settings. See below
- Event
Bridge DataConfig Source Event Bridge Config Args AWS EventBridge settings. See below
- Http
Config DataSource Http Config Args HTTP settings. See below
- Lambda
Config DataSource Lambda Config Args AWS Lambda settings. See below
- Name string
User-supplied name for the data source.
- Opensearchservice
Config DataSource Opensearchservice Config Args Amazon OpenSearch Service settings. See below
- Relational
Database DataConfig Source Relational Database Config Args AWS RDS settings. See Relational Database Config
- Service
Role stringArn IAM service role ARN for the data source.
- api
Id String API ID for the GraphQL API for the data source.
- type String
Type of the Data Source. Valid values:
AWS_LAMBDA
,AMAZON_DYNAMODB
,AMAZON_ELASTICSEARCH
,HTTP
,NONE
,RELATIONAL_DATABASE
,AMAZON_EVENTBRIDGE
.- description String
Description of the data source.
- dynamodb
Config DataSource Dynamodb Config Args DynamoDB settings. See below
- elasticsearch
Config DataSource Elasticsearch Config Args Amazon Elasticsearch settings. See below
- event
Bridge DataConfig Source Event Bridge Config Args AWS EventBridge settings. See below
- http
Config DataSource Http Config Args HTTP settings. See below
- lambda
Config DataSource Lambda Config Args AWS Lambda settings. See below
- name String
User-supplied name for the data source.
- opensearchservice
Config DataSource Opensearchservice Config Args Amazon OpenSearch Service settings. See below
- relational
Database DataConfig Source Relational Database Config Args AWS RDS settings. See Relational Database Config
- service
Role StringArn IAM service role ARN for the data source.
- api
Id string API ID for the GraphQL API for the data source.
- type string
Type of the Data Source. Valid values:
AWS_LAMBDA
,AMAZON_DYNAMODB
,AMAZON_ELASTICSEARCH
,HTTP
,NONE
,RELATIONAL_DATABASE
,AMAZON_EVENTBRIDGE
.- description string
Description of the data source.
- dynamodb
Config DataSource Dynamodb Config Args DynamoDB settings. See below
- elasticsearch
Config DataSource Elasticsearch Config Args Amazon Elasticsearch settings. See below
- event
Bridge DataConfig Source Event Bridge Config Args AWS EventBridge settings. See below
- http
Config DataSource Http Config Args HTTP settings. See below
- lambda
Config DataSource Lambda Config Args AWS Lambda settings. See below
- name string
User-supplied name for the data source.
- opensearchservice
Config DataSource Opensearchservice Config Args Amazon OpenSearch Service settings. See below
- relational
Database DataConfig Source Relational Database Config Args AWS RDS settings. See Relational Database Config
- service
Role stringArn IAM service role ARN for the data source.
- api_
id str API ID for the GraphQL API for the data source.
- type str
Type of the Data Source. Valid values:
AWS_LAMBDA
,AMAZON_DYNAMODB
,AMAZON_ELASTICSEARCH
,HTTP
,NONE
,RELATIONAL_DATABASE
,AMAZON_EVENTBRIDGE
.- description str
Description of the data source.
- dynamodb_
config DataSource Dynamodb Config Args DynamoDB settings. See below
- elasticsearch_
config DataSource Elasticsearch Config Args Amazon Elasticsearch settings. See below
- event_
bridge_ Dataconfig Source Event Bridge Config Args AWS EventBridge settings. See below
- http_
config DataSource Http Config Args HTTP settings. See below
- lambda_
config DataSource Lambda Config Args AWS Lambda settings. See below
- name str
User-supplied name for the data source.
- opensearchservice_
config DataSource Opensearchservice Config Args Amazon OpenSearch Service settings. See below
- relational_
database_ Dataconfig Source Relational Database Config Args AWS RDS settings. See Relational Database Config
- service_
role_ strarn IAM service role ARN for the data source.
- api
Id String API ID for the GraphQL API for the data source.
- type String
Type of the Data Source. Valid values:
AWS_LAMBDA
,AMAZON_DYNAMODB
,AMAZON_ELASTICSEARCH
,HTTP
,NONE
,RELATIONAL_DATABASE
,AMAZON_EVENTBRIDGE
.- description String
Description of the data source.
- dynamodb
Config Property Map DynamoDB settings. See below
- elasticsearch
Config Property Map Amazon Elasticsearch settings. See below
- event
Bridge Property MapConfig AWS EventBridge settings. See below
- http
Config Property Map HTTP settings. See below
- lambda
Config Property Map AWS Lambda settings. See below
- name String
User-supplied name for the data source.
- opensearchservice
Config Property Map Amazon OpenSearch Service settings. See below
- relational
Database Property MapConfig AWS RDS settings. See Relational Database Config
- service
Role StringArn IAM service role ARN for the data source.
Outputs
All input properties are implicitly available as output properties. Additionally, the DataSource resource produces the following output properties:
Look up Existing DataSource Resource
Get an existing DataSource resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: DataSourceState, opts?: CustomResourceOptions): DataSource
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
api_id: Optional[str] = None,
arn: Optional[str] = None,
description: Optional[str] = None,
dynamodb_config: Optional[DataSourceDynamodbConfigArgs] = None,
elasticsearch_config: Optional[DataSourceElasticsearchConfigArgs] = None,
event_bridge_config: Optional[DataSourceEventBridgeConfigArgs] = None,
http_config: Optional[DataSourceHttpConfigArgs] = None,
lambda_config: Optional[DataSourceLambdaConfigArgs] = None,
name: Optional[str] = None,
opensearchservice_config: Optional[DataSourceOpensearchserviceConfigArgs] = None,
relational_database_config: Optional[DataSourceRelationalDatabaseConfigArgs] = None,
service_role_arn: Optional[str] = None,
type: Optional[str] = None) -> DataSource
func GetDataSource(ctx *Context, name string, id IDInput, state *DataSourceState, opts ...ResourceOption) (*DataSource, error)
public static DataSource Get(string name, Input<string> id, DataSourceState? state, CustomResourceOptions? opts = null)
public static DataSource get(String name, Output<String> id, DataSourceState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Api
Id string API ID for the GraphQL API for the data source.
- Arn string
ARN
- Description string
Description of the data source.
- Dynamodb
Config DataSource Dynamodb Config Args DynamoDB settings. See below
- Elasticsearch
Config DataSource Elasticsearch Config Args Amazon Elasticsearch settings. See below
- Event
Bridge DataConfig Source Event Bridge Config Args AWS EventBridge settings. See below
- Http
Config DataSource Http Config Args HTTP settings. See below
- Lambda
Config DataSource Lambda Config Args AWS Lambda settings. See below
- Name string
User-supplied name for the data source.
- Opensearchservice
Config DataSource Opensearchservice Config Args Amazon OpenSearch Service settings. See below
- Relational
Database DataConfig Source Relational Database Config Args AWS RDS settings. See Relational Database Config
- Service
Role stringArn IAM service role ARN for the data source.
- Type string
Type of the Data Source. Valid values:
AWS_LAMBDA
,AMAZON_DYNAMODB
,AMAZON_ELASTICSEARCH
,HTTP
,NONE
,RELATIONAL_DATABASE
,AMAZON_EVENTBRIDGE
.
- Api
Id string API ID for the GraphQL API for the data source.
- Arn string
ARN
- Description string
Description of the data source.
- Dynamodb
Config DataSource Dynamodb Config Args DynamoDB settings. See below
- Elasticsearch
Config DataSource Elasticsearch Config Args Amazon Elasticsearch settings. See below
- Event
Bridge DataConfig Source Event Bridge Config Args AWS EventBridge settings. See below
- Http
Config DataSource Http Config Args HTTP settings. See below
- Lambda
Config DataSource Lambda Config Args AWS Lambda settings. See below
- Name string
User-supplied name for the data source.
- Opensearchservice
Config DataSource Opensearchservice Config Args Amazon OpenSearch Service settings. See below
- Relational
Database DataConfig Source Relational Database Config Args AWS RDS settings. See Relational Database Config
- Service
Role stringArn IAM service role ARN for the data source.
- Type string
Type of the Data Source. Valid values:
AWS_LAMBDA
,AMAZON_DYNAMODB
,AMAZON_ELASTICSEARCH
,HTTP
,NONE
,RELATIONAL_DATABASE
,AMAZON_EVENTBRIDGE
.
- api
Id String API ID for the GraphQL API for the data source.
- arn String
ARN
- description String
Description of the data source.
- dynamodb
Config DataSource Dynamodb Config Args DynamoDB settings. See below
- elasticsearch
Config DataSource Elasticsearch Config Args Amazon Elasticsearch settings. See below
- event
Bridge DataConfig Source Event Bridge Config Args AWS EventBridge settings. See below
- http
Config DataSource Http Config Args HTTP settings. See below
- lambda
Config DataSource Lambda Config Args AWS Lambda settings. See below
- name String
User-supplied name for the data source.
- opensearchservice
Config DataSource Opensearchservice Config Args Amazon OpenSearch Service settings. See below
- relational
Database DataConfig Source Relational Database Config Args AWS RDS settings. See Relational Database Config
- service
Role StringArn IAM service role ARN for the data source.
- type String
Type of the Data Source. Valid values:
AWS_LAMBDA
,AMAZON_DYNAMODB
,AMAZON_ELASTICSEARCH
,HTTP
,NONE
,RELATIONAL_DATABASE
,AMAZON_EVENTBRIDGE
.
- api
Id string API ID for the GraphQL API for the data source.
- arn string
ARN
- description string
Description of the data source.
- dynamodb
Config DataSource Dynamodb Config Args DynamoDB settings. See below
- elasticsearch
Config DataSource Elasticsearch Config Args Amazon Elasticsearch settings. See below
- event
Bridge DataConfig Source Event Bridge Config Args AWS EventBridge settings. See below
- http
Config DataSource Http Config Args HTTP settings. See below
- lambda
Config DataSource Lambda Config Args AWS Lambda settings. See below
- name string
User-supplied name for the data source.
- opensearchservice
Config DataSource Opensearchservice Config Args Amazon OpenSearch Service settings. See below
- relational
Database DataConfig Source Relational Database Config Args AWS RDS settings. See Relational Database Config
- service
Role stringArn IAM service role ARN for the data source.
- type string
Type of the Data Source. Valid values:
AWS_LAMBDA
,AMAZON_DYNAMODB
,AMAZON_ELASTICSEARCH
,HTTP
,NONE
,RELATIONAL_DATABASE
,AMAZON_EVENTBRIDGE
.
- api_
id str API ID for the GraphQL API for the data source.
- arn str
ARN
- description str
Description of the data source.
- dynamodb_
config DataSource Dynamodb Config Args DynamoDB settings. See below
- elasticsearch_
config DataSource Elasticsearch Config Args Amazon Elasticsearch settings. See below
- event_
bridge_ Dataconfig Source Event Bridge Config Args AWS EventBridge settings. See below
- http_
config DataSource Http Config Args HTTP settings. See below
- lambda_
config DataSource Lambda Config Args AWS Lambda settings. See below
- name str
User-supplied name for the data source.
- opensearchservice_
config DataSource Opensearchservice Config Args Amazon OpenSearch Service settings. See below
- relational_
database_ Dataconfig Source Relational Database Config Args AWS RDS settings. See Relational Database Config
- service_
role_ strarn IAM service role ARN for the data source.
- type str
Type of the Data Source. Valid values:
AWS_LAMBDA
,AMAZON_DYNAMODB
,AMAZON_ELASTICSEARCH
,HTTP
,NONE
,RELATIONAL_DATABASE
,AMAZON_EVENTBRIDGE
.
- api
Id String API ID for the GraphQL API for the data source.
- arn String
ARN
- description String
Description of the data source.
- dynamodb
Config Property Map DynamoDB settings. See below
- elasticsearch
Config Property Map Amazon Elasticsearch settings. See below
- event
Bridge Property MapConfig AWS EventBridge settings. See below
- http
Config Property Map HTTP settings. See below
- lambda
Config Property Map AWS Lambda settings. See below
- name String
User-supplied name for the data source.
- opensearchservice
Config Property Map Amazon OpenSearch Service settings. See below
- relational
Database Property MapConfig AWS RDS settings. See Relational Database Config
- service
Role StringArn IAM service role ARN for the data source.
- type String
Type of the Data Source. Valid values:
AWS_LAMBDA
,AMAZON_DYNAMODB
,AMAZON_ELASTICSEARCH
,HTTP
,NONE
,RELATIONAL_DATABASE
,AMAZON_EVENTBRIDGE
.
Supporting Types
DataSourceDynamodbConfig
- Table
Name string Name of the DynamoDB table.
- Delta
Sync DataConfig Source Dynamodb Config Delta Sync Config - Region string
AWS region of the DynamoDB table. Defaults to current region.
- Use
Caller boolCredentials Set to
true
to use Amazon Cognito credentials with this data source.- Versioned bool
- Table
Name string Name of the DynamoDB table.
- Delta
Sync DataConfig Source Dynamodb Config Delta Sync Config - Region string
AWS region of the DynamoDB table. Defaults to current region.
- Use
Caller boolCredentials Set to
true
to use Amazon Cognito credentials with this data source.- Versioned bool
- table
Name String Name of the DynamoDB table.
- delta
Sync DataConfig Source Dynamodb Config Delta Sync Config - region String
AWS region of the DynamoDB table. Defaults to current region.
- use
Caller BooleanCredentials Set to
true
to use Amazon Cognito credentials with this data source.- versioned Boolean
- table
Name string Name of the DynamoDB table.
- delta
Sync DataConfig Source Dynamodb Config Delta Sync Config - region string
AWS region of the DynamoDB table. Defaults to current region.
- use
Caller booleanCredentials Set to
true
to use Amazon Cognito credentials with this data source.- versioned boolean
- table_
name str Name of the DynamoDB table.
- delta_
sync_ Dataconfig Source Dynamodb Config Delta Sync Config - region str
AWS region of the DynamoDB table. Defaults to current region.
- use_
caller_ boolcredentials Set to
true
to use Amazon Cognito credentials with this data source.- versioned bool
- table
Name String Name of the DynamoDB table.
- delta
Sync Property MapConfig - region String
AWS region of the DynamoDB table. Defaults to current region.
- use
Caller BooleanCredentials Set to
true
to use Amazon Cognito credentials with this data source.- versioned Boolean
DataSourceDynamodbConfigDeltaSyncConfig
- Delta
Sync stringTable Name - Base
Table intTtl - Delta
Sync intTable Ttl
- Delta
Sync stringTable Name - Base
Table intTtl - Delta
Sync intTable Ttl
- delta
Sync StringTable Name - base
Table IntegerTtl - delta
Sync IntegerTable Ttl
- delta
Sync stringTable Name - base
Table numberTtl - delta
Sync numberTable Ttl
- delta
Sync StringTable Name - base
Table NumberTtl - delta
Sync NumberTable Ttl
DataSourceElasticsearchConfig
DataSourceEventBridgeConfig
- Event
Bus stringArn ARN for the EventBridge bus.
- Event
Bus stringArn ARN for the EventBridge bus.
- event
Bus StringArn ARN for the EventBridge bus.
- event
Bus stringArn ARN for the EventBridge bus.
- event_
bus_ strarn ARN for the EventBridge bus.
- event
Bus StringArn ARN for the EventBridge bus.
DataSourceHttpConfig
- Endpoint string
HTTP URL.
- Data
Source Http Config Authorization Config Authorization configuration in case the HTTP endpoint requires authorization. See Authorization Config.
- Endpoint string
HTTP URL.
- Data
Source Http Config Authorization Config Authorization configuration in case the HTTP endpoint requires authorization. See Authorization Config.
- endpoint String
HTTP URL.
- Data
Source Http Config Authorization Config Authorization configuration in case the HTTP endpoint requires authorization. See Authorization Config.
- endpoint string
HTTP URL.
- Data
Source Http Config Authorization Config Authorization configuration in case the HTTP endpoint requires authorization. See Authorization Config.
- endpoint str
HTTP URL.
- Data
Source Http Config Authorization Config Authorization configuration in case the HTTP endpoint requires authorization. See Authorization Config.
- endpoint String
HTTP URL.
- Property Map
Authorization configuration in case the HTTP endpoint requires authorization. See Authorization Config.
DataSourceHttpConfigAuthorizationConfig
- string
Authorization type that the HTTP endpoint requires. Default values is
AWS_IAM
.- Aws
Iam DataConfig Source Http Config Authorization Config Aws Iam Config Identity and Access Management (IAM) settings. See AWS IAM Config.
- string
Authorization type that the HTTP endpoint requires. Default values is
AWS_IAM
.- Aws
Iam DataConfig Source Http Config Authorization Config Aws Iam Config Identity and Access Management (IAM) settings. See AWS IAM Config.
- String
Authorization type that the HTTP endpoint requires. Default values is
AWS_IAM
.- aws
Iam DataConfig Source Http Config Authorization Config Aws Iam Config Identity and Access Management (IAM) settings. See AWS IAM Config.
- string
Authorization type that the HTTP endpoint requires. Default values is
AWS_IAM
.- aws
Iam DataConfig Source Http Config Authorization Config Aws Iam Config Identity and Access Management (IAM) settings. See AWS IAM Config.
- str
Authorization type that the HTTP endpoint requires. Default values is
AWS_IAM
.- aws_
iam_ Dataconfig Source Http Config Authorization Config Aws Iam Config Identity and Access Management (IAM) settings. See AWS IAM Config.
- String
Authorization type that the HTTP endpoint requires. Default values is
AWS_IAM
.- aws
Iam Property MapConfig Identity and Access Management (IAM) settings. See AWS IAM Config.
DataSourceHttpConfigAuthorizationConfigAwsIamConfig
- Signing
Region string Signing Amazon Web Services Region for IAM authorization.
- Signing
Service stringName Signing service name for IAM authorization.
- Signing
Region string Signing Amazon Web Services Region for IAM authorization.
- Signing
Service stringName Signing service name for IAM authorization.
- signing
Region String Signing Amazon Web Services Region for IAM authorization.
- signing
Service StringName Signing service name for IAM authorization.
- signing
Region string Signing Amazon Web Services Region for IAM authorization.
- signing
Service stringName Signing service name for IAM authorization.
- signing_
region str Signing Amazon Web Services Region for IAM authorization.
- signing_
service_ strname Signing service name for IAM authorization.
- signing
Region String Signing Amazon Web Services Region for IAM authorization.
- signing
Service StringName Signing service name for IAM authorization.
DataSourceLambdaConfig
- Function
Arn string ARN for the Lambda function.
- Function
Arn string ARN for the Lambda function.
- function
Arn String ARN for the Lambda function.
- function
Arn string ARN for the Lambda function.
- function_
arn str ARN for the Lambda function.
- function
Arn String ARN for the Lambda function.
DataSourceOpensearchserviceConfig
DataSourceRelationalDatabaseConfig
- Http
Endpoint DataConfig Source Relational Database Config Http Endpoint Config Amazon RDS HTTP endpoint configuration. See HTTP Endpoint Config.
- Source
Type string Source type for the relational database. Valid values:
RDS_HTTP_ENDPOINT
.
- Http
Endpoint DataConfig Source Relational Database Config Http Endpoint Config Amazon RDS HTTP endpoint configuration. See HTTP Endpoint Config.
- Source
Type string Source type for the relational database. Valid values:
RDS_HTTP_ENDPOINT
.
- http
Endpoint DataConfig Source Relational Database Config Http Endpoint Config Amazon RDS HTTP endpoint configuration. See HTTP Endpoint Config.
- source
Type String Source type for the relational database. Valid values:
RDS_HTTP_ENDPOINT
.
- http
Endpoint DataConfig Source Relational Database Config Http Endpoint Config Amazon RDS HTTP endpoint configuration. See HTTP Endpoint Config.
- source
Type string Source type for the relational database. Valid values:
RDS_HTTP_ENDPOINT
.
- http_
endpoint_ Dataconfig Source Relational Database Config Http Endpoint Config Amazon RDS HTTP endpoint configuration. See HTTP Endpoint Config.
- source_
type str Source type for the relational database. Valid values:
RDS_HTTP_ENDPOINT
.
- http
Endpoint Property MapConfig Amazon RDS HTTP endpoint configuration. See HTTP Endpoint Config.
- source
Type String Source type for the relational database. Valid values:
RDS_HTTP_ENDPOINT
.
DataSourceRelationalDatabaseConfigHttpEndpointConfig
- Aws
Secret stringStore Arn AWS secret store ARN for database credentials.
- Db
Cluster stringIdentifier Amazon RDS cluster identifier.
- Database
Name string Logical database name.
- Region string
AWS Region for RDS HTTP endpoint. Defaults to current region.
- Schema string
Logical schema name.
- Aws
Secret stringStore Arn AWS secret store ARN for database credentials.
- Db
Cluster stringIdentifier Amazon RDS cluster identifier.
- Database
Name string Logical database name.
- Region string
AWS Region for RDS HTTP endpoint. Defaults to current region.
- Schema string
Logical schema name.
- aws
Secret StringStore Arn AWS secret store ARN for database credentials.
- db
Cluster StringIdentifier Amazon RDS cluster identifier.
- database
Name String Logical database name.
- region String
AWS Region for RDS HTTP endpoint. Defaults to current region.
- schema String
Logical schema name.
- aws
Secret stringStore Arn AWS secret store ARN for database credentials.
- db
Cluster stringIdentifier Amazon RDS cluster identifier.
- database
Name string Logical database name.
- region string
AWS Region for RDS HTTP endpoint. Defaults to current region.
- schema string
Logical schema name.
- aws_
secret_ strstore_ arn AWS secret store ARN for database credentials.
- db_
cluster_ stridentifier Amazon RDS cluster identifier.
- database_
name str Logical database name.
- region str
AWS Region for RDS HTTP endpoint. Defaults to current region.
- schema str
Logical schema name.
- aws
Secret StringStore Arn AWS secret store ARN for database credentials.
- db
Cluster StringIdentifier Amazon RDS cluster identifier.
- database
Name String Logical database name.
- region String
AWS Region for RDS HTTP endpoint. Defaults to current region.
- schema String
Logical schema name.
Import
aws_appsync_datasource
can be imported with their api_id
, a hyphen, and name
, e.g.,
$ pulumi import aws:appsync/dataSource:DataSource example abcdef123456-example
Package Details
- Repository
- AWS Classic pulumi/pulumi-aws
- License
- Apache-2.0
- Notes
This Pulumi package is based on the
aws
Terraform Provider.