# CfnIntegrationProps

Properties for defining a `CfnIntegration`.

Extends: CfnIntegrationProps
Used as props by: CfnIntegration

- Source: Generated code
- Type last changed: v2.275.0 · 26 Oct 2026

## Example

```ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_cloudwatch as cloudwatch } from 'aws-cdk-lib';
const cfnIntegrationProps: cloudwatch.CfnIntegrationProps = {
  integrationType: 'integrationType',
  name: 'name',

  // the properties below are optional
  credential: {
    apiKeyCredential: {
      apiKeyValue: 'apiKeyValue',
    },
  },
  integrationAttributes: {
    integrationAttributesKey: 'integrationAttributes',
  },
  roleArn: 'roleArn',
  tags: [{
    key: 'key',
    value: 'value',
  }],
};
```

## Properties

- `credential`: [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [CfnIntegration.IntegrationCredentialProperty](/cdk/api/v2/docs/aws-cdk-lib.aws_cloudwatch.CfnIntegration.IntegrationCredentialProperty.html) — Write-only API-key credential material for the integration.

  Stored encrypted and never returned on read.

- `integrationAttributes`: [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | { [key: string]: string } — Type-specific configuration attributes (max 50 entries).

  EXTERNAL_AGENT requires 'catalogId'. On update, supplied attributes merge into the existing map; omitting a key does not remove it.

- `integrationType`: string (required) — The type of integration.

  Immutable after creation.

- `name`: string (required) — The customer-supplied name of the integration.

  Unique per account.

- `roleArn`: string — IAM role ARN the integration assumes.

  Required for AWS_INTEGRATION (a valid, service-assumable IAM role ARN). Not used by AWS_CONFIG_SLREC or EXTERNAL_AGENT.

- `tags`: [CfnIntegration.TagsItemsProperty](/cdk/api/v2/docs/aws-cdk-lib.aws_cloudwatch.CfnIntegration.TagsItemsProperty.html)[] — Tags associated with the integration.
