Complex Provisioning Policy Attributes
The Google Workspace connector supports account provisioning with the following multi-valued complex attributes in JSON format:
Complex Attributes |
Examples of JSON input |
---|---|
emails |
{"address":"test1@google.com","type":"other"} |
organizations |
{"name":"Sailpoint","title":"SysAdmin", "type":"work", "customType":"","department":"DP Operations","location":"Pune"} |
phones |
{"value":"9876123345","type":"mobile"} |
relations |
{"value":"David","type":"brother"} |
addresses |
{"type":"work","streetAddress":"123 James street","locality":"Domino Park","region":"Lake Side","primary":true,"countryCode":"US"} |
externalIds |
{"value":"1234","type":"account"} |
ims |
{"type":"home","protocol":"gtalk","im":"12345","primary":true} |
locations |
{"area": "Mountain View", "buildingId": "D1", "deskCode": "Desk1", "floorName":"First Floor", "floorSection":"B", "type":"desk"} |
If you need to set multiple values, separate each of the values in the JSON input with a comma:
{"address":"user1@google.com","type":"home"}, {"address":"test1@google.com","type":"other"}
The Google Workspace connector supports the aliases
multi-valued attribute. Aliases are the user's aliases. The values can be a string or list of email IDs. It also supports special characters in email IDs for entitlement operations.
Note
Ensure that complex attributes are multi-valued in account schema and provisioning policy. For more information on JSON representation of the complex attributes and values, refer to REST Resource: users in the Google Workspace documentation.
The GSuite API does not support adding/removing multiple aliases in a single call, so the Google Workspace connector needs a list of values to iterate over each one. The Google Workspace connector requires the Before Provisioning Rule to create a provisioning plan to ensure the alias values are in the list format. Refer to the following provisioning plan example to add/remove multiple aliases:
{
"ProvisioningPlan": {
"AccountRequest": {
"AttributeRequest": {
"Value": {
"List": {
"String": [
"GoogleWorkspace1222@example.com",
"GoogleWorkspace12230@example.com"
]
}
},
"name": "aliases",
"op": "Set"
},
"application": "Google workspace",
"nativeIdentity": "11234567890",
"op": "Modify"
},
"nativeIdentity": "Test.google",
"targetIntegration": "Google workspace"
}
}
To add/remove a single alias, the string format works fine. For example,
{
"AttributeRequest": {
"name": "aliases",
"op": "Set",
"value": "GoogleWorkspace1222@example.com"
},