Integrating PureCloud to a home-grown CRM solution

We have a potential customer that would like to integrate PureCloud to their home-grown CRM application (they have ample in-house developer resources) and they are looking to understand at a detailed level how that could achieve this. Basically, at the conclusion of every interaction - voice, chat, email - they want the CRM to get detailed data and any notes so that they can store that in their CRM and so they can then show all the chronological interaction history for each account with links to associated recordings. They would like to have these recordings outside of PureCloud since not everyone on their CRM would be a PureCloud user. Can someone validate my responses below or correct/suggest better ones? To get pushed this data I assume they need to subscribe for notifications? Or is there a way to send them interaction data via Web Service at the end of every call, chat, email?

Q1 - We want to see regular notes, web chats, phone conversations all interleaved in chronological order in our Portal (the "XYZ" CRM) - is this doable with the current endpoints that are available or will this require additional development ?

A: You can use the PureCloud API’s notification service to set up notifications of all logged-in agent's interaction events using websockets (https://developer.mypurecloud.com/api/rest/v2/notifications/notification_service.html) Available subscription topics are listed here (https://developer.mypurecloud.com/api/rest/v2/notifications/available_topics.html) and include notifications for a user’s active conversations. Once notified about an event, you can use the conversation ID in conjunction with the PureCloud API to pull all the additional information you require. This information can be used to lookup and match to an account in your CRM and interaction data can be written for later display alongside other account information.

Q2 - We would prefer to pull the voice recording in real time. How do we get the conversationID and recording ID in our Portal?

A: Similar to the above question, your application can use the PureCloud API to set up notifications for your agent's active conversations. Once notified that a conversation is over, you can use the API to pull the list of recordings for that conversation and use those IDs to pull the actual recordings which you can store locally and make available to your CRM and other systems.

Q3 - We would prefer to pull the chat and email recording in real time. How do we get the conversationID and recording ID in our Portal?

A: The answer for row 3 would pertain to chat recordings as well.

Your answers look good to me.