class LambdaDataSource (construct)
| Language | Type name |
|---|---|
.NET | Amazon.CDK.AWS.AppSync.LambdaDataSource |
Go | github.com/aws/aws-cdk-go/awscdk/v2/awsappsync#LambdaDataSource |
Java | software.amazon.awscdk.services.appsync.LambdaDataSource |
Python | aws_cdk.aws_appsync.LambdaDataSource |
TypeScript (source) | aws-cdk-lib » aws_appsync » LambdaDataSource |
Implements
IConstruct, IDependable, IGrantable
An AppSync datasource backed by a Lambda function.
Example
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_appsync as appsync } from 'aws-cdk-lib';
import { aws_iam as iam } from 'aws-cdk-lib';
import { aws_lambda as lambda } from 'aws-cdk-lib';
import { aws_appsync as interfaces_appsync } from 'aws-cdk-lib/interfaces';
declare const function_: lambda.Function;
declare const graphQLApiRef: interfaces_appsync.IGraphQLApiRef;
declare const role: iam.Role;
const lambdaDataSource = new appsync.LambdaDataSource(this, 'MyLambdaDataSource', {
api: graphQLApiRef,
lambdaFunction: function_,
// the properties below are optional
description: 'description',
metricsConfig: appsync.DataSourceMetricsConfig.ENABLED,
name: 'name',
serviceRole: role,
});
Initializer
new LambdaDataSource(scope: Construct, id: string, props: LambdaDataSourceProps)
Parameters
- scope
Construct - id
string - props
LambdaData Source Props
Construct Props
| Name | Type | Description |
|---|---|---|
| api | IGraph | The API to attach this data source to. |
| lambda | IFunction | The Lambda function to call to interact with this data source. |
| description? | string | the description of the data source. |
| metrics | Data | Whether to enable enhanced metrics of the data source Value will be ignored, if enhancedMetricsConfig.dataSourceLevelMetricsBehavior on AppSync GraphqlApi construct is set to FULL_REQUEST_DATA_SOURCE_METRICS. |
| name? | string | The name of the data source. |
| service | IRole | The IAM service role to be assumed by AppSync to interact with the data source. |
api
Type:
IGraph
The API to attach this data source to.
lambdaFunction
Type:
IFunction
The Lambda function to call to interact with this data source.
description?
Type:
string
(optional, default: None)
the description of the data source.
metricsConfig?
Type:
Data
(optional, default: no metrics configuration)
Whether to enable enhanced metrics of the data source Value will be ignored, if enhancedMetricsConfig.dataSourceLevelMetricsBehavior on AppSync GraphqlApi construct is set to FULL_REQUEST_DATA_SOURCE_METRICS.
name?
Type:
string
(optional, default: id of data source)
The name of the data source.
serviceRole?
Type:
IRole
(optional, default: Create a new role)
The IAM service role to be assumed by AppSync to interact with the data source.
Properties
| Name | Type | Description |
|---|---|---|
| ds | Cfn | the underlying CFN data source resource. |
| grant | IPrincipal | the principal of the data source to be IGrantable. |
| name | string | the name of the data source. |
| node | Node | The tree node. |
| static PROPERTY_INJECTION_ID | string | Uniquely identifies this class. |
ds
Type:
Cfn
the underlying CFN data source resource.
grantPrincipal
Type:
IPrincipal
the principal of the data source to be IGrantable.
name
Type:
string
the name of the data source.
node
Type:
Node
The tree node.
static PROPERTY_INJECTION_ID
Type:
string
Uniquely identifies this class.
Methods
| Name | Description |
|---|---|
| create | creates a new appsync function for this datasource and API using the given properties. |
| create | creates a new resolver for this datasource and API using the given properties. |
| to | Returns a string representation of this construct. |
| with(...mixins) | Applies one or more mixins to this construct. |
createFunction(id, props)
public createFunction(id: string, props: BaseAppsyncFunctionProps): AppsyncFunction
Parameters
- id
string - props
BaseAppsync Function Props
Returns
creates a new appsync function for this datasource and API using the given properties.
createResolver(id, props)
public createResolver(id: string, props: BaseResolverProps): Resolver
Parameters
- id
string - props
BaseResolver Props
Returns
creates a new resolver for this datasource and API using the given properties.
toString()
public toString(): string
Returns
string
Returns a string representation of this construct.
with(...mixins)
public with(...mixins: IMixin[]): IConstruct
Parameters
- mixins
IMixin— The mixins to apply.
Returns
Applies one or more mixins to this construct.
Mixins are applied in order. The list of constructs is captured at the
start of the call, so constructs added by a mixin will not be visited.
Use multiple with() calls if subsequent mixins should apply to added
constructs.

.NET
Go
Java
Python
TypeScript (