SCIM and Genesys Cloud field mappings

Note: This article applies to Genesys Cloud SCIM (Identity Management).

This table shows the SCIM fields that Genesys Cloud SCIM (Identity Management) maps to Genesys Cloud fields. These SCIM fields are then mapped to fields in third-party applications. 

Multi-valued attribute fields

The SCIM and Genesys Cloud field mappings table lists only the essential subattributes required for each mapping. While additional subattributes are available as defined in RFC 7643 Section 2.4, only the essential ones are listed in the table. For a comprehensive list of subattributes for any multi-valued attribute, refer to the SCIM specification.

The multi-valued attribute SCIM fields follow this format:

<attribute>.[].<subattribute>

Where <attribute> refers to the elements in the multi-valued attribute list and <subattribute> indicates the specific subattribute of each element that is required for mapping.

The generic JSON schema for this format is:

{
   "$schema": "http://json-schema.org/draft-04/schema#",
   "type": "object",
   "required": ["<attribute>"],
   "properties": {
     "attribute": {
       "type": "array",
       "items": [
         {
           "type": "object",
           "additionalProperties":true,
           "required": ["<sub_attribute>"],
           "properties": {
             "sub_attribute": {
               "type": "string"
             }
           }
        }
      ]
    }
  }
}

Use any of the online JSON Schema validators to validate the JSON schema for the multi-valued attributes references in the mapping in the table. For example, in the roles.[].value mapping, roles represents <attribute> and value represents <subattribute>.

 The JSON element for the roles.[].value mapping is therefore validated as follows:

 {
   "roles": [
     {
       "other": "this is allowed but doesn’t contribute to the roles mapping",
       "value": "Role1"
     },
     {
       "value": "Role2"
     }
   ]
 }

Filter multi-valued attributes

Some SCIM multi-valued attributes require mapping a specific list item to a Genesys Cloud field. In these cases, an additional subattribute is specified as a filter field for the list. This filter field becomes a mandatory subattribute for that element.

For example, in the phoneNumbers[type eq "home"].value field, phoneNumbers represent the <attribute>, value represents the <subattribute>, and type is the extra <subattribute> used for filtering. Unlike the standard mappings that do not need a filter, type subattribute is used to identify and bind to the correct phone number entry in the list. With the extra subattribute type, the JSON element used for the mapping is validated as follows:

 {
   "phoneNumbers": [
     {
       "type": "home",
       "value": "+13175551234"
     },
     {
       "type": "mobile",
       "value": "+13175554321" 
     }
   ]
 }