# CfnRuleProps

Properties for defining a `CfnRule`.

Extends: CfnRuleProps
Used as props by: CfnRule

- Source: Generated code
- Type last changed: v2.55.0 · 14 Dec 2022

## Example

```ts
// The code below shows an example of how to instantiate this type.
// The values are placeholders you should change.
import { aws_connect as connect } from 'aws-cdk-lib';

declare const assignContactCategoryActions: any;
declare const emptyValue: any;
declare const endAssociatedTasksActions: any;
const cfnRuleProps: connect.CfnRuleProps = {
  actions: {
    assignContactCategoryActions: [assignContactCategoryActions],
    assignSlaActions: [{
      caseSlaConfiguration: {
        name: 'name',
        targetSlaMinutes: 123,
        type: 'type',

        // the properties below are optional
        fieldId: 'fieldId',
        targetFieldValues: [{
          stringValue: 'stringValue',
        }],
      },
      slaAssignmentType: 'slaAssignmentType',
    }],
    createCaseActions: [{
      fields: [{
        id: 'id',
        value: {
          booleanValue: false,
          doubleValue: 123,
          emptyValue: emptyValue,
          stringValue: 'stringValue',
        },
      }],
      templateId: 'templateId',
    }],
    endAssociatedTasksActions: [endAssociatedTasksActions],
    eventBridgeActions: [{
      name: 'name',
    }],
    sendNotificationActions: [{
      content: 'content',
      contentType: 'contentType',
      deliveryMethod: 'deliveryMethod',
      recipient: {
        userArns: ['userArns'],
        userTags: {
          userTagsKey: 'userTags',
        },
      },

      // the properties below are optional
      exclusion: {
        userArns: ['userArns'],
        userTags: {
          userTagsKey: 'userTags',
        },
      },
      subject: 'subject',
    }],
    submitAutoEvaluationActions: [{
      evaluationFormArn: 'evaluationFormArn',
    }],
    taskActions: [{
      contactFlowArn: 'contactFlowArn',
      name: 'name',

      // the properties below are optional
      description: 'description',
      references: {
        referencesKey: {
          type: 'type',
          value: 'value',
        },
      },
    }],
    updateCaseActions: [{
      fields: [{
        id: 'id',
        value: {
          booleanValue: false,
          doubleValue: 123,
          emptyValue: emptyValue,
          stringValue: 'stringValue',
        },
      }],
    }],
  },
  function: 'function',
  instanceArn: 'instanceArn',
  name: 'name',
  publishStatus: 'publishStatus',
  triggerEventSource: {
    eventSourceName: 'eventSourceName',

    // the properties below are optional
    integrationAssociationArn: 'integrationAssociationArn',
  },

  // the properties below are optional
  tags: [{
    key: 'key',
    value: 'value',
  }],
};
```

## Properties

- `actions`: [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [CfnRule.ActionsProperty](/cdk/api/v2/docs/aws-cdk-lib.aws_connect.CfnRule.ActionsProperty.html) (required) — A list of actions to be run when the rule is triggered.

- `function`: string (required) — The conditions of the rule.

- `instanceArn`: string (required) — The Amazon Resource Name (ARN) of the instance.

- `name`: string (required) — The name of the rule.

- `publishStatus`: string (required) — The publish status of the rule.

  *Allowed values* : `DRAFT` | `PUBLISHED`

- `tags`: [CfnTag](/cdk/api/v2/docs/aws-cdk-lib.CfnTag.html)[] — The tags used to organize, track, or control access for this resource.

  For example, { "tags": {"key1":"value1", "key2":"value2"} }.

- `triggerEventSource`: [IResolvable](/cdk/api/v2/docs/aws-cdk-lib.IResolvable.html) | [CfnRule.RuleTriggerEventSourceProperty](/cdk/api/v2/docs/aws-cdk-lib.aws_connect.CfnRule.RuleTriggerEventSourceProperty.html) (required) — The event source to trigger the rule.
