Okta SCIM manager updates fail to send updated values in the PUT request payload

When using SCIM provisioning in Okta, updating the manager value and manager display name manually in Provisioning → Assignments for an already provisioned user causes an issue. The PUT request payload always sends the old manager values in an array, preventing updates.

Observations:

  • Other attributes update correctly, with the PUT request sending new values.
  • Mappings are correct.
  • The GET response before the update includes the following response when no manager exists:
{
    "schemas": [
        "urn:ietf:params:scim:schemas:core:2.0:User"
    ],
    "id": ***31,
    "externalId": "****************d8f78",
    "meta": {
        "resourceType": "User",
        "created": "2024-12-06T10:38:22.000Z",
        "lastModified": "2024-12-17T14:29:58.000Z"
    },
    "displayName": null,
    "name": {
        "givenName": "indhumathy",
        "familyName": "indhumathy",
        "middleName": ""
    },
    "active": true,
    "title": "Senior Product Manager",
    "emails": {
        "value": "in****@gmail.com"
    },
    "urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
        "manager": []
    },
    "locale": "en-US",
    "timezone": "America/Chicago"
}

This seems to trigger the issue.

As a trial, I did the below:

By removing the below snippet from the GET response:

"urn:ietf:params:scim:schemas:extension:enterprise:2.0:User": {
    "manager": []
}

The PUT request payload starts sending the updated new manager value and manager display name in a hash similar to the create payload, allowing updates to work as expected.

Is this workflow is correct?. Please let me know the standard approach to solve this issue.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.