Question: How do I find missing call recordings in Amazon Connect?

I'm trying to find a call recording in Amazon Connect, but the recording doesn't exist.

Short descriptionAmazon Connect lets you store call recordings of customer interactions in Amazon Simple Storage Service (Amazon S3). To generate a call recording in the Amazon Connect console, you must meet the following conditions:You turn on call recording for the agent or customer in the Set recording and analytics behavior flow block.You configure the Amazon S3 bucket to store the call recording.The agent and customer are connected on the call interaction, and the call is disconnected.If you meet these conditions and you can't locate the call recording, then review the troubleshooting in the Resolution section.

ResolutionComplete the following steps to verify that the call recording is present in Amazon Connect:Open the Amazon Connect console using an AWS account that has permissions to review call recording.From the navigation pane, choose Analytics, and then choose Contact Search.On the Contact search page, review the Recording/Transcript column to confirm that a call recording was generated.If a call recording is present, then select the Contact ID to verify that the recording is attached to the contact trace record (CTR).Recording isn't created in Amazon ConnectIf Amazon Connect didn't create the call recording, then review the following steps to troubleshoot.Check the contact flow configurationIn the contact flow log, review the Set recording and analytics behavior contact flow block. Verify that the Set recording and analytics behavior activates the call recording before Amazon Connect connects the customer to an agent for the interaction.{  "ContactId": "12ef1cf2-922b-9865-b18b-362564cc9be8",  "ContactFlowId": "xyz:aws:connect:alocation:123:instance/112232-c123-12bc-345a-d7e8a9b1bf23/contact-flow/b70334ed-8847-4efd-b2a7-cbbbd6da330c",  "ContactFlowName": "Sample inbound flow (first contact experience)",  "ContactFlowModuleType": "SetRecordingBehavior",  "Timestamp": "2022-06-21T17:15:51.966Z",  "Parameters": {   "RecordingBehaviorOption": "Enable",   "RecordingParticipantOption": "All"<br>  }}The following are common scenarios where calls aren't recorded:Example 1: If you add a Set recording and analytics behavior flow block after a Transfer to queue flow block, then Amazon Connect doesn't record the call. This happens because the contact exits the contact flow after it reaches the Transfer to queue flow block. In this scenario, the contact doesn't reach to the Set recording and analytics behavior flow block. This means that Amazon Connect doesn't generate a recording.Example 2: There's an external transfer. You turned on the Set recording and analytics behavior flow block in the contact flow, but Amazon Connect doesn't record the contact. To verify this, trace the contact flow logs for information on Transfer to phone number.Check the Amazon S3 bucket policyFor instances that you created before October 2018, review your S3 bucket policy to confirm that Amazon Connect instances have the appropriate permissions for the assumed role.Review the AWS CloudTrail logs to verify whether the Amazon Connect instance assumed role is getting an access denied error. The user or application that's trying to access the S3 bucket must have appropriate permissions.Validate the AWS Identity and Access Management (IAM) user’s permissions, and update the policy to grant permissions.For instances that your created after October 2018, Amazon Connect uses service-linked roles to access Amazon S3 and provides access to one S3 bucket at a time.Recording is created in Amazon Connect, you can't locate it in Amazon S3Note: You must have access to the destination S3 bucket to review the recordings.If Amazon Connect created the call recordings, but you can't locate the recordings in the S3 bucket, then take the following actions:Confirm the recording nameMost call recordings for specific contact IDs are named with the contact ID prefix itself. However, the contact IDs and name of the contact recording file don't always match. On the Contact search page, use the Contact ID to search for call recordings. To find the correct recording, refer to the audio file that's on the contact’s record.Recording name example:87a833e6-beec-46b3-bddd-fea0f190b5f7_20211104T09:06_UTC.wavImportant: Call recordings for customer callback aren't named with the contact ID prefix.Check whether the S3 bucket changedIf the S3 bucket information changed, then the instance doesn't have permissions to access the previous S3 bucket.For example, You use "bucket-A" in January and “bucket-B” in February. Amazon S3 stores all calls and recordings that Amazon Connect creates after February 1 in "bucket-B". You can see the calls and recordings from January in "bucket-A", but you can't access them because they're not in "bucket-B".Check the CallRecordingUploadError metricThe CallRecordingUploadError Amazon CloudWatch metric records the number of call recordings that failed to upload to the S3 bucket that's configured for your instance.Note: CallRecordingUploadError retries within 24 hours and doesn't always indicate complete failure. As each retry fails, a new data point appears in the metric. If you can't locate the recording after 24 hours, then open a support case. Provide the contact ID, contact flow logs, and CTR screenshots for review in your support case.