Connect / Client / create_rule

create_rule#

Connect.Client.create_rule(**kwargs)#

Creates a rule for the specified Amazon Connect instance.

Use the Rules Function language to code conditions for the rule.

See also: AWS API Documentation

Request Syntax

response = client.create_rule(
    InstanceId='string',
    Name='string',
    TriggerEventSource={
        'EventSourceName': 'OnPostCallAnalysisAvailable'|'OnRealTimeCallAnalysisAvailable'|'OnRealTimeChatAnalysisAvailable'|'OnPostChatAnalysisAvailable'|'OnZendeskTicketCreate'|'OnZendeskTicketStatusUpdate'|'OnSalesforceCaseCreate'|'OnContactEvaluationSubmit'|'OnMetricDataUpdate'|'OnCaseCreate'|'OnCaseUpdate',
        'IntegrationAssociationId': 'string'
    },
    Function='string',
    Actions=[
        {
            'ActionType': 'CREATE_TASK'|'ASSIGN_CONTACT_CATEGORY'|'GENERATE_EVENTBRIDGE_EVENT'|'SEND_NOTIFICATION'|'CREATE_CASE'|'UPDATE_CASE'|'END_ASSOCIATED_TASKS',
            'TaskAction': {
                'Name': 'string',
                'Description': 'string',
                'ContactFlowId': 'string',
                'References': {
                    'string': {
                        'Value': 'string',
                        'Type': 'URL'|'ATTACHMENT'|'NUMBER'|'STRING'|'DATE'|'EMAIL'
                    }
                }
            },
            'EventBridgeAction': {
                'Name': 'string'
            },
            'AssignContactCategoryAction': {}
            ,
            'SendNotificationAction': {
                'DeliveryMethod': 'EMAIL',
                'Subject': 'string',
                'Content': 'string',
                'ContentType': 'PLAIN_TEXT',
                'Recipient': {
                    'UserTags': {
                        'string': 'string'
                    },
                    'UserIds': [
                        'string',
                    ]
                }
            },
            'CreateCaseAction': {
                'Fields': [
                    {
                        'Id': 'string',
                        'Value': {
                            'BooleanValue': True|False,
                            'DoubleValue': 123.0,
                            'EmptyValue': {}
                            ,
                            'StringValue': 'string'
                        }
                    },
                ],
                'TemplateId': 'string'
            },
            'UpdateCaseAction': {
                'Fields': [
                    {
                        'Id': 'string',
                        'Value': {
                            'BooleanValue': True|False,
                            'DoubleValue': 123.0,
                            'EmptyValue': {}
                            ,
                            'StringValue': 'string'
                        }
                    },
                ]
            },
            'EndAssociatedTasksAction': {}

        },
    ],
    PublishStatus='DRAFT'|'PUBLISHED',
    ClientToken='string'
)
Parameters:
  • InstanceId (string) –

    [REQUIRED]

    The identifier of the Amazon Connect instance. You can find the instance ID in the Amazon Resource Name (ARN) of the instance.

  • Name (string) –

    [REQUIRED]

    A unique name for the rule.

  • TriggerEventSource (dict) –

    [REQUIRED]

    The event source to trigger the rule.

    • EventSourceName (string) – [REQUIRED]

      The name of the event source.

    • IntegrationAssociationId (string) –

      The identifier for the integration association.

  • Function (string) –

    [REQUIRED]

    The conditions of the rule.

  • Actions (list) –

    [REQUIRED]

    A list of actions to be run when the rule is triggered.

    • (dict) –

      Information about the action to be performed when a rule is triggered.

      • ActionType (string) – [REQUIRED]

        The type of action that creates a rule.

      • TaskAction (dict) –

        Information about the task action. This field is required if TriggerEventSource is one of the following values: OnZendeskTicketCreate | OnZendeskTicketStatusUpdate | OnSalesforceCaseCreate

        • Name (string) – [REQUIRED]

          The name. Supports variable injection. For more information, see JSONPath reference in the Amazon Connect Administrators Guide.

        • Description (string) –

          The description. Supports variable injection. For more information, see JSONPath reference in the Amazon Connect Administrators Guide.

        • ContactFlowId (string) – [REQUIRED]

          The identifier of the flow.

        • References (dict) –

          Information about the reference when the referenceType is URL. Otherwise, null. (Supports variable injection in the Value field.)

          • (string) –

            • (dict) –

              Well-formed data on a contact, used by agents to complete a contact request. You can have up to 4,096 UTF-8 bytes across all references for a contact.

              • Value (string) – [REQUIRED]

                A valid value for the reference. For example, for a URL reference, a formatted URL that is displayed to an agent in the Contact Control Panel (CCP).

              • Type (string) – [REQUIRED]

                The type of the reference. DATE must be of type Epoch timestamp.

      • EventBridgeAction (dict) –

        Information about the EventBridge action.

        Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnRealTimeChatAnalysisAvailable | OnPostChatAnalysisAvailable | OnContactEvaluationSubmit | OnMetricDataUpdate

        • Name (string) – [REQUIRED]

          The name.

      • AssignContactCategoryAction (dict) –

        Information about the contact category action.

        Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnRealTimeChatAnalysisAvailable | OnPostChatAnalysisAvailable | OnZendeskTicketCreate | OnZendeskTicketStatusUpdate | OnSalesforceCaseCreate

      • SendNotificationAction (dict) –

        Information about the send notification action.

        Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable | OnRealTimeCallAnalysisAvailable | OnRealTimeChatAnalysisAvailable | OnPostChatAnalysisAvailable | OnContactEvaluationSubmit | OnMetricDataUpdate

        • DeliveryMethod (string) – [REQUIRED]

          Notification delivery method.

        • Subject (string) –

          The subject of the email if the delivery method is EMAIL. Supports variable injection. For more information, see JSONPath reference in the Amazon Connect Administrators Guide.

        • Content (string) – [REQUIRED]

          Notification content. Supports variable injection. For more information, see JSONPath reference in the Amazon Connect Administrators Guide.

        • ContentType (string) – [REQUIRED]

          Content type format.

        • Recipient (dict) – [REQUIRED]

          Notification recipient.

          • UserTags (dict) –

            The tags used to organize, track, or control access for this resource. For example, { “Tags”: {“key1”:”value1”, “key2”:”value2”} }. Amazon Connect users with the specified tags will be notified.

            • (string) –

              • (string) –

          • UserIds (list) –

            A list of user IDs.

            • (string) –

      • CreateCaseAction (dict) –

        Information about the create case action.

        Supported only for TriggerEventSource values: OnPostCallAnalysisAvailable | OnPostChatAnalysisAvailable.

        • Fields (list) – [REQUIRED]

          An array of objects with Field ID and Value data.

          • (dict) –

            Object for case field values.

            • Id (string) – [REQUIRED]

              Unique identifier of a field.

            • Value (dict) – [REQUIRED]

              Union of potential field value types.

              • BooleanValue (boolean) –

                A Boolean number value type.

              • DoubleValue (float) –

                a Double number value type.

              • EmptyValue (dict) –

                An empty value.

              • StringValue (string) –

                String value type.

        • TemplateId (string) – [REQUIRED]

          A unique identifier of a template.

      • UpdateCaseAction (dict) –

        Information about the update case action.

        Supported only for TriggerEventSource values: OnCaseCreate | OnCaseUpdate.

        • Fields (list) – [REQUIRED]

          An array of objects with Field ID and Value data.

          • (dict) –

            Object for case field values.

            • Id (string) – [REQUIRED]

              Unique identifier of a field.

            • Value (dict) – [REQUIRED]

              Union of potential field value types.

              • BooleanValue (boolean) –

                A Boolean number value type.

              • DoubleValue (float) –

                a Double number value type.

              • EmptyValue (dict) –

                An empty value.

              • StringValue (string) –

                String value type.

      • EndAssociatedTasksAction (dict) –

        Information about the end associated tasks action.

        Supported only for TriggerEventSource values: OnCaseUpdate.

  • PublishStatus (string) –

    [REQUIRED]

    The publish status of the rule.

  • ClientToken (string) –

    A unique, case-sensitive identifier that you provide to ensure the idempotency of the request. If not provided, the Amazon Web Services SDK populates this field. For more information about idempotency, see Making retries safe with idempotent APIs.

    This field is autopopulated if not provided.

Return type:

dict

Returns:

Response Syntax

{
    'RuleArn': 'string',
    'RuleId': 'string'
}

Response Structure

  • (dict) –

    • RuleArn (string) –

      The Amazon Resource Name (ARN) of the rule.

    • RuleId (string) –

      A unique identifier for the rule.

Exceptions

  • Connect.Client.exceptions.InvalidRequestException

  • Connect.Client.exceptions.ResourceNotFoundException

  • Connect.Client.exceptions.InternalServiceException

  • Connect.Client.exceptions.ThrottlingException

  • Connect.Client.exceptions.AccessDeniedException

  • Connect.Client.exceptions.ResourceConflictException

  • Connect.Client.exceptions.ServiceQuotaExceededException