2026/11/06 - Amazon Connect Cases - 2 new api methods
Changes Amazon Connect Cases adds two Bulk Case Actions operations. BatchCreateRelatedItem adds a Comment-type related item to up to 100 cases per request, BatchUpdateCase updates fields (title, status, customer ID, custom) on up to 100 cases. Same domain, per-case success and failure results returned.
Updates fields on multiple cases in a single request. All cases must belong to the same domain. Set the title, status, and customer ID through the top-level title, status, and customerId parameters, and set other fields through the fields array.
Each case is processed independently. If some cases fail, the remaining cases are still updated. To determine whether individual cases failed, inspect the failedCases array in the response.
The entire request fails, and no cases are updated, in the following cases:
The specified domain doesn't exist.
A reference ID doesn't match any case in the domain.
The request contains duplicate case IDs.
The request doesn't specify any update. Provide at least one entry in fields, or a title, status, or customerId.
A field identifier in fields doesn't resolve to a field in the domain, for example, an unknown field name.
A field name contains a pipe ( |) or comma ( ,) character.
fields includes title, status, or customerId.
Endpoints: See Connect Customer endpoints and quotas.
See also: AWS API Documentation
Request Syntax
client.batch_update_case(
domainId='string',
cases=[
{
'caseIdentifier': {
'caseId': 'string',
'referenceId': 'string'
}
},
],
fields=[
{
'fieldIdentifier': {
'id': 'string',
'name': 'string'
},
'value': {
'stringValue': 'string',
'doubleValue': 123.0,
'booleanValue': True|False,
'emptyValue': {}
,
'userArnValue': 'string'
}
},
],
performedBy={
'userArn': 'string',
'customEntity': 'string'
},
title='string',
status='string',
customerId='string',
clientToken='string'
)
string
[REQUIRED]
The unique identifier of the Cases domain.
list
[REQUIRED]
The list of cases to update. All cases must belong to the same domain.
(dict) --
Identifies a case to update in a BatchUpdateCase request.
caseIdentifier (dict) -- [REQUIRED]
The identifier of the case to update. Specify either the case ID or the reference ID.
caseId (string) --
The unique identifier of the case.
referenceId (string) --
The reference ID of the case. Reference IDs are unique within a domain, and uniqueness isn't case sensitive.
list
[REQUIRED]
An array of objects, each with a fieldIdentifier and a value. You can identify each field by its ID or by its name; identifying a field by name is supported only in BatchUpdateCase. The same field values are applied to every case in the request. This field must be present, but can be an empty list when you provide the top-level title, status, or customerId parameters. Do not include title, status, or customerId in this list; set those values only through their top-level parameters. Duplicating them in fields results in a validation error.
(dict) --
A field and the value to set for it.
fieldIdentifier (dict) -- [REQUIRED]
The field to update, identified by field ID or field name.
id (string) --
The unique identifier of the field.
name (string) --
The name of the field.
value (dict) -- [REQUIRED]
The value to set for the field.
stringValue (string) --
String value type.
doubleValue (float) --
Can be either null, or have a Double number value type. Only one value can be provided.
booleanValue (boolean) --
Can be either null, or have a Boolean value type. Only one value can be provided.
emptyValue (dict) --
An empty value.
userArnValue (string) --
Represents the user that performed the audit.
dict
The entity that performed the action.
userArn (string) --
Represents the Connect Customer ARN of the user.
customEntity (string) --
Any provided entity.
string
The title to apply to all cases in the request.
string
The status to apply to all cases in the request.
string
The ARN of the customer profile to associate with all cases in the request.
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.
If you retry a request with the same client token, the service returns the original response instead of processing the request again. If you reuse a client token with different request parameters, the request fails with a ConflictException.
This field is autopopulated if not provided.
dict
Response Syntax
{
'successfulCases': [
{
'caseIdentifier': {
'caseId': 'string',
'referenceNumber': 'string',
'referenceId': 'string'
}
},
],
'failedCases': [
{
'caseIdentifier': {
'caseId': 'string',
'referenceNumber': 'string',
'referenceId': 'string'
},
'errorCode': 'string',
'errorMessage': 'string'
},
]
}
Response Structure
(dict) --
successfulCases (list) --
The list of cases that were successfully updated.
(dict) --
Information about a case that was updated.
caseIdentifier (dict) --
The identifiers of the updated case.
caseId (string) --
The unique identifier of the case.
referenceNumber (string) --
The reference number of the case. Reference numbers aren't guaranteed to be unique. BatchUpdateCase and BatchCreateRelatedItem don't return this value.
referenceId (string) --
The reference ID of the case. Cases created before reference IDs were available don't have one.
failedCases (list) --
The list of cases that were not updated. Each entry includes an error code and message. Possible error codes include:
CASE_NOT_FOUND - No case exists with the specified case ID.
VALIDATION_ERROR - The request contains invalid input.
CONFLICT - Another operation is in progress on the case, such as a concurrent update or a merge of the case into another case.
THROTTLED - The request rate exceeded the allowed limit.
ACCESS_DENIED - The caller lacks permission to perform the operation.
SERVICE_QUOTA_EXCEEDED - The request exceeded a service quota.
DOMAIN_NOT_FOUND - The case domain was deleted while the request was being processed.
INTERNAL_ERROR - An unexpected error occurred on the server.
(dict) --
Information about a case that wasn't updated.
caseIdentifier (dict) --
The identifiers of the case that wasn't updated.
caseId (string) --
The unique identifier of the case.
referenceNumber (string) --
The reference number of the case. Reference numbers aren't guaranteed to be unique. BatchUpdateCase and BatchCreateRelatedItem don't return this value.
referenceId (string) --
The reference ID of the case. Cases created before reference IDs were available don't have one.
errorCode (string) --
The error code. For possible values, see failedCases.
errorMessage (string) --
A message that describes the error.
Creates a comment and associates it with multiple cases in a single request. All cases must belong to the same domain. This operation supports only the Comment related item type.
Each case is processed independently. If some cases fail, the remaining cases still receive the related item. To determine whether individual items failed, inspect the failedItems array in the response.
The entire request fails, and no related items are created, in the following cases:
The specified domain doesn't exist.
A reference ID doesn't match any case in the domain.
The request contains duplicate case IDs.
The content isn't comment content.
Endpoints: See Connect Customer endpoints and quotas.
See also: AWS API Documentation
Request Syntax
client.batch_create_related_item(
domainId='string',
content={
'contact': {
'contactArn': 'string'
},
'comment': {
'body': 'string',
'contentType': 'Text/Plain'
},
'file': {
'fileArn': 'string'
},
'sla': {
'slaInputConfiguration': {
'name': 'string',
'type': 'CaseField',
'fieldId': 'string',
'targetFieldValues': [
{
'stringValue': 'string',
'doubleValue': 123.0,
'booleanValue': True|False,
'emptyValue': {}
,
'userArnValue': 'string'
},
],
'targetSlaMinutes': 123
}
},
'connectCase': {
'caseId': 'string'
},
'custom': {
'fields': [
{
'id': 'string',
'value': {
'stringValue': 'string',
'doubleValue': 123.0,
'booleanValue': True|False,
'emptyValue': {}
,
'userArnValue': 'string'
}
},
]
}
},
cases=[
{
'caseIdentifier': {
'caseId': 'string',
'referenceId': 'string'
}
},
],
performedBy={
'userArn': 'string',
'customEntity': 'string'
},
clientToken='string'
)
string
[REQUIRED]
The unique identifier of the Cases domain.
dict
[REQUIRED]
The content of the related item to be created. The same content is applied to every case in the request. Only comment content is supported for batch creation.
contact (dict) --
Object representing a contact in Connect Customer as an API request field.
contactArn (string) -- [REQUIRED]
A unique identifier of a contact in Connect Customer.
comment (dict) --
Represents the content of a comment to be returned to agents.
body (string) -- [REQUIRED]
Text in the body of a Comment on a case.
contentType (string) -- [REQUIRED]
Type of the text in the box of a Comment on a case.
file (dict) --
A file of related items.
fileArn (string) -- [REQUIRED]
The Amazon Resource Name (ARN) of a File in Connect Customer.
sla (dict) --
Represents the content of an SLA to be created.
slaInputConfiguration (dict) --
Represents an input SLA configuration.
name (string) -- [REQUIRED]
Name of an SLA.
type (string) -- [REQUIRED]
Type of SLA.
fieldId (string) --
Unique identifier of a field.
targetFieldValues (list) --
Represents a list of target field values for the fieldId specified in SlaInputConfiguration. 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.
stringValue (string) --
String value type.
doubleValue (float) --
Can be either null, or have a Double number value type. Only one value can be provided.
booleanValue (boolean) --
Can be either null, or have a Boolean value type. Only one value can be provided.
emptyValue (dict) --
An empty value.
userArnValue (string) --
Represents the user that performed the audit.
targetSlaMinutes (integer) -- [REQUIRED]
Target duration in minutes within which an SLA should be completed.
connectCase (dict) --
Represents the Connect Customer case to be created as a related item.
caseId (string) -- [REQUIRED]
A unique identifier of the case.
custom (dict) --
Represents the content of a Custom type related item.
fields (list) -- [REQUIRED]
List of field values for the Custom related item.
(dict) --
Object for case field values.
id (string) -- [REQUIRED]
Unique identifier of a field.
value (dict) -- [REQUIRED]
Union of potential field value types.
stringValue (string) --
String value type.
doubleValue (float) --
Can be either null, or have a Double number value type. Only one value can be provided.
booleanValue (boolean) --
Can be either null, or have a Boolean value type. Only one value can be provided.
emptyValue (dict) --
An empty value.
userArnValue (string) --
Represents the user that performed the audit.
list
[REQUIRED]
The list of cases to associate the related item with. All cases must belong to the same domain.
(dict) --
Identifies a case to associate the related item with in a BatchCreateRelatedItem request.
caseIdentifier (dict) -- [REQUIRED]
The identifier of the case to associate the related item with. Specify either the case ID or the reference ID.
caseId (string) --
The unique identifier of the case.
referenceId (string) --
The reference ID of the case. Reference IDs are unique within a domain, and uniqueness isn't case sensitive.
dict
The entity that created the related item.
userArn (string) --
Represents the Connect Customer ARN of the user.
customEntity (string) --
Any provided entity.
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.
If you retry a request with the same client token, the service returns the original response instead of processing the request again. If you reuse a client token with different request parameters, the request fails with a ConflictException.
This field is autopopulated if not provided.
dict
Response Syntax
{
'successfulItems': [
{
'caseIdentifier': {
'caseId': 'string',
'referenceNumber': 'string',
'referenceId': 'string'
},
'relatedItemId': 'string',
'relatedItemArn': 'string'
},
],
'failedItems': [
{
'caseIdentifier': {
'caseId': 'string',
'referenceNumber': 'string',
'referenceId': 'string'
},
'errorCode': 'string',
'errorMessage': 'string'
},
]
}
Response Structure
(dict) --
successfulItems (list) --
The list of related items that were successfully created and associated with their cases.
(dict) --
Information about a related item that was created.
caseIdentifier (dict) --
The identifiers of the case that the related item is associated with.
caseId (string) --
The unique identifier of the case.
referenceNumber (string) --
The reference number of the case. Reference numbers aren't guaranteed to be unique. BatchUpdateCase and BatchCreateRelatedItem don't return this value.
referenceId (string) --
The reference ID of the case. Cases created before reference IDs were available don't have one.
relatedItemId (string) --
The unique identifier of the related item.
relatedItemArn (string) --
The Amazon Resource Name (ARN) of the related item.
failedItems (list) --
The list of related items that were not created. Each entry includes an error code and message. Possible error codes include:
CASE_NOT_FOUND - No case exists with the specified case ID.
VALIDATION_ERROR - The request contains invalid input.
CONFLICT - Another operation is in progress on the case, such as a concurrent update or a merge of the case into another case.
THROTTLED - The request rate exceeded the allowed limit.
ACCESS_DENIED - The caller lacks permission to perform the operation.
SERVICE_QUOTA_EXCEEDED - The request exceeded a service quota.
DOMAIN_NOT_FOUND - The case domain was deleted while the request was being processed.
INTERNAL_ERROR - An unexpected error occurred on the server.
(dict) --
Information about a related item that wasn't created.
caseIdentifier (dict) --
The identifiers of the case that the related item wasn't created for.
caseId (string) --
The unique identifier of the case.
referenceNumber (string) --
The reference number of the case. Reference numbers aren't guaranteed to be unique. BatchUpdateCase and BatchCreateRelatedItem don't return this value.
referenceId (string) --
The reference ID of the case. Cases created before reference IDs were available don't have one.
errorCode (string) --
The error code. For possible values, see failedItems.
errorMessage (string) --
A message that describes the error.