Parsing SCIM data

I am taking my first stab at the generic SCIM connector, and I am having an issue understanding how to map some of the data returned. When I perform their getuser API call, I get back data that looks like this:

{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:User"
    ],
    "userName": "[email protected]",
    "name": {
        "familyName": "Webb",
        "givenName": "Sam"
    },
    "userType": "Internal",
    "active": true,
    "groups": [
        {
            "value": "d78bf5c6-d545-41ba-9e4a-606a3ac159dc",
            "display": "Very Crafty People"
        }
    ],
    "emails": [
        {
            "value": "[email protected]",
            "display": "[email protected]",
            "primary": true,
            "type": "work"
        }
    ],
    "roles": [],
    "title": null,
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
        "businessUnit": null,
        "division": null,
        "employeeNumber": null,
        "officeLocation": null,
        "department": null,
        "manager": {
            "value": null,
            "displayName": null,
            "$ref": null
        },
        "organization": null,
        "legacyManager": null
    }
}

I would like to perform attribute syncing on the attributes in the ā€œurn:ietf:params:scim:schemas:extension:enterprise:2.0:Userā€ section of the response (division, employeeNumber, etc), but I do not understand how I define those in the account schema in the connector.

I tried a few things, but the attribute always comes in blank. The Discover Schema button does not pick them up. Maybe it is possible that the connector is using a different endpoint. The documentation on the application’s side is not clear.

Looks like your SCIM endpoint is not handing schemas correctly. The reponse you have there should include all the schemas in use in the body in the first schemas attribute.

It should look like this:

"schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:User",
        "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User"
    ]

So, the short answer is that I am out of luck? :slight_smile:

Hi @BCyr Have you tried, for instance:

[urn:ietf:params:scim:schemas:extension:enterprise:2.0:User].businessUnit

Also, do you get anything back from a call to /schemas ?

Jeremy,

I see where the confusion happened. I was trying to enter these paths on the schema screen instead of the Non-Compliant Settings screen. Once I got the JSON path worked out, it went smoothly after that. Thanks.

My path has single quotes in it, though

[ā€˜urn:ietf:params:scim:schemas:extension:enterprise:2.0:User’].businessUnit

1 Like