# GlueSchemaRegistry

Glue schema registry configuration for a Lambda event source.

Extends: GlueSchemaRegistry
Implements: ISchemaRegistry

- Source: [`aws-lambda-event-sources/lib/glue-schema-registry.ts`](https://github.com/aws/aws-cdk/blob/v2.275.0/packages/aws-cdk-lib/aws-lambda-event-sources/lib/glue-schema-registry.ts#L31)
- Type last changed: v2.202.0 · 20 Jun 2025

## Example

```ts
import { CfnRegistry } from 'aws-cdk-lib/aws-glue';
import { ManagedKafkaEventSource, GlueSchemaRegistry } from 'aws-cdk-lib/aws-lambda-event-sources';

// Your MSK cluster arn
declare const clusterArn: string;

// The Kafka topic you want to subscribe to
const topic = 'some-cool-topic';

// Your Glue Schema Registry
const glueRegistry = new CfnRegistry(this, 'Registry', {
  name: 'schema-registry',
  description: 'Schema registry for event source',
});

declare const myFunction: lambda.Function;
myFunction.addEventSource(new ManagedKafkaEventSource({
  clusterArn,
  topic,
  startingPosition: lambda.StartingPosition.TRIM_HORIZON,
  provisionedPollerConfig: {
    minimumPollers: 1,
    maximumPollers: 3,
  },
  schemaRegistryConfig: new GlueSchemaRegistry({
    schemaRegistry: glueRegistry,
    eventRecordFormat: lambda.EventRecordFormat.JSON,
    schemaValidationConfigs: [{ attribute: lambda.KafkaSchemaValidationAttribute.KEY }],
  }),
}));
```

## Initializer

```ts
new GlueSchemaRegistry(props: GlueSchemaRegistryProps)
```

## Methods

- `bind(_target: IEventSourceMapping, targetHandler: IFunction): KafkaSchemaRegistryConfig` — Returns a schema registry configuration.
