SDK Invoke-CCRefreshIdentities for a single user

When using the API

https://.api.identitynow.com/cc/api/system/refreshIdentities

and passing the body:

{
    "filter": "uid == \"<UserID>\"",
    "refreshArgs": {
        "correlateEntitlements": "True",
        "promoteAttributes": "True",
        "refreshManagerStatus": "True",
        "synchronizeAttributes": "True",
        "pruneIdentities": "False",
        "provision": "True"
    }
}

It will correctly refresh that single identity. However passing that same body to

Invoke-CCRefreshIdentities

will trigger a full identity refresh of my environment. Is there something different I need to pass? Is there a switch I need to include to limit this to a single ID?

Hello @BCyr,

Welcome to the Developer Community!

I tested this out and the SDK does not properly send the request body to the endpoint due to an invalid schema definition within the SDK. As of now, no matter what you provide to the endpoint it will do a full refresh.

I am working on a fix for this and I will report back here as soon as I can!

Excellent. I look forward to trying out the updated version.

Hey @BCyr,

This should all be fixed, give it a try. You will have to upgrade your SDK version to 1.1.1 PowerShell Gallery | PSSailpoint 1.1.1

Here is the script I used to test. The -WithHttpInfo flag returns the headers, status, and response from the API instead of just the response. It is a little easier to see that the request was successful this way.

$RefreshBody = @"
{
    "filter" : "uid == \"5433236\"",
    "refreshArgs" : {
      "correlateEntitlements" : "true",
      "promoteAttributes" : "true",
      "refreshManagerStatus" : "false",
      "synchronizeAttributes" : "false",
      "pruneIdentities" : "false",
      "provision" : "true"
    }
 }
"@

$RefreshIdentitiesRequest = ConvertFrom-CCJsonToRefreshIdentitiesRequest -Json $RefreshBody


try {
    Invoke-CCRefreshIdentities -RefreshIdentitiesRequest $RefreshIdentitiesRequest -WithHttpInfo
} catch {
    Write-Host ("Exception occurred when calling Invoke-CCRefreshIdentities: {0}" -f $_.ErrorDetails)
    Write-Host ("Response headers: {0}" -f $_.Exception.Response.Headers)
}