CreateCallAnalyticsCategory
Creates a new Call Analytics category.
All categories are automatically applied to your Call Analytics transcriptions. Note that in order to apply categories to your transcriptions, you must create them before submitting your transcription request, as categories cannot be applied retroactively.
When creating a new category, you can use the InputType
parameter to
label the category as a POST_CALL
or a REAL_TIME
category.
POST_CALL
categories can only be applied to post-call transcriptions and
REAL_TIME
categories can only be applied to real-time transcriptions. If you
do not include InputType
, your category is created as a
POST_CALL
category by default.
Call Analytics categories are composed of rules. For each category, you must create between 1 and 20 rules. Rules can include these parameters: InterruptionFilter, NonTalkTimeFilter, SentimentFilter, and TranscriptFilter.
To update an existing category, see UpdateCallAnalyticsCategory.
To learn more about Call Analytics categories, see Creating categories for post-call transcriptions and Creating categories for real-time transcriptions.
Request Syntax
{
"CategoryName": "string
",
"InputType": "string
",
"Rules": [
{ ... }
]
}
Request Parameters
For information about the parameters that are common to all actions, see Common Parameters.
The request accepts the following data in JSON format.
- CategoryName
-
A unique name, chosen by you, for your Call Analytics category. It's helpful to use a detailed naming system that will make sense to you in the future. For example, it's better to use
sentiment-positive-last30seconds
for a category over a generic name liketest-category
.Category names are case sensitive.
Type: String
Length Constraints: Minimum length of 1. Maximum length of 200.
Pattern:
^[0-9a-zA-Z._-]+
Required: Yes
- InputType
-
Choose whether you want to create a real-time or a post-call category for your Call Analytics transcription.
Specifying
POST_CALL
assigns your category to post-call transcriptions; categories with this input type cannot be applied to streaming (real-time) transcriptions.Specifying
REAL_TIME
assigns your category to streaming transcriptions; categories with this input type cannot be applied to post-call transcriptions.If you do not include
InputType
, your category is created as a post-call category by default.Type: String
Valid Values:
REAL_TIME | POST_CALL
Required: No
- Rules
-
Rules define a Call Analytics category. When creating a new category, you must create between 1 and 20 rules for that category. For each rule, you specify a filter you want applied to the attributes of a call. For example, you can choose a sentiment filter that detects if a customer's sentiment was positive during the last 30 seconds of the call.
Type: Array of Rule objects
Array Members: Minimum number of 1 item. Maximum number of 20 items.
Required: Yes
Response Syntax
{
"CategoryProperties": {
"CategoryName": "string",
"CreateTime": number,
"InputType": "string",
"LastUpdateTime": number,
"Rules": [
{ ... }
]
}
}
Response Elements
If the action is successful, the service sends back an HTTP 200 response.
The following data is returned in JSON format by the service.
- CategoryProperties
-
Provides you with the properties of your new category, including its associated rules.
Type: CategoryProperties object
Errors
For information about the errors that are common to all actions, see Common Errors.
- BadRequestException
-
Your request didn't pass one or more validation tests. This can occur when the entity you're trying to delete doesn't exist or if it's in a non-terminal state (such as
IN PROGRESS
). See the exception message field for more information.HTTP Status Code: 400
- ConflictException
-
A resource already exists with this name. Resource names must be unique within an AWS account.
HTTP Status Code: 400
- InternalFailureException
-
There was an internal error. Check the error message, correct the issue, and try your request again.
HTTP Status Code: 500
- LimitExceededException
-
You've either sent too many requests or your input file is too long. Wait before retrying your request, or use a smaller file and try your request again.
HTTP Status Code: 400
See Also
For more information about using this API in one of the language-specific AWS SDKs, see the following: