Skip to content
v2.276.0

ChannelNamespaceProps Struct ​

Additional property for an AppSync channel namespace for an Event API reference.

Example ​

ts
declare const api: appsync.EventApi;

new appsync.ChannelNamespace(this, 'Namespace', {
  api,
  authorizationConfig: {
    // Override publishing authorization to API Key
    publishAuthModeTypes: [appsync.AppSyncAuthorizationType.API_KEY],
    // Override subscribing authorization to Lambda
    subscribeAuthModeTypes: [appsync.AppSyncAuthorizationType.LAMBDA],
  },
});
python
# api: appsync.EventApi


appsync.ChannelNamespace(self, "Namespace",
    api=api,
    authorization_config=appsync.NamespaceAuthConfig(
        # Override publishing authorization to API Key
        publish_auth_mode_types=[appsync.AppSyncAuthorizationType.API_KEY],
        # Override subscribing authorization to Lambda
        subscribe_auth_mode_types=[appsync.AppSyncAuthorizationType.LAMBDA]
    )
)
java
EventApi api;


ChannelNamespace.Builder.create(this, "Namespace")
        .api(api)
        .authorizationConfig(NamespaceAuthConfig.builder()
                // Override publishing authorization to API Key
                .publishAuthModeTypes(List.of(AppSyncAuthorizationType.API_KEY))
                // Override subscribing authorization to Lambda
                .subscribeAuthModeTypes(List.of(AppSyncAuthorizationType.LAMBDA))
                .build())
        .build();
csharp
// Install: dotnet add package Amazon.CDK.Lib
EventApi api;


new ChannelNamespace(this, "Namespace", new ChannelNamespaceProps {
    Api = api,
    AuthorizationConfig = new NamespaceAuthConfig {
        // Override publishing authorization to API Key
        PublishAuthModeTypes = new [] { AppSyncAuthorizationType.API_KEY },
        // Override subscribing authorization to Lambda
        SubscribeAuthModeTypes = new [] { AppSyncAuthorizationType.LAMBDA }
    }
});
go
// Install: go get github.com/aws/aws-cdk-go/awscdk/v2
var api EventApi


appsync.NewChannelNamespace(this, jsii.String("Namespace"), &ChannelNamespaceProps{
	Api: Api,
	AuthorizationConfig: &NamespaceAuthConfig{
		// Override publishing authorization to API Key
		PublishAuthModeTypes: []AppSyncAuthorizationType{
			appsync.AppSyncAuthorizationType_API_KEY,
		},
		// Override subscribing authorization to Lambda
		SubscribeAuthModeTypes: []AppSyncAuthorizationType{
			appsync.AppSyncAuthorizationType_LAMBDA,
		},
	},
})

Properties ​

The API this channel namespace is associated with.
authorizationConfigoptionalNamespaceAuthConfigauthorization_configoptionalNamespaceAuthConfigauthorizationConfigoptionalNamespaceAuthConfigAuthorizationConfigoptionalNamespaceAuthConfigAuthorizationConfigoptionalNamespaceAuthConfig#
Authorization config for channel namespace.

Default: defaults to Event API default auth config

channelNamespaceNameoptionalstringchannel_namespace_nameoptionalstrchannelNamespaceNameoptionalStringChannelNamespaceNameoptionalstringChannelNamespaceNameoptional*string#
the name of the channel namespace.

Default: the construct's id will be used

codeoptionalCodecodeoptionalCodecodeoptionalCodeCodeoptionalCodeCodeoptionalCode#
The Event Handler code.

Default: no code is used

publishHandlerConfigoptionalHandlerConfigpublish_handler_configoptionalHandlerConfigpublishHandlerConfigoptionalHandlerConfigPublishHandlerConfigoptionalHandlerConfigPublishHandlerConfigoptionalHandlerConfig#
onPublish handler config.

Default: no handler config

subscribeHandlerConfigoptionalHandlerConfigsubscribe_handler_configoptionalHandlerConfigsubscribeHandlerConfigoptionalHandlerConfigSubscribeHandlerConfigoptionalHandlerConfigSubscribeHandlerConfigoptionalHandlerConfig#
onSubscribe handler config.

Default: no handler config