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": [ 
      { ... }
   ],
   "Tags": [ 
      { 
         "Key": "string",
         "Value": "string"
      }
   ]
}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-last30secondsfor 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_CALLassigns your category to post-call transcriptions; categories with this input type cannot be applied to streaming (real-time) transcriptions.Specifying REAL_TIMEassigns 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_CALLRequired: 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 
- Tags
- 
               Adds one or more custom tags, each in the form of a key:value pair, to a new call analytics category at the time you start this new job. To learn more about using tags with Amazon Transcribe, refer to Tagging resources. Type: Array of Tag objects Array Members: Minimum number of 1 item. Maximum number of 200 items. Required: No 
Response Syntax
{
   "CategoryProperties": { 
      "CategoryName": "string",
      "CreateTime": number,
      "InputType": "string",
      "LastUpdateTime": number,
      "Rules": [ 
         { ... }
      ],
      "Tags": [ 
         { 
            "Key": "string",
            "Value": "string"
         }
      ]
   }
}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: