Original Message:
Sent: 08-13-2025 07:55
From: Cameron Tomlin
Subject: User - Generic SSO
Hello Stijn,
I have a few ideas on what maybe happening.
With the GET/api/v2/users/externalid/{authorityName}/{externalKey}:
- I believe the issue you're experiencing with the URL-based authorities is likely because the URL contains special characters that need to be properly encoded. When using this endpoint ensure the authorityName is URL encoded.
With the PATCH operations /api/v2/scim/v2/users/{userId},
- It looks like your approach is close, but needs some tiny adjustments. I have made them below:
{ "schemas": [ "urn:ietf:params:scim:schemas:core:2.0:User", "urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User" ], "Operations": [ { "op": "replace", "path": "urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User:externalIds", "value": [ { "authority": "https://idp.iamfas.int.belgium.be/fas", "value": "abcdefghijk" } ] } ]}
Please note: You need to include both schema URNs, the path should include the full schema reference for externalIds and each SCIM client should use separate Oauth client creds.
Hope this helps!
------------------------------
Cameron
Online Community Manager/Moderator
Original Message:
Sent: 08-13-2025 02:01
From: Stijn Serry
Subject: User - Generic SSO
Hello,
I have setup generic SSO which is working for identify Belgian users. I needed to define "authority"-field in externalIds of a user to "https://idp.iamfas.int.belgium.be/fas" to get it working. So it's not just a string like "microsoftteams".... An example beneath...
"externalIds": [
{
"authority": "https://idp.iamfas.int.belgium.be/fas",
"value": "xxxxxxxxxxx"
},
{
"authority": "microsoftteams",
"value": "yyyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyy"
},
{
"authority": "https://idp.iamfas.belgium.be/fas",
"value": "xxxxxxxxxxx"
}
]
There are multiple problems I encounter now with different api's:
* GET - /api/v2/users/externalid/{authorityName}/{externalKey}
--> Working for microsoftteams but not for the other authorities.
* POST - I can add all via /api/v2/users/{userId}/externalid, but not update them (even not microsoftteams
* DELETE - /api/v2/users/{userId}/externalid/{authorityName}/{externalKey}
I'm not sure if body is correct for the following but I tried multiple entries and I don't have a clue to fix this.
* PATCH /api/v2/scim/v2/users/{userId}
{
"schemas": ["urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User"],
"Operations": [
{
"op": "replace",
"path": "externalIds",
"value": [
{
"authority": "https://idp.iamfas.int.belgium.be/fas",
"value": "abcdefghijk"
}
]
}
]}
--> Does not work
* PATCH /api/v2/scim/v2/users/{userId}
{
"schemas": ["urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User"],
"Operations": [
{
"op": "remove",
"path": "externalIds"
}
]}
--> Does not work
The only solution that I found to update or remove external id's is via PUT /api/v2/scim/users/{userId} or /api/v2/scim/v2/users/{userId}
Replace a user
{
"urn:ietf:params:scim:schemas:extension:genesys:purecloud:2.0:User": {
"externalIds": [
{
"authority": "https://idp.iamfas.int.belgium.be/fas",
"value": "abcdefghijk"
},
{
"authority": "microsoftteams",
"value": "yyyyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyy"
},
{
"authority": "https://idp.iamfas.belgium.be/fas",
"value": "abcdefghijk"
}
]
}
}
Does anyone know how I can use the more fine grained api's?
Thanks
#API/Integrations
#Security
------------------------------
Stijn Serry
Technical Coordinator CRM
------------------------------