Interface IGraphqlApi
- All Superinterfaces:
software.constructs.IConstruct
,software.constructs.IDependable
,IResource
,software.amazon.jsii.JsiiSerializable
- All Known Subinterfaces:
IGraphqlApi.Jsii$Default
- All Known Implementing Classes:
GraphqlApi
,GraphqlApiBase
,IGraphqlApi.Jsii$Proxy
@Generated(value="jsii-pacmak/1.109.0 (build c221850)",
date="2025-03-14T03:24:53.595Z")
@Stability(Stable)
public interface IGraphqlApi
extends software.amazon.jsii.JsiiSerializable, IResource
Interface for GraphQL.
-
Nested Class Summary
Nested ClassesModifier and TypeInterfaceDescriptionstatic interface
Internal default implementation forIGraphqlApi
.static final class
A proxy class which represents a concrete javascript instance of this type. -
Method Summary
Modifier and TypeMethodDescriptionaddDynamoDbDataSource
(String id, ITable table) add a new DynamoDB data source to this API.addDynamoDbDataSource
(String id, ITable table, DataSourceOptions options) add a new DynamoDB data source to this API.addElasticsearchDataSource
(String id, IDomain domain) Deprecated.addElasticsearchDataSource
(String id, IDomain domain, DataSourceOptions options) Deprecated.useaddOpenSearchDataSource
addEventBridgeDataSource
(String id, IEventBus eventBus) Add an EventBridge data source to this api.addEventBridgeDataSource
(String id, IEventBus eventBus, DataSourceOptions options) Add an EventBridge data source to this api.addHttpDataSource
(String id, String endpoint) add a new http data source to this API.addHttpDataSource
(String id, String endpoint, HttpDataSourceOptions options) add a new http data source to this API.addLambdaDataSource
(String id, IFunction lambdaFunction) add a new Lambda data source to this API.addLambdaDataSource
(String id, IFunction lambdaFunction, DataSourceOptions options) add a new Lambda data source to this API.add a new dummy data source to this API.addNoneDataSource
(String id, DataSourceOptions options) add a new dummy data source to this API.addOpenSearchDataSource
(String id, IDomain domain) Add a new OpenSearch data source to this API.addOpenSearchDataSource
(String id, IDomain domain, DataSourceOptions options) Add a new OpenSearch data source to this API.addRdsDataSource
(String id, IServerlessCluster serverlessCluster, ISecret secretStore) add a new Rds data source to this API.addRdsDataSource
(String id, IServerlessCluster serverlessCluster, ISecret secretStore, String databaseName) add a new Rds data source to this API.addRdsDataSource
(String id, IServerlessCluster serverlessCluster, ISecret secretStore, String databaseName, DataSourceOptions options) add a new Rds data source to this API.addRdsDataSourceV2
(String id, IDatabaseCluster serverlessCluster, ISecret secretStore) add a new Rds Serverless V2 data source to this API.addRdsDataSourceV2
(String id, IDatabaseCluster serverlessCluster, ISecret secretStore, String databaseName) add a new Rds Serverless V2 data source to this API.addRdsDataSourceV2
(String id, IDatabaseCluster serverlessCluster, ISecret secretStore, String databaseName, DataSourceOptions options) add a new Rds Serverless V2 data source to this API.addSchemaDependency
(CfnResource construct) Add schema dependency if not imported.createResolver
(String id, ExtendedResolverProps props) creates a new resolver for this datasource and API using the given properties.getApiId()
an unique AWS AppSync GraphQL API identifier i.e.getArn()
the ARN of the API.The GraphQL endpoint ARN.getModes()
The Authorization Types for this GraphQL Api.the visibility of the API.grant
(IGrantable grantee, IamResource resources, @NotNull String... actions) Adds an IAM policy statement associated with this GraphQLApi to an IAM principal's policy.grantMutation
(IGrantable grantee, @NotNull String... fields) Adds an IAM policy statement for Mutation access to this GraphQLApi to an IAM principal's policy.grantQuery
(IGrantable grantee, @NotNull String... fields) Adds an IAM policy statement for Query access to this GraphQLApi to an IAM principal's policy.grantSubscription
(IGrantable grantee, @NotNull String... fields) Adds an IAM policy statement for Subscription access to this GraphQLApi to an IAM principal's policy.Methods inherited from interface software.constructs.IConstruct
getNode
Methods inherited from interface software.amazon.awscdk.IResource
applyRemovalPolicy, getEnv, getStack
Methods inherited from interface software.amazon.jsii.JsiiSerializable
$jsii$toJson
-
Method Details
-
getApiId
an unique AWS AppSync GraphQL API identifier i.e. 'lxz775lwdrgcndgz3nurvac7oa'. -
getArn
the ARN of the API. -
getGraphQLEndpointArn
The GraphQL endpoint ARN. -
getModes
The Authorization Types for this GraphQL Api. -
getVisibility
the visibility of the API. -
addDynamoDbDataSource
@Stability(Stable) @NotNull DynamoDbDataSource addDynamoDbDataSource(@NotNull String id, @NotNull ITable table, @Nullable DataSourceOptions options) add a new DynamoDB data source to this API.- Parameters:
id
- The data source's id. This parameter is required.table
- The DynamoDB table backing this data source. This parameter is required.options
- The optional configuration for this data source.
-
addDynamoDbDataSource
@Stability(Stable) @NotNull DynamoDbDataSource addDynamoDbDataSource(@NotNull String id, @NotNull ITable table) add a new DynamoDB data source to this API.- Parameters:
id
- The data source's id. This parameter is required.table
- The DynamoDB table backing this data source. This parameter is required.
-
addElasticsearchDataSource
@Stability(Deprecated) @Deprecated @NotNull ElasticsearchDataSource addElasticsearchDataSource(@NotNull String id, @NotNull IDomain domain, @Nullable DataSourceOptions options) Deprecated.- use
addOpenSearchDataSource
(deprecated) add a new elasticsearch data source to this API.- Parameters:
id
- The data source's id. This parameter is required.domain
- The elasticsearch domain for this data source. This parameter is required.options
- The optional configuration for this data source.
- use
-
addElasticsearchDataSource
@Stability(Deprecated) @Deprecated @NotNull ElasticsearchDataSource addElasticsearchDataSource(@NotNull String id, @NotNull IDomain domain) Deprecated.- use
addOpenSearchDataSource
(deprecated) add a new elasticsearch data source to this API.- Parameters:
id
- The data source's id. This parameter is required.domain
- The elasticsearch domain for this data source. This parameter is required.
- use
-
addEventBridgeDataSource
@Stability(Stable) @NotNull EventBridgeDataSource addEventBridgeDataSource(@NotNull String id, @NotNull IEventBus eventBus, @Nullable DataSourceOptions options) Add an EventBridge data source to this api.- Parameters:
id
- The data source's id. This parameter is required.eventBus
- The EventBridge EventBus on which to put events. This parameter is required.options
- The optional configuration for this data source.
-
addEventBridgeDataSource
@Stability(Stable) @NotNull EventBridgeDataSource addEventBridgeDataSource(@NotNull String id, @NotNull IEventBus eventBus) Add an EventBridge data source to this api.- Parameters:
id
- The data source's id. This parameter is required.eventBus
- The EventBridge EventBus on which to put events. This parameter is required.
-
addHttpDataSource
@Stability(Stable) @NotNull HttpDataSource addHttpDataSource(@NotNull String id, @NotNull String endpoint, @Nullable HttpDataSourceOptions options) add a new http data source to this API.- Parameters:
id
- The data source's id. This parameter is required.endpoint
- The http endpoint. This parameter is required.options
- The optional configuration for this data source.
-
addHttpDataSource
@Stability(Stable) @NotNull HttpDataSource addHttpDataSource(@NotNull String id, @NotNull String endpoint) add a new http data source to this API.- Parameters:
id
- The data source's id. This parameter is required.endpoint
- The http endpoint. This parameter is required.
-
addLambdaDataSource
@Stability(Stable) @NotNull LambdaDataSource addLambdaDataSource(@NotNull String id, @NotNull IFunction lambdaFunction, @Nullable DataSourceOptions options) add a new Lambda data source to this API.- Parameters:
id
- The data source's id. This parameter is required.lambdaFunction
- The Lambda function to call to interact with this data source. This parameter is required.options
- The optional configuration for this data source.
-
addLambdaDataSource
@Stability(Stable) @NotNull LambdaDataSource addLambdaDataSource(@NotNull String id, @NotNull IFunction lambdaFunction) add a new Lambda data source to this API.- Parameters:
id
- The data source's id. This parameter is required.lambdaFunction
- The Lambda function to call to interact with this data source. This parameter is required.
-
addNoneDataSource
@Stability(Stable) @NotNull NoneDataSource addNoneDataSource(@NotNull String id, @Nullable DataSourceOptions options) add a new dummy data source to this API.Useful for pipeline resolvers and for backend changes that don't require a data source.
- Parameters:
id
- The data source's id. This parameter is required.options
- The optional configuration for this data source.
-
addNoneDataSource
add a new dummy data source to this API.Useful for pipeline resolvers and for backend changes that don't require a data source.
- Parameters:
id
- The data source's id. This parameter is required.
-
addOpenSearchDataSource
@Stability(Stable) @NotNull OpenSearchDataSource addOpenSearchDataSource(@NotNull String id, @NotNull IDomain domain, @Nullable DataSourceOptions options) Add a new OpenSearch data source to this API.- Parameters:
id
- The data source's id. This parameter is required.domain
- The OpenSearch domain for this data source. This parameter is required.options
- The optional configuration for this data source.
-
addOpenSearchDataSource
@Stability(Stable) @NotNull OpenSearchDataSource addOpenSearchDataSource(@NotNull String id, @NotNull IDomain domain) Add a new OpenSearch data source to this API.- Parameters:
id
- The data source's id. This parameter is required.domain
- The OpenSearch domain for this data source. This parameter is required.
-
addRdsDataSource
@Stability(Stable) @NotNull RdsDataSource addRdsDataSource(@NotNull String id, @NotNull IServerlessCluster serverlessCluster, @NotNull ISecret secretStore, @Nullable String databaseName, @Nullable DataSourceOptions options) add a new Rds data source to this API.- Parameters:
id
- The data source's id. This parameter is required.serverlessCluster
- The serverless cluster to interact with this data source. This parameter is required.secretStore
- The secret store that contains the username and password for the serverless cluster. This parameter is required.databaseName
- The optional name of the database to use within the cluster.options
- The optional configuration for this data source.
-
addRdsDataSource
@Stability(Stable) @NotNull RdsDataSource addRdsDataSource(@NotNull String id, @NotNull IServerlessCluster serverlessCluster, @NotNull ISecret secretStore, @Nullable String databaseName) add a new Rds data source to this API.- Parameters:
id
- The data source's id. This parameter is required.serverlessCluster
- The serverless cluster to interact with this data source. This parameter is required.secretStore
- The secret store that contains the username and password for the serverless cluster. This parameter is required.databaseName
- The optional name of the database to use within the cluster.
-
addRdsDataSource
@Stability(Stable) @NotNull RdsDataSource addRdsDataSource(@NotNull String id, @NotNull IServerlessCluster serverlessCluster, @NotNull ISecret secretStore) add a new Rds data source to this API.- Parameters:
id
- The data source's id. This parameter is required.serverlessCluster
- The serverless cluster to interact with this data source. This parameter is required.secretStore
- The secret store that contains the username and password for the serverless cluster. This parameter is required.
-
addRdsDataSourceV2
@Stability(Stable) @NotNull RdsDataSource addRdsDataSourceV2(@NotNull String id, @NotNull IDatabaseCluster serverlessCluster, @NotNull ISecret secretStore, @Nullable String databaseName, @Nullable DataSourceOptions options) add a new Rds Serverless V2 data source to this API.- Parameters:
id
- The data source's id. This parameter is required.serverlessCluster
- The serverless V2 cluster to interact with this data source. This parameter is required.secretStore
- The secret store that contains the username and password for the serverless cluster. This parameter is required.databaseName
- The optional name of the database to use within the cluster.options
- The optional configuration for this data source.
-
addRdsDataSourceV2
@Stability(Stable) @NotNull RdsDataSource addRdsDataSourceV2(@NotNull String id, @NotNull IDatabaseCluster serverlessCluster, @NotNull ISecret secretStore, @Nullable String databaseName) add a new Rds Serverless V2 data source to this API.- Parameters:
id
- The data source's id. This parameter is required.serverlessCluster
- The serverless V2 cluster to interact with this data source. This parameter is required.secretStore
- The secret store that contains the username and password for the serverless cluster. This parameter is required.databaseName
- The optional name of the database to use within the cluster.
-
addRdsDataSourceV2
@Stability(Stable) @NotNull RdsDataSource addRdsDataSourceV2(@NotNull String id, @NotNull IDatabaseCluster serverlessCluster, @NotNull ISecret secretStore) add a new Rds Serverless V2 data source to this API.- Parameters:
id
- The data source's id. This parameter is required.serverlessCluster
- The serverless V2 cluster to interact with this data source. This parameter is required.secretStore
- The secret store that contains the username and password for the serverless cluster. This parameter is required.
-
addSchemaDependency
Add schema dependency if not imported.- Parameters:
construct
- the dependee. This parameter is required.
-
createResolver
@Stability(Stable) @NotNull Resolver createResolver(@NotNull String id, @NotNull ExtendedResolverProps props) creates a new resolver for this datasource and API using the given properties.- Parameters:
id
- This parameter is required.props
- This parameter is required.
-
grant
@Stability(Stable) @NotNull Grant grant(@NotNull IGrantable grantee, @NotNull IamResource resources, @NotNull @NotNull String... actions) Adds an IAM policy statement associated with this GraphQLApi to an IAM principal's policy.- Parameters:
grantee
- The principal. This parameter is required.resources
- The set of resources to allow (i.e. ...:[region]:[accountId]:apis/GraphQLId/...). This parameter is required.actions
- The actions that should be granted to the principal (i.e. appsync:graphql ). This parameter is required.
-
grantMutation
@Stability(Stable) @NotNull Grant grantMutation(@NotNull IGrantable grantee, @NotNull @NotNull String... fields) Adds an IAM policy statement for Mutation access to this GraphQLApi to an IAM principal's policy.- Parameters:
grantee
- The principal. This parameter is required.fields
- The fields to grant access to that are Mutations (leave blank for all). This parameter is required.
-
grantQuery
@Stability(Stable) @NotNull Grant grantQuery(@NotNull IGrantable grantee, @NotNull @NotNull String... fields) Adds an IAM policy statement for Query access to this GraphQLApi to an IAM principal's policy.- Parameters:
grantee
- The principal. This parameter is required.fields
- The fields to grant access to that are Queries (leave blank for all). This parameter is required.
-
grantSubscription
@Stability(Stable) @NotNull Grant grantSubscription(@NotNull IGrantable grantee, @NotNull @NotNull String... fields) Adds an IAM policy statement for Subscription access to this GraphQLApi to an IAM principal's policy.- Parameters:
grantee
- The principal. This parameter is required.fields
- The fields to grant access to that are Subscriptions (leave blank for all). This parameter is required.
-
addOpenSearchDataSource