:doc:`Connect <../../connect>` / Client / describe_rule

*************
describe_rule
*************



.. py:method:: Connect.Client.describe_rule(**kwargs)

  

  Describes a rule for the specified Amazon Connect instance.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/connect-2017-08-08/DescribeRule>`_  


  **Request Syntax**
  ::

    response = client.describe_rule(
        InstanceId='string',
        RuleId='string'
    )
    
  :type InstanceId: string
  :param InstanceId: **[REQUIRED]** 

    The identifier of the Amazon Connect instance. You can `find the instance ID <https://docs.aws.amazon.com/connect/latest/adminguide/find-instance-arn.html>`__ in the Amazon Resource Name (ARN) of the instance.

    

  
  :type RuleId: string
  :param RuleId: **[REQUIRED]** 

    A unique identifier for the rule.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'Rule': {
              'Name': 'string',
              'RuleId': 'string',
              'RuleArn': 'string',
              'TriggerEventSource': {
                  'EventSourceName': 'OnPostCallAnalysisAvailable'|'OnRealTimeCallAnalysisAvailable'|'OnRealTimeChatAnalysisAvailable'|'OnPostChatAnalysisAvailable'|'OnZendeskTicketCreate'|'OnZendeskTicketStatusUpdate'|'OnSalesforceCaseCreate'|'OnContactEvaluationSubmit'|'OnMetricDataUpdate'|'OnCaseCreate'|'OnCaseUpdate'|'OnSlaBreach',
                  'IntegrationAssociationId': 'string'
              },
              'Function': 'string',
              'Actions': [
                  {
                      'ActionType': 'CREATE_TASK'|'ASSIGN_CONTACT_CATEGORY'|'GENERATE_EVENTBRIDGE_EVENT'|'SEND_NOTIFICATION'|'CREATE_CASE'|'UPDATE_CASE'|'ASSIGN_SLA'|'END_ASSOCIATED_TASKS'|'SUBMIT_AUTO_EVALUATION',
                      'TaskAction': {
                          'Name': 'string',
                          'Description': 'string',
                          'ContactFlowId': 'string',
                          'References': {
                              'string': {
                                  'Value': 'string',
                                  'Type': 'URL'|'ATTACHMENT'|'CONTACT_ANALYSIS'|'NUMBER'|'STRING'|'DATE'|'EMAIL'|'EMAIL_MESSAGE'|'EMAIL_MESSAGE_PLAIN_TEXT',
                                  'Status': 'AVAILABLE'|'DELETED'|'APPROVED'|'REJECTED'|'PROCESSING'|'FAILED',
                                  'Arn': 'string',
                                  'StatusReason': 'string'
                              }
                          }
                      },
                      'EventBridgeAction': {
                          'Name': 'string'
                      },
                      'AssignContactCategoryAction': {},
                      'SendNotificationAction': {
                          'DeliveryMethod': 'EMAIL',
                          'Subject': 'string',
                          'Content': 'string',
                          'ContentType': 'PLAIN_TEXT',
                          'Recipient': {
                              'UserTags': {
                                  'string': 'string'
                              },
                              'UserIds': [
                                  'string',
                              ]
                          },
                          'Exclusion': {
                              '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'
                                  }
                              },
                          ]
                      },
                      'AssignSlaAction': {
                          'SlaAssignmentType': 'CASES',
                          'CaseSlaConfiguration': {
                              'Name': 'string',
                              'Type': 'CaseField',
                              'FieldId': 'string',
                              'TargetFieldValues': [
                                  {
                                      'BooleanValue': True|False,
                                      'DoubleValue': 123.0,
                                      'EmptyValue': {},
                                      'StringValue': 'string'
                                  },
                              ],
                              'TargetSlaMinutes': 123
                          }
                      },
                      'EndAssociatedTasksAction': {},
                      'SubmitAutoEvaluationAction': {
                          'EvaluationFormId': 'string'
                      }
                  },
              ],
              'PublishStatus': 'DRAFT'|'PUBLISHED',
              'CreatedTime': datetime(2015, 1, 1),
              'LastUpdatedTime': datetime(2015, 1, 1),
              'LastUpdatedBy': 'string',
              'Tags': {
                  'string': 'string'
              }
          }
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **Rule** *(dict) --* 

        Information about the rule.

        
        

        - **Name** *(string) --* 

          The name of the rule.

          
        

        - **RuleId** *(string) --* 

          A unique identifier for the rule.

          
        

        - **RuleArn** *(string) --* 

          The Amazon Resource Name (ARN) of the rule.

          
        

        - **TriggerEventSource** *(dict) --* 

          The event source to trigger the rule.

          
          

          - **EventSourceName** *(string) --* 

            The name of the event source.

            
          

          - **IntegrationAssociationId** *(string) --* 

            The identifier for the integration association.

            
      
        

        - **Function** *(string) --* 

          The conditions of the rule.

          
        

        - **Actions** *(list) --* 

          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) --* 

              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) --* 

                The name. Supports variable injection. For more information, see `JSONPath reference <https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html>`__ in the *Amazon Connect Administrators Guide*.

                
              

              - **Description** *(string) --* 

                The description. Supports variable injection. For more information, see `JSONPath reference <https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html>`__ in the *Amazon Connect Administrators Guide*.

                
              

              - **ContactFlowId** *(string) --* 

                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) --* 

                      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) --* 

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

                      
                    

                    - **Status** *(string) --* 

                      Status of the attachment reference type.

                      
                    

                    - **Arn** *(string) --* 

                      The Amazon Resource Name (ARN) of the reference

                      
                    

                    - **StatusReason** *(string) --* 

                      Relevant details why the reference was not successfully created.

                      
                
            
          
          
            

            - **EventBridgeAction** *(dict) --* 

              Information about the EventBridge action.

               

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

              
              

              - **Name** *(string) --* 

                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) --* 

                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 <https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html>`__ in the *Amazon Connect Administrators Guide*.

                
              

              - **Content** *(string) --* 

                Notification content. Supports variable injection. For more information, see `JSONPath reference <https://docs.aws.amazon.com/connect/latest/adminguide/contact-lens-variable-injection.html>`__ in the *Amazon Connect Administrators Guide*.

                
              

              - **ContentType** *(string) --* 

                Content type format.

                
              

              - **Recipient** *(dict) --* 

                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. Supports variable injection of ``$.ContactLens.ContactEvaluation.Agent.AgentId`` for ``OnContactEvaluationSubmit`` event source.

                  
                  

                  - *(string) --* 
              
            
              

              - **Exclusion** *(dict) --* 

                Recipients to exclude from notification.

                
                

                - **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. Supports variable injection of ``$.ContactLens.ContactEvaluation.Agent.AgentId`` for ``OnContactEvaluationSubmit`` event source.

                  
                  

                  - *(string) --* 
              
            
          
            

            - **CreateCaseAction** *(dict) --* 

              Information about the create case action.

               

              Supported only for ``TriggerEventSource`` values: ``OnPostCallAnalysisAvailable`` | ``OnPostChatAnalysisAvailable``.

              
              

              - **Fields** *(list) --* 

                An array of objects with ``Field ID`` and ``Value`` data.

                
                

                - *(dict) --* 

                  Object for case field values.

                  
                  

                  - **Id** *(string) --* 

                    Unique identifier of a field.

                    
                  

                  - **Value** *(dict) --* 

                    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) --* 

                A unique identifier of a template.

                
          
            

            - **UpdateCaseAction** *(dict) --* 

              Information about the update case action.

               

              Supported only for ``TriggerEventSource`` values: ``OnCaseCreate`` | ``OnCaseUpdate``.

              
              

              - **Fields** *(list) --* 

                An array of objects with ``Field ID`` and Value data.

                
                

                - *(dict) --* 

                  Object for case field values.

                  
                  

                  - **Id** *(string) --* 

                    Unique identifier of a field.

                    
                  

                  - **Value** *(dict) --* 

                    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.

                      
                
              
            
          
            

            - **AssignSlaAction** *(dict) --* 

              Information about the assign SLA action.

              
              

              - **SlaAssignmentType** *(string) --* 

                Type of SLA assignment.

                
              

              - **CaseSlaConfiguration** *(dict) --* 

                The SLA configuration for Case SLA Assignment.

                
                

                - **Name** *(string) --* 

                  Name of an SLA.

                  
                

                - **Type** *(string) --* 

                  Type of SLA for Case SlaAssignmentType.

                  
                

                - **FieldId** *(string) --* 

                  Unique identifier of a Case field.

                  
                

                - **TargetFieldValues** *(list) --* 

                  Represents a list of target field values for the fieldId specified in CaseSlaConfiguration. The SLA is considered met if any one of these target field values matches the actual field value.

                  
                  

                  - *(dict) --* 

                    Object to store union of Field values.

                    
                    

                    - **BooleanValue** *(boolean) --* 

                      A Boolean number value type.

                      
                    

                    - **DoubleValue** *(float) --* 

                      A Double number value type.

                      
                    

                    - **EmptyValue** *(dict) --* 

                      An empty value.

                      
                  
                    

                    - **StringValue** *(string) --* 

                      String value type.

                      
                
              
                

                - **TargetSlaMinutes** *(integer) --* 

                  Target duration in minutes within which an SLA should be completed.

                  
            
          
            

            - **EndAssociatedTasksAction** *(dict) --* 

              Information about the end associated tasks action.

               

              Supported only for ``TriggerEventSource`` values: ``OnCaseUpdate``.

              
          
            

            - **SubmitAutoEvaluationAction** *(dict) --* 

              Information about the submit automated evaluation action.

              
              

              - **EvaluationFormId** *(string) --* 

                The identifier of the auto-evaluation enabled form.

                
          
        
      
        

        - **PublishStatus** *(string) --* 

          The publish status of the rule.

          
        

        - **CreatedTime** *(datetime) --* 

          The timestamp for when the rule was created.

          
        

        - **LastUpdatedTime** *(datetime) --* 

          The timestamp for the when the rule was last updated.

          
        

        - **LastUpdatedBy** *(string) --* 

          The Amazon Resource Name (ARN) of the user who last updated the rule.

          
        

        - **Tags** *(dict) --* 

          The tags used to organize, track, or control access for this resource. For example, { "Tags": {"key1":"value1", "key2":"value2"} }.

          
          

          - *(string) --* 
            

            - *(string) --* 
      
    
    
  
  **Exceptions**
  
  *   :py:class:`Connect.Client.exceptions.InvalidRequestException`

  
  *   :py:class:`Connect.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`Connect.Client.exceptions.InternalServiceException`

  
  *   :py:class:`Connect.Client.exceptions.ThrottlingException`

  
  *   :py:class:`Connect.Client.exceptions.AccessDeniedException`

  