Genesys Cloud OAuth for Genesys Adapter

Genesys Cloud OAuth for Genesys Adapter

Introduction

These instructions are to be used to complete the necessary configuration of the Genesys Cloud instance required to allow the Customer Science Group Genesys Adapter to extract the required Analytical data from your dedicated Genesys Cloud instance. 

This guide is intended for your Genesys Cloud Administrator and requires admin privileges within Genesys Cloud to perform each task. This integration will require a unique OAuth ID / Secret pair to be generated in the Genesys Cloud administration console. 

After completing the configuration, you will be required to complete a table of information and email the contents of this table to the Customer Science Group team for final provisioning.

  1. Log into Genesys Cloud as an administrator account
  2. Create Genesys Cloud Role
    1. https://developer.genesys.cloud/devapps/api-explorer-#put-api-v2-authorization-roles--roleId-
    2. Insert the below content into the black request body block
    3. Select the Green "Execute Request" button at the bottom.
    4. If the role already exists, an error will be returned similar to:

      The request failed with response code: 400. Message: Cannot save a role named 'Customer Science_Genesys Cloud Integration', because this organization has the following roles with this name already: [3621d1a8-79cb-4da8-b3c8-0450ea03f00d]

    5. Copy the ID from the error response and insert this into the request parameters up the top

    6. Select the Green "Execute Request" button at the bottom.
      {
       "name": "Customer Science_Genesys Cloud Integration",
       "permissionPolicies": [
       {
       "domain": "analytics",
       "entityName": "userAggregate",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "wfm",
       "entityName": "managementUnit",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "routing",
       "entityName": "wrapupCode",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "audits",
       "entityName": "audit",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "analytics",
       "entityName": "queueObservation",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "wfm",
       "entityName": "agentScheduleNotification",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "groups",
       "entityName": "team",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "analytics",
       "entityName": "userObservation",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "analytics",
       "entityName": "conversationProperties",
       "actionSet": [
       "index"
       ],
       "allowConditions": false
       },
       {
       "domain": "speechAndTextAnalytics",
       "entityName": "data",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "quality",
       "entityName": "evaluationForm",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "analytics",
       "entityName": "conversationAggregate",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "authorization",
       "entityName": "grant",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "analytics",
       "entityName": "surveyAggregate",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "directory",
       "entityName": "group",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "wfm",
       "entityName": "businessUnit",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "conversation",
       "entityName": "communication",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "wfm",
       "entityName": "agent",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "outbound",
       "entityName": "contact",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "analytics",
       "entityName": "userDetail",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "analytics",
       "entityName": "speechAndTextAnalyticsAggregates",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "wfm",
       "entityName": "intraday",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "outbound",
       "entityName": "contactListFilter",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "wfm",
       "entityName": "shortTermForecast",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "billing",
       "entityName": "subscription",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "quality",
       "entityName": "surveyForm",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "wfm",
       "entityName": "publishedSchedule",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "speechAndTextAnalytics",
       "entityName": "program",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "wfm",
       "entityName": "historicalAdherence",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "routing",
       "entityName": "queue",
       "actionSet": [
       "search",
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "wfm",
       "entityName": "agentSchedule",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "recording",
       "entityName": "recording",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "outbound",
       "entityName": "campaignSequence",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "quality",
       "entityName": "evaluation",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "quality",
       "entityName": "survey",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "speechAndTextAnalytics",
       "entityName": "settings",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "outbound",
       "entityName": "campaign",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "analytics",
       "entityName": "evaluationAggregate",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "wfm",
       "entityName": "planningGroup",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "wfm",
       "entityName": "schedule",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "outbound",
       "entityName": "responseSet",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "wfm",
       "entityName": "timeOffRequest",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "outbound",
       "entityName": "contactList",
       "actionSet": [
       "view",
       "search"
       ],
       "allowConditions": false
       },
       {
       "domain": "outbound",
       "entityName": "wrapUpCodeMapping",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "wfm",
       "entityName": "activityCode",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "speechAndTextAnalytics",
       "entityName": "feedback",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "speechAndTextAnalytics",
       "entityName": "topic",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "wfm",
       "entityName": "adhocForecast",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "analytics",
       "entityName": "conversationDetail",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {
       "domain": "directory",
       "entityName": "user",
       "actionSet": [
       "view"
       ],
       "allowConditions": false
       },
       {            
       "domain": "presence",            
       "entityName": "presenceDefinition",            
       "actionSet": [
       "view"
       ],           
       "allowsConditions": false    
       }
       ]
      }
      




  3. Access Genesys Cloud, and add yourself to the role
  4. f you have an existing Genesys Adapter OAuth, update the OAuth user to consume the new role
  5. Else, create Genesys Cloud OAuth
    This step is to create a Genesys Cloud OAuth with Client Credentials Grant, and link this newly created oAuth to the role created in Step 2
    https://help.mypurecloud.com/articles/create-an-oauth-client/

  6. Share details with Customer Science Group
    Email template

    • Related Articles

    • CXiaaS: Genesys Cloud Adapter for External Analytics

      Why do you need analytics? Data Analytics forms the backbone of business intelligence. It enables benchmarking, accurate reporting, KPI tracking and insights into consumer behaviour, allowing you to stay ahead of your competition. Customer Experience ...
    • CXiaaS Onboarding checklist

      The below is a list of items to be confirmed as part of an effective onboarding for CXiaaS Item Reference Genesys Client ID and Secret configured Customer Science provides a process to create this with a defined permissions role Genesys Cloud OAuth ...
    • CXiaaS: Customer hosted installation

      You can host our solution within your own nominated data centre cloud-hosted environment. All you need is a Linux or Windows Server and an SQL server of your choice. We install our adapter, provide available analytics templates for out-of-the-box ...
    • Release Notes

      Customer Science releases regular updates to our Genesys Adapter and associated CXiaaS offerings. Please review to understand our current releases: August 2024 Release July 2024 Release June 2024 Release May 2024 Release
    • Queue Grouping Metrics

      Background Some customers may have excessive numbers of Genesys Cloud queues defined due to the nature of their business and or various legacy reasons. Managing hundreds of queues can present challenges in finding, sorting and filtering queue related ...