# ChannelNamespaceOptions

Option configuration for channel namespace.

- Source: [`aws-appsync/lib/channel-namespace.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0/packages/aws-cdk-lib/aws-appsync/lib/channel-namespace.ts#L142)
- Type last changed: v2.193.0 · 30 Apr 2025

## Example

```ts
declare const api: appsync.EventApi;
declare const ddbDataSource: appsync.AppSyncDynamoDbDataSource;
declare const ebDataSource: appsync.AppSyncEventBridgeDataSource;

// DynamoDB data source for publish handler
api.addChannelNamespace('ddb-eb-ns', {
  code: appsync.Code.fromInline('/* event handler code here.*/'),
  publishHandlerConfig: {
    dataSource: ddbDataSource,
  },
  subscribeHandlerConfig: {
    dataSource: ebDataSource,
  },
});
```

## Properties

- `authorizationConfig`: [NamespaceAuthConfig](/cdk/api/v2/docs/aws-cdk-lib.aws_appsync.NamespaceAuthConfig.html) — Authorization config for channel namespace.

  **Default:** defaults to Event API default auth config

- `channelNamespaceName`: string — The Channel Namespace name.

  **Default:** the construct's id will be used

- `code`: [Code](/cdk/api/v2/docs/aws-cdk-lib.aws_appsync.Code.html) — The Event Handler code.

  **Default:** no code is used

- `publishHandlerConfig`: [HandlerConfig](/cdk/api/v2/docs/aws-cdk-lib.aws_appsync.HandlerConfig.html) — onPublish handler config.

  **Default:** no handler config

- `subscribeHandlerConfig`: [HandlerConfig](/cdk/api/v2/docs/aws-cdk-lib.aws_appsync.HandlerConfig.html) — onSubscribe handler config.

  **Default:** no handler config
