2025/10/31 - Amazon Connect Cases - 4 updated api methods
Changes Added two new case rule types: Parent Child Field Options (restricts child field options based on parent field value) and Hidden (controls child field visibility based on parent field value). Both enable dynamic field behavior within templates.
{'caseRules': {'rule': {'fieldOptions': {'childFieldId': 'string',
                                         'parentChildFieldOptionsMappings': [{'childFieldOptionValues': ['string'],
                                                                              'parentFieldOptionValue': 'string'}],
                                         'parentFieldId': 'string'},
                        'hidden': {'conditions': [{'equalTo': {'operandOne': {'fieldId': 'string'},
                                                               'operandTwo': {'booleanValue': 'boolean',
                                                                              'doubleValue': 'double',
                                                                              'emptyValue': {},
                                                                              'stringValue': 'string'},
                                                               'result': 'boolean'},
                                                   'notEqualTo': {'operandOne': {'fieldId': 'string'},
                                                                  'operandTwo': {'booleanValue': 'boolean',
                                                                                 'doubleValue': 'double',
                                                                                 'emptyValue': {},
                                                                                 'stringValue': 'string'},
                                                                  'result': 'boolean'}}],
                                   'defaultValue': 'boolean'}}},
 'unprocessedCaseRules': ['string']}
      Gets a batch of case rules. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.
See also: AWS API Documentation
Request Syntax
client.batch_get_case_rule(
    domainId='string',
    caseRules=[
        {
            'id': 'string'
        },
    ]
)
string
[REQUIRED]
Unique identifier of a Cases domain.
list
[REQUIRED]
A list of case rule identifiers.
(dict) --
Object containing case rule identifier information.
id (string) -- [REQUIRED]
Unique identifier of a case rule.
dict
Response Syntax
{
    'caseRules': [
        {
            'caseRuleId': 'string',
            'name': 'string',
            'caseRuleArn': 'string',
            'rule': {
                'required': {
                    'defaultValue': True|False,
                    'conditions': [
                        {
                            'equalTo': {
                                'operandOne': {
                                    'fieldId': 'string'
                                },
                                'operandTwo': {
                                    'stringValue': 'string',
                                    'booleanValue': True|False,
                                    'doubleValue': 123.0,
                                    'emptyValue': {}
                                },
                                'result': True|False
                            },
                            'notEqualTo': {
                                'operandOne': {
                                    'fieldId': 'string'
                                },
                                'operandTwo': {
                                    'stringValue': 'string',
                                    'booleanValue': True|False,
                                    'doubleValue': 123.0,
                                    'emptyValue': {}
                                },
                                'result': True|False
                            }
                        },
                    ]
                },
                'fieldOptions': {
                    'parentFieldId': 'string',
                    'childFieldId': 'string',
                    'parentChildFieldOptionsMappings': [
                        {
                            'parentFieldOptionValue': 'string',
                            'childFieldOptionValues': [
                                'string',
                            ]
                        },
                    ]
                },
                'hidden': {
                    'defaultValue': True|False,
                    'conditions': [
                        {
                            'equalTo': {
                                'operandOne': {
                                    'fieldId': 'string'
                                },
                                'operandTwo': {
                                    'stringValue': 'string',
                                    'booleanValue': True|False,
                                    'doubleValue': 123.0,
                                    'emptyValue': {}
                                },
                                'result': True|False
                            },
                            'notEqualTo': {
                                'operandOne': {
                                    'fieldId': 'string'
                                },
                                'operandTwo': {
                                    'stringValue': 'string',
                                    'booleanValue': True|False,
                                    'doubleValue': 123.0,
                                    'emptyValue': {}
                                },
                                'result': True|False
                            }
                        },
                    ]
                }
            },
            'description': 'string',
            'deleted': True|False,
            'createdTime': datetime(2015, 1, 1),
            'lastModifiedTime': datetime(2015, 1, 1),
            'tags': {
                'string': 'string'
            }
        },
    ],
    'errors': [
        {
            'id': 'string',
            'errorCode': 'string',
            'message': 'string'
        },
    ],
    'unprocessedCaseRules': [
        'string',
    ]
}
Response Structure
(dict) --
caseRules (list) --
A list of detailed case rule information.
(dict) --
Detailed case rule information. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.
caseRuleId (string) --
Unique identifier of a case rule.
name (string) --
Name of the case rule.
caseRuleArn (string) --
The Amazon Resource Name (ARN) of the case rule.
rule (dict) --
Represents what rule type should take place, under what conditions.
required (dict) --
Required rule type, used to indicate whether a field is required.
defaultValue (boolean) --
The value of the rule (that is, whether the field is required) should none of the conditions evaluate to true.
conditions (list) --
List of conditions for the required rule; the first condition to evaluate to true dictates the value of the rule.
(dict) --
Boolean condition for a rule. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.
equalTo (dict) --
Tests that operandOne is equal to operandTwo.
operandOne (dict) --
Represents the left hand operand in the condition.
fieldId (string) --
The field ID that this operand should take the value of.
operandTwo (dict) --
Represents the right hand operand in the condition.
stringValue (string) --
String value type.
booleanValue (boolean) --
Boolean value type.
doubleValue (float) --
Double value type.
emptyValue (dict) --
Empty value type.
result (boolean) --
The value of the outer rule if the condition evaluates to true.
notEqualTo (dict) --
Tests that operandOne is not equal to operandTwo.
operandOne (dict) --
Represents the left hand operand in the condition.
fieldId (string) --
The field ID that this operand should take the value of.
operandTwo (dict) --
Represents the right hand operand in the condition.
stringValue (string) --
String value type.
booleanValue (boolean) --
Boolean value type.
doubleValue (float) --
Double value type.
emptyValue (dict) --
Empty value type.
result (boolean) --
The value of the outer rule if the condition evaluates to true.
fieldOptions (dict) --
Which options are available in a child field based on the selected value in a parent field.
parentFieldId (string) --
The identifier of the parent field that controls options.
childFieldId (string) --
The identifier of the child field whose options are controlled.
parentChildFieldOptionsMappings (list) --
A mapping between a parent field option value and child field option values.
(dict) --
A mapping between a parent field option value and child field option values.
parentFieldOptionValue (string) --
The value in the parent field.
childFieldOptionValues (list) --
A list of allowed values in the child field.
(string) --
hidden (dict) --
Whether a field is visible, based on values in other fields.
defaultValue (boolean) --
Whether the field is hidden when no conditions match.
conditions (list) --
A list of conditions that determine field visibility.
(dict) --
Boolean condition for a rule. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.
equalTo (dict) --
Tests that operandOne is equal to operandTwo.
operandOne (dict) --
Represents the left hand operand in the condition.
fieldId (string) --
The field ID that this operand should take the value of.
operandTwo (dict) --
Represents the right hand operand in the condition.
stringValue (string) --
String value type.
booleanValue (boolean) --
Boolean value type.
doubleValue (float) --
Double value type.
emptyValue (dict) --
Empty value type.
result (boolean) --
The value of the outer rule if the condition evaluates to true.
notEqualTo (dict) --
Tests that operandOne is not equal to operandTwo.
operandOne (dict) --
Represents the left hand operand in the condition.
fieldId (string) --
The field ID that this operand should take the value of.
operandTwo (dict) --
Represents the right hand operand in the condition.
stringValue (string) --
String value type.
booleanValue (boolean) --
Boolean value type.
doubleValue (float) --
Double value type.
emptyValue (dict) --
Empty value type.
result (boolean) --
The value of the outer rule if the condition evaluates to true.
description (string) --
Description of a case rule.
deleted (boolean) --
Indicates whether the resource has been deleted.
createdTime (datetime) --
Timestamp when the resource was created.
lastModifiedTime (datetime) --
Timestamp when the resource was created or last modified.
tags (dict) --
A map of of key-value pairs that represent tags on a resource. Tags are used to organize, track, or control access for this resource.
(string) --
(string) --
errors (list) --
A list of case rule errors.
(dict) --
Error for batch describe case rules API failure. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.
id (string) --
The case rule identifier that caused the error.
errorCode (string) --
Error code from getting a case rule.
message (string) --
Error message from getting a case rule.
unprocessedCaseRules (list) --
A list of unprocessed case rule identifiers.
(string) --
{'rule': {'fieldOptions': {'childFieldId': 'string',
                           'parentChildFieldOptionsMappings': [{'childFieldOptionValues': ['string'],
                                                                'parentFieldOptionValue': 'string'}],
                           'parentFieldId': 'string'},
          'hidden': {'conditions': [{'equalTo': {'operandOne': {'fieldId': 'string'},
                                                 'operandTwo': {'booleanValue': 'boolean',
                                                                'doubleValue': 'double',
                                                                'emptyValue': {},
                                                                'stringValue': 'string'},
                                                 'result': 'boolean'},
                                     'notEqualTo': {'operandOne': {'fieldId': 'string'},
                                                    'operandTwo': {'booleanValue': 'boolean',
                                                                   'doubleValue': 'double',
                                                                   'emptyValue': {},
                                                                   'stringValue': 'string'},
                                                    'result': 'boolean'}}],
                     'defaultValue': 'boolean'}}}
      Creates a new case rule. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.
See also: AWS API Documentation
Request Syntax
client.create_case_rule(
    domainId='string',
    name='string',
    description='string',
    rule={
        'required': {
            'defaultValue': True|False,
            'conditions': [
                {
                    'equalTo': {
                        'operandOne': {
                            'fieldId': 'string'
                        },
                        'operandTwo': {
                            'stringValue': 'string',
                            'booleanValue': True|False,
                            'doubleValue': 123.0,
                            'emptyValue': {}
                        },
                        'result': True|False
                    },
                    'notEqualTo': {
                        'operandOne': {
                            'fieldId': 'string'
                        },
                        'operandTwo': {
                            'stringValue': 'string',
                            'booleanValue': True|False,
                            'doubleValue': 123.0,
                            'emptyValue': {}
                        },
                        'result': True|False
                    }
                },
            ]
        },
        'fieldOptions': {
            'parentFieldId': 'string',
            'childFieldId': 'string',
            'parentChildFieldOptionsMappings': [
                {
                    'parentFieldOptionValue': 'string',
                    'childFieldOptionValues': [
                        'string',
                    ]
                },
            ]
        },
        'hidden': {
            'defaultValue': True|False,
            'conditions': [
                {
                    'equalTo': {
                        'operandOne': {
                            'fieldId': 'string'
                        },
                        'operandTwo': {
                            'stringValue': 'string',
                            'booleanValue': True|False,
                            'doubleValue': 123.0,
                            'emptyValue': {}
                        },
                        'result': True|False
                    },
                    'notEqualTo': {
                        'operandOne': {
                            'fieldId': 'string'
                        },
                        'operandTwo': {
                            'stringValue': 'string',
                            'booleanValue': True|False,
                            'doubleValue': 123.0,
                            'emptyValue': {}
                        },
                        'result': True|False
                    }
                },
            ]
        }
    }
)
string
[REQUIRED]
Unique identifier of a Cases domain.
string
[REQUIRED]
Name of the case rule.
string
The description of a case rule.
dict
[REQUIRED]
Represents what rule type should take place, under what conditions.
required (dict) --
Required rule type, used to indicate whether a field is required.
defaultValue (boolean) -- [REQUIRED]
The value of the rule (that is, whether the field is required) should none of the conditions evaluate to true.
conditions (list) -- [REQUIRED]
List of conditions for the required rule; the first condition to evaluate to true dictates the value of the rule.
(dict) --
Boolean condition for a rule. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.
equalTo (dict) --
Tests that operandOne is equal to operandTwo.
operandOne (dict) -- [REQUIRED]
Represents the left hand operand in the condition.
fieldId (string) --
The field ID that this operand should take the value of.
operandTwo (dict) -- [REQUIRED]
Represents the right hand operand in the condition.
stringValue (string) --
String value type.
booleanValue (boolean) --
Boolean value type.
doubleValue (float) --
Double value type.
emptyValue (dict) --
Empty value type.
result (boolean) -- [REQUIRED]
The value of the outer rule if the condition evaluates to true.
notEqualTo (dict) --
Tests that operandOne is not equal to operandTwo.
operandOne (dict) -- [REQUIRED]
Represents the left hand operand in the condition.
fieldId (string) --
The field ID that this operand should take the value of.
operandTwo (dict) -- [REQUIRED]
Represents the right hand operand in the condition.
stringValue (string) --
String value type.
booleanValue (boolean) --
Boolean value type.
doubleValue (float) --
Double value type.
emptyValue (dict) --
Empty value type.
result (boolean) -- [REQUIRED]
The value of the outer rule if the condition evaluates to true.
fieldOptions (dict) --
Which options are available in a child field based on the selected value in a parent field.
parentFieldId (string) --
The identifier of the parent field that controls options.
childFieldId (string) --
The identifier of the child field whose options are controlled.
parentChildFieldOptionsMappings (list) -- [REQUIRED]
A mapping between a parent field option value and child field option values.
(dict) --
A mapping between a parent field option value and child field option values.
parentFieldOptionValue (string) -- [REQUIRED]
The value in the parent field.
childFieldOptionValues (list) -- [REQUIRED]
A list of allowed values in the child field.
(string) --
hidden (dict) --
Whether a field is visible, based on values in other fields.
defaultValue (boolean) -- [REQUIRED]
Whether the field is hidden when no conditions match.
conditions (list) -- [REQUIRED]
A list of conditions that determine field visibility.
(dict) --
Boolean condition for a rule. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.
equalTo (dict) --
Tests that operandOne is equal to operandTwo.
operandOne (dict) -- [REQUIRED]
Represents the left hand operand in the condition.
fieldId (string) --
The field ID that this operand should take the value of.
operandTwo (dict) -- [REQUIRED]
Represents the right hand operand in the condition.
stringValue (string) --
String value type.
booleanValue (boolean) --
Boolean value type.
doubleValue (float) --
Double value type.
emptyValue (dict) --
Empty value type.
result (boolean) -- [REQUIRED]
The value of the outer rule if the condition evaluates to true.
notEqualTo (dict) --
Tests that operandOne is not equal to operandTwo.
operandOne (dict) -- [REQUIRED]
Represents the left hand operand in the condition.
fieldId (string) --
The field ID that this operand should take the value of.
operandTwo (dict) -- [REQUIRED]
Represents the right hand operand in the condition.
stringValue (string) --
String value type.
booleanValue (boolean) --
Boolean value type.
doubleValue (float) --
Double value type.
emptyValue (dict) --
Empty value type.
result (boolean) -- [REQUIRED]
The value of the outer rule if the condition evaluates to true.
dict
Response Syntax
{
    'caseRuleId': 'string',
    'caseRuleArn': 'string'
}
Response Structure
(dict) --
caseRuleId (string) --
Unique identifier of a case rule.
caseRuleArn (string) --
The Amazon Resource Name (ARN) of a case rule.
{'caseRules': {'ruleType': {'FieldOptions', 'Hidden'}}}
      Lists all case rules in a Cases domain. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.
See also: AWS API Documentation
Request Syntax
client.list_case_rules(
    domainId='string',
    maxResults=123,
    nextToken='string'
)
string
[REQUIRED]
Unique identifier of a Cases domain.
integer
The maximum number of results to return per page.
string
The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.
dict
Response Syntax
{
    'caseRules': [
        {
            'caseRuleId': 'string',
            'name': 'string',
            'caseRuleArn': 'string',
            'ruleType': 'Required'|'Hidden'|'FieldOptions',
            'description': 'string'
        },
    ],
    'nextToken': 'string'
}
Response Structure
(dict) --
caseRules (list) --
A list of field summary objects.
(dict) --
Summary information of this case rule. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.
caseRuleId (string) --
Unique identifier of a case rule.
name (string) --
Name of the case rule.
caseRuleArn (string) --
The Amazon Resource Name (ARN) of the case rule.
ruleType (string) --
Possible types for a rule.
description (string) --
Description of a case rule.
nextToken (string) --
The token for the next set of results. This is null if there are no more results to return.
{'rule': {'fieldOptions': {'childFieldId': 'string',
                           'parentChildFieldOptionsMappings': [{'childFieldOptionValues': ['string'],
                                                                'parentFieldOptionValue': 'string'}],
                           'parentFieldId': 'string'},
          'hidden': {'conditions': [{'equalTo': {'operandOne': {'fieldId': 'string'},
                                                 'operandTwo': {'booleanValue': 'boolean',
                                                                'doubleValue': 'double',
                                                                'emptyValue': {},
                                                                'stringValue': 'string'},
                                                 'result': 'boolean'},
                                     'notEqualTo': {'operandOne': {'fieldId': 'string'},
                                                    'operandTwo': {'booleanValue': 'boolean',
                                                                   'doubleValue': 'double',
                                                                   'emptyValue': {},
                                                                   'stringValue': 'string'},
                                                    'result': 'boolean'}}],
                     'defaultValue': 'boolean'}}}
      Updates a case rule. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.
See also: AWS API Documentation
Request Syntax
client.update_case_rule(
    domainId='string',
    caseRuleId='string',
    name='string',
    description='string',
    rule={
        'required': {
            'defaultValue': True|False,
            'conditions': [
                {
                    'equalTo': {
                        'operandOne': {
                            'fieldId': 'string'
                        },
                        'operandTwo': {
                            'stringValue': 'string',
                            'booleanValue': True|False,
                            'doubleValue': 123.0,
                            'emptyValue': {}
                        },
                        'result': True|False
                    },
                    'notEqualTo': {
                        'operandOne': {
                            'fieldId': 'string'
                        },
                        'operandTwo': {
                            'stringValue': 'string',
                            'booleanValue': True|False,
                            'doubleValue': 123.0,
                            'emptyValue': {}
                        },
                        'result': True|False
                    }
                },
            ]
        },
        'fieldOptions': {
            'parentFieldId': 'string',
            'childFieldId': 'string',
            'parentChildFieldOptionsMappings': [
                {
                    'parentFieldOptionValue': 'string',
                    'childFieldOptionValues': [
                        'string',
                    ]
                },
            ]
        },
        'hidden': {
            'defaultValue': True|False,
            'conditions': [
                {
                    'equalTo': {
                        'operandOne': {
                            'fieldId': 'string'
                        },
                        'operandTwo': {
                            'stringValue': 'string',
                            'booleanValue': True|False,
                            'doubleValue': 123.0,
                            'emptyValue': {}
                        },
                        'result': True|False
                    },
                    'notEqualTo': {
                        'operandOne': {
                            'fieldId': 'string'
                        },
                        'operandTwo': {
                            'stringValue': 'string',
                            'booleanValue': True|False,
                            'doubleValue': 123.0,
                            'emptyValue': {}
                        },
                        'result': True|False
                    }
                },
            ]
        }
    }
)
string
[REQUIRED]
Unique identifier of a Cases domain.
string
[REQUIRED]
Unique identifier of a case rule.
string
Name of the case rule.
string
Description of a case rule.
dict
Represents what rule type should take place, under what conditions.
required (dict) --
Required rule type, used to indicate whether a field is required.
defaultValue (boolean) -- [REQUIRED]
The value of the rule (that is, whether the field is required) should none of the conditions evaluate to true.
conditions (list) -- [REQUIRED]
List of conditions for the required rule; the first condition to evaluate to true dictates the value of the rule.
(dict) --
Boolean condition for a rule. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.
equalTo (dict) --
Tests that operandOne is equal to operandTwo.
operandOne (dict) -- [REQUIRED]
Represents the left hand operand in the condition.
fieldId (string) --
The field ID that this operand should take the value of.
operandTwo (dict) -- [REQUIRED]
Represents the right hand operand in the condition.
stringValue (string) --
String value type.
booleanValue (boolean) --
Boolean value type.
doubleValue (float) --
Double value type.
emptyValue (dict) --
Empty value type.
result (boolean) -- [REQUIRED]
The value of the outer rule if the condition evaluates to true.
notEqualTo (dict) --
Tests that operandOne is not equal to operandTwo.
operandOne (dict) -- [REQUIRED]
Represents the left hand operand in the condition.
fieldId (string) --
The field ID that this operand should take the value of.
operandTwo (dict) -- [REQUIRED]
Represents the right hand operand in the condition.
stringValue (string) --
String value type.
booleanValue (boolean) --
Boolean value type.
doubleValue (float) --
Double value type.
emptyValue (dict) --
Empty value type.
result (boolean) -- [REQUIRED]
The value of the outer rule if the condition evaluates to true.
fieldOptions (dict) --
Which options are available in a child field based on the selected value in a parent field.
parentFieldId (string) --
The identifier of the parent field that controls options.
childFieldId (string) --
The identifier of the child field whose options are controlled.
parentChildFieldOptionsMappings (list) -- [REQUIRED]
A mapping between a parent field option value and child field option values.
(dict) --
A mapping between a parent field option value and child field option values.
parentFieldOptionValue (string) -- [REQUIRED]
The value in the parent field.
childFieldOptionValues (list) -- [REQUIRED]
A list of allowed values in the child field.
(string) --
hidden (dict) --
Whether a field is visible, based on values in other fields.
defaultValue (boolean) -- [REQUIRED]
Whether the field is hidden when no conditions match.
conditions (list) -- [REQUIRED]
A list of conditions that determine field visibility.
(dict) --
Boolean condition for a rule. In the Amazon Connect admin website, case rules are known as case field conditions. For more information about case field conditions, see Add case field conditions to a case template.
equalTo (dict) --
Tests that operandOne is equal to operandTwo.
operandOne (dict) -- [REQUIRED]
Represents the left hand operand in the condition.
fieldId (string) --
The field ID that this operand should take the value of.
operandTwo (dict) -- [REQUIRED]
Represents the right hand operand in the condition.
stringValue (string) --
String value type.
booleanValue (boolean) --
Boolean value type.
doubleValue (float) --
Double value type.
emptyValue (dict) --
Empty value type.
result (boolean) -- [REQUIRED]
The value of the outer rule if the condition evaluates to true.
notEqualTo (dict) --
Tests that operandOne is not equal to operandTwo.
operandOne (dict) -- [REQUIRED]
Represents the left hand operand in the condition.
fieldId (string) --
The field ID that this operand should take the value of.
operandTwo (dict) -- [REQUIRED]
Represents the right hand operand in the condition.
stringValue (string) --
String value type.
booleanValue (boolean) --
Boolean value type.
doubleValue (float) --
Double value type.
emptyValue (dict) --
Empty value type.
result (boolean) -- [REQUIRED]
The value of the outer rule if the condition evaluates to true.
dict
Response Syntax
{}
Response Structure
(dict) --