- path: /access-profiles method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-profiles#create-access-profile source: | $AccessProfile = @" { "owner" : { "name" : "support", "id" : "2c9180a46faadee4016fb4e018c20639", "type" : "IDENTITY" }, "entitlements" : [ { "name" : "CN=entitlement.490efde5,OU=OrgCo,OU=ServiceDept,DC=HQAD,DC=local", "id" : "2c91809773dee32014e13e122092014e", "type" : "ENTITLEMENT" }, { "name" : "CN=entitlement.490efde5,OU=OrgCo,OU=ServiceDept,DC=HQAD,DC=local", "id" : "2c91809773dee32014e13e122092014e", "type" : "ENTITLEMENT" } ], "created" : "2021-03-01T22:32:58.104Z", "description" : "Collection of entitlements to read/write the employee database", "source" : { "name" : "ODS-AD-SOURCE", "id" : "2c91809773dee3610173fdb0b6061ef4", "type" : "SOURCE" }, "enabled" : true, "revocationRequestConfig" : { "approvalSchemes" : [ { "approverId" : "46c79819-a69f-49a2-becb-12c971ae66c6", "approverType" : "GOVERNANCE_GROUP" }, { "approverId" : "46c79819-a69f-49a2-becb-12c971ae66c6", "approverType" : "GOVERNANCE_GROUP" } ] }, "segments" : [ "f7b1b8a3-5fed-4fd4-ad29-82014e137e19", "29cb6c06-1da8-43ea-8be4-b3125f248f2a" ], "accessRequestConfig" : { "commentsRequired" : true, "reauthorizationRequired" : true, "approvalSchemes" : [ { "approverId" : "46c79819-a69f-49a2-becb-12c971ae66c6", "approverType" : "GOVERNANCE_GROUP" }, { "approverId" : "46c79819-a69f-49a2-becb-12c971ae66c6", "approverType" : "GOVERNANCE_GROUP" } ], "denialCommentsRequired" : true }, "name" : "Employee-database-read-write", "provisioningCriteria" : { "children" : [ { "children" : [ { "children" : "children", "attribute" : "email", "operation" : "EQUALS", "value" : "carlee.cert1c9f9b6fd@mailinator.com" }, { "children" : "children", "attribute" : "email", "operation" : "EQUALS", "value" : "carlee.cert1c9f9b6fd@mailinator.com" } ], "attribute" : "email", "operation" : "EQUALS", "value" : "carlee.cert1c9f9b6fd@mailinator.com" }, { "children" : [ { "children" : "children", "attribute" : "email", "operation" : "EQUALS", "value" : "carlee.cert1c9f9b6fd@mailinator.com" }, { "children" : "children", "attribute" : "email", "operation" : "EQUALS", "value" : "carlee.cert1c9f9b6fd@mailinator.com" } ], "attribute" : "email", "operation" : "EQUALS", "value" : "carlee.cert1c9f9b6fd@mailinator.com" } ], "attribute" : "email", "operation" : "EQUALS", "value" : "carlee.cert1c9f9b6fd@mailinator.com" }, "modified" : "2021-03-02T20:22:28.104Z", "id" : "2c91808a7190d06e01719938fcd20792", "requestable" : true } "@ # Create access profile try { $Result = ConvertFrom-JsonToAccessProfile -Json $AccessProfile New-AccessProfile -AccessProfile $Result # Below is a request that includes all optional parameters # New-AccessProfile -AccessProfile $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-AccessProfile" Write-Host $_.ErrorDetails } - path: /access-profiles/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-profiles#delete-access-profile source: | $Id = "2c91808a7813090a017814121919ecca" # String | ID of the Access Profile to delete # Delete the specified access profile try { Remove-AccessProfile -Id $Id # Below is a request that includes all optional parameters # Remove-AccessProfile -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-AccessProfile" Write-Host $_.ErrorDetails } - path: /access-profiles/bulk-delete method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-profiles#delete-access-profiles-in-bulk source: | $AccessProfileBulkDeleteRequest = @" { "accessProfileIds" : [ "2c9180847812e0b1017817051919ecca", "2c9180887812e0b201781e129f151816" ], "bestEffortOnly" : true } "@ # Delete access profile(s) try { $Result = ConvertFrom-JsonToAccessProfileBulkDeleteRequest -Json $AccessProfileBulkDeleteRequest Remove-AccessProfilesInBulk -AccessProfileBulkDeleteRequest $Result # Below is a request that includes all optional parameters # Remove-AccessProfilesInBulk -AccessProfileBulkDeleteRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-AccessProfilesInBulk" Write-Host $_.ErrorDetails } - path: /access-profiles/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-profiles#get-access-profile source: | $Id = "2c9180837ca6693d017ca8d097500149" # String | ID of the Access Profile # Get an access profile try { Get-AccessProfile -Id $Id # Below is a request that includes all optional parameters # Get-AccessProfile -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AccessProfile" Write-Host $_.ErrorDetails } - path: /access-profiles/{id}/entitlements method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-profiles#get-access-profile-entitlements source: | $Id = "2c91808a7813090a017814121919ecca" # String | ID of the access profile containing the entitlements. $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "attribute eq "memberOf"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, sw* **attribute**: *eq, sw* **value**: *eq, sw* **created**: *gt, lt, ge, le* **modified**: *gt, lt, ge, le* **owner.id**: *eq, in* **source.id**: *eq, in* Filtering is not supported for access profiles and entitlements that have the '+' symbol in their names. (optional) $Sorters = "name,-modified" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, attribute, value, created, modified** (optional) # List access profile's entitlements try { Get-AccessProfileEntitlements -Id $Id # Below is a request that includes all optional parameters # Get-AccessProfileEntitlements -Id $Id -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AccessProfileEntitlements" Write-Host $_.ErrorDetails } - path: /access-profiles method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-profiles#list-access-profiles source: | $ForSubadmin = "8c190e6787aa4ed9a90bd9d5344523fb" # String | Filters the returned list according to what is visible to the indicated ROLE_SUBADMIN or SOURCE_SUBADMIN identity. The value of the parameter is either an identity ID or the special value **me**, which is shorthand for the calling identity's ID. If you specify an identity that isn't a subadmin, the API returns a 400 Bad Request error. (optional) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "name eq "SailPoint Support"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, sw* **created**: *gt, ge, le* **modified**: *gt, lt, ge, le* **owner.id**: *eq, in* **requestable**: *eq* **source.id**: *eq, in* Supported composite operators are *and, or* Filtering is not supported for access profiles and entitlements that have the '+' symbol in their names. (optional) $Sorters = "name,-modified" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** (optional) $ForSegmentIds = "0b5c9f25-83c6-4762-9073-e38f7bb2ae26,2e8d8180-24bc-4d21-91c6-7affdb473b0d" # String | Filters access profiles to only those assigned to the segment(s) with the specified IDs. If segmentation is currently unavailable, specifying this parameter results in an error. (optional) $IncludeUnsegmented = $false # Boolean | Indicates whether the response list should contain unsegmented access profiles. If `for-segment-ids` is absent or empty, specifying *include-unsegmented* as `false` results in an error. (optional) (default to $true) # List access profiles try { Get-AccessProfiles # Below is a request that includes all optional parameters # Get-AccessProfiles -ForSubadmin $ForSubadmin -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters -ForSegmentIds $ForSegmentIds -IncludeUnsegmented $IncludeUnsegmented } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AccessProfiles" Write-Host $_.ErrorDetails } - path: /access-profiles/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-profiles#patch-access-profile source: | $Id = "2c91808a7813090a017814121919ecca" # String | ID of the Access Profile to patch $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Patch a specified access profile try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-AccessProfile -Id $Id -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-AccessProfile -Id $Id -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-AccessProfile" Write-Host $_.ErrorDetails } - path: /access-request-approvals/{approvalId}/approve method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-request-approvals#approve-access-request source: | $ApprovalId = "2c91808b7294bea301729568c68c002e" # String | Approval ID. $CommentDto = @" { "created" : "2017-07-11T18:45:37.098Z", "author" : { "name" : "john.doe", "id" : "2c9180847e25f377017e2ae8cae4650b", "type" : "IDENTITY" }, "comment" : "This is a comment." } "@ # Approve access request approval try { Approve-AccessRequest -ApprovalId $ApprovalId # Below is a request that includes all optional parameters # Approve-AccessRequest -ApprovalId $ApprovalId -CommentDto $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Approve-AccessRequest" Write-Host $_.ErrorDetails } - path: /access-request-approvals/{approvalId}/forward method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-request-approvals#forward-access-request source: | $ApprovalId = "2c91808b7294bea301729568c68c002e" # String | Approval ID. $ForwardApprovalDto = @" { "newOwnerId" : "2c91808568c529c60168cca6f90c1314", "comment" : "2c91808568c529c60168cca6f90c1313" } "@ # Forward access request approval try { $Result = ConvertFrom-JsonToForwardApprovalDto -Json $ForwardApprovalDto Invoke-ForwardAccessRequest -ApprovalId $ApprovalId -ForwardApprovalDto $Result # Below is a request that includes all optional parameters # Invoke-ForwardAccessRequest -ApprovalId $ApprovalId -ForwardApprovalDto $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Invoke-ForwardAccessRequest" Write-Host $_.ErrorDetails } - path: /access-request-approvals/approval-summary method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-request-approvals#get-access-request-approval-summary source: | $OwnerId = "2c91808568c529c60168cca6f90c1313" # String | The ID of the owner or approver identity of the approvals. If present, the value returns approval summary for the specified identity. * ORG_ADMIN users can call this with any identity ID value. * ORG_ADMIN user can also fetch all the approvals in the org, when owner-id is not used. * Non ORG_ADMIN users can only specify *me* or pass their own identity ID value. (optional) $FromDate = "from-date=2020-03-19T19:59:11Z" # String | This is the date and time the results will be shown from. It must be in a valid ISO-8601 format. (optional) # Get access requests approvals number try { Get-AccessRequestApprovalSummary # Below is a request that includes all optional parameters # Get-AccessRequestApprovalSummary -OwnerId $OwnerId -FromDate $FromDate } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AccessRequestApprovalSummary" Write-Host $_.ErrorDetails } - path: /access-request-approvals/completed method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-request-approvals#list-completed-approvals source: | $OwnerId = "2c91808568c529c60168cca6f90c1313" # String | If present, the value returns only completed approvals for the specified identity. * ORG_ADMIN users can call this with any identity ID value. * ORG_ADMIN users can also fetch all the approvals in the org, when owner-id is not used. * Non-ORG_ADMIN users can only specify *me* or pass their own identity ID value. (optional) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "id eq "2c91808568c529c60168cca6f90c1313"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in, ge, gt, le, lt, ne, isnull, sw* **requestedFor.id**: *eq, in, ge, gt, le, lt, ne, isnull, sw* **modified**: *gt, lt, ge, le, eq, in, ne, sw* (optional) $Sorters = "modified" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **created, modified** (optional) # Completed access request approvals list try { Get-CompletedApprovals # Below is a request that includes all optional parameters # Get-CompletedApprovals -OwnerId $OwnerId -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CompletedApprovals" Write-Host $_.ErrorDetails } - path: /access-request-approvals/pending method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-request-approvals#list-pending-approvals source: | $OwnerId = "2c91808568c529c60168cca6f90c1313" # String | If present, the value returns only pending approvals for the specified identity. * ORG_ADMIN users can call this with any identity ID value. * ORG_ADMIN users can also fetch all the approvals in the org, when owner-id is not used. * Non-ORG_ADMIN users can only specify *me* or pass their own identity ID value. (optional) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "id eq "2c91808568c529c60168cca6f90c1313"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **requestedFor.id**: *eq, in* **modified**: *gt, lt, ge, le, eq, in* **accessRequestId**: *eq, in* **created**: *gt, lt, ge, le, eq, in* (optional) $Sorters = "modified" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **created, modified** (optional) # Pending access request approvals list try { Get-PendingApprovals # Below is a request that includes all optional parameters # Get-PendingApprovals -OwnerId $OwnerId -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-PendingApprovals" Write-Host $_.ErrorDetails } - path: /access-request-approvals/{approvalId}/reject method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-request-approvals#reject-access-request source: | $ApprovalId = "2c91808b7294bea301729568c68c002e" # String | Approval ID. $CommentDto = @" { "created" : "2017-07-11T18:45:37.098Z", "author" : { "name" : "john.doe", "id" : "2c9180847e25f377017e2ae8cae4650b", "type" : "IDENTITY" }, "comment" : "This is a comment." } "@ # Reject access request approval try { $Result = ConvertFrom-JsonToCommentDto -Json $CommentDto Deny-AccessRequest -ApprovalId $ApprovalId -CommentDto $Result # Below is a request that includes all optional parameters # Deny-AccessRequest -ApprovalId $ApprovalId -CommentDto $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Deny-AccessRequest" Write-Host $_.ErrorDetails } - path: /access-requests/cancel method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-requests#cancel-access-request source: | $CancelAccessRequest = @" { "accountActivityId" : "2c9180835d2e5168015d32f890ca1581", "comment" : "I requested this role by mistake." } "@ # Cancel access request try { $Result = ConvertFrom-JsonToCancelAccessRequest -Json $CancelAccessRequest Suspend-AccessRequest -CancelAccessRequest $Result # Below is a request that includes all optional parameters # Suspend-AccessRequest -CancelAccessRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Suspend-AccessRequest" Write-Host $_.ErrorDetails } - path: /access-requests method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-requests#create-access-request source: | $AccessRequest = @" { "requestedFor" : "2c918084660f45d6016617daa9210584", "clientMetadata" : { "requestedAppId" : "2c91808f7892918f0178b78da4a305a1", "requestedAppName" : "test-app" }, "requestType" : "GRANT_ACCESS", "requestedItems" : [ { "clientMetadata" : { "requestedAppName" : "test-app", "requestedAppId" : "2c91808f7892918f0178b78da4a305a1" }, "removeDate" : "2020-07-11T21:23:15Z", "comment" : "Requesting access profile for John Doe", "id" : "2c9180835d2e5168015d32f890ca1581", "type" : "ACCESS_PROFILE", "assignmentId" : "ee48a191c00d49bf9264eb0a4fc3a9fc", "nativeIdentity" : "CN=User db3377de14bf,OU=YOURCONTAINER, DC=YOURDOMAIN" }, { "clientMetadata" : { "requestedAppName" : "test-app", "requestedAppId" : "2c91808f7892918f0178b78da4a305a1" }, "removeDate" : "2020-07-11T21:23:15Z", "comment" : "Requesting access profile for John Doe", "id" : "2c9180835d2e5168015d32f890ca1581", "type" : "ACCESS_PROFILE", "assignmentId" : "ee48a191c00d49bf9264eb0a4fc3a9fc", "nativeIdentity" : "CN=User db3377de14bf,OU=YOURCONTAINER, DC=YOURDOMAIN" }, { "clientMetadata" : { "requestedAppName" : "test-app", "requestedAppId" : "2c91808f7892918f0178b78da4a305a1" }, "removeDate" : "2020-07-11T21:23:15Z", "comment" : "Requesting access profile for John Doe", "id" : "2c9180835d2e5168015d32f890ca1581", "type" : "ACCESS_PROFILE", "assignmentId" : "ee48a191c00d49bf9264eb0a4fc3a9fc", "nativeIdentity" : "CN=User db3377de14bf,OU=YOURCONTAINER, DC=YOURDOMAIN" }, { "clientMetadata" : { "requestedAppName" : "test-app", "requestedAppId" : "2c91808f7892918f0178b78da4a305a1" }, "removeDate" : "2020-07-11T21:23:15Z", "comment" : "Requesting access profile for John Doe", "id" : "2c9180835d2e5168015d32f890ca1581", "type" : "ACCESS_PROFILE", "assignmentId" : "ee48a191c00d49bf9264eb0a4fc3a9fc", "nativeIdentity" : "CN=User db3377de14bf,OU=YOURCONTAINER, DC=YOURDOMAIN" }, { "clientMetadata" : { "requestedAppName" : "test-app", "requestedAppId" : "2c91808f7892918f0178b78da4a305a1" }, "removeDate" : "2020-07-11T21:23:15Z", "comment" : "Requesting access profile for John Doe", "id" : "2c9180835d2e5168015d32f890ca1581", "type" : "ACCESS_PROFILE", "assignmentId" : "ee48a191c00d49bf9264eb0a4fc3a9fc", "nativeIdentity" : "CN=User db3377de14bf,OU=YOURCONTAINER, DC=YOURDOMAIN" } ], "requestedForWithRequestedItems" : [ { "identityId" : "cb89bc2f1ee6445fbea12224c526ba3a", "requestedItems" : [ { "clientMetadata" : { "requestedAppName" : "test-app", "requestedAppId" : "2c91808f7892918f0178b78da4a305a1" }, "removeDate" : "2020-07-11T21:23:15Z", "accountSelection" : [ { "sourceId" : "cb89bc2f1ee6445fbea12224c526ba3a", "accounts" : [ { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" }, { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" } ] }, { "sourceId" : "cb89bc2f1ee6445fbea12224c526ba3a", "accounts" : [ { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" }, { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" } ] } ], "comment" : "Requesting access profile for John Doe", "id" : "2c9180835d2e5168015d32f890ca1581", "type" : "ACCESS_PROFILE" }, { "clientMetadata" : { "requestedAppName" : "test-app", "requestedAppId" : "2c91808f7892918f0178b78da4a305a1" }, "removeDate" : "2020-07-11T21:23:15Z", "accountSelection" : [ { "sourceId" : "cb89bc2f1ee6445fbea12224c526ba3a", "accounts" : [ { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" }, { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" } ] }, { "sourceId" : "cb89bc2f1ee6445fbea12224c526ba3a", "accounts" : [ { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" }, { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" } ] } ], "comment" : "Requesting access profile for John Doe", "id" : "2c9180835d2e5168015d32f890ca1581", "type" : "ACCESS_PROFILE" } ] }, { "identityId" : "cb89bc2f1ee6445fbea12224c526ba3a", "requestedItems" : [ { "clientMetadata" : { "requestedAppName" : "test-app", "requestedAppId" : "2c91808f7892918f0178b78da4a305a1" }, "removeDate" : "2020-07-11T21:23:15Z", "accountSelection" : [ { "sourceId" : "cb89bc2f1ee6445fbea12224c526ba3a", "accounts" : [ { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" }, { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" } ] }, { "sourceId" : "cb89bc2f1ee6445fbea12224c526ba3a", "accounts" : [ { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" }, { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" } ] } ], "comment" : "Requesting access profile for John Doe", "id" : "2c9180835d2e5168015d32f890ca1581", "type" : "ACCESS_PROFILE" }, { "clientMetadata" : { "requestedAppName" : "test-app", "requestedAppId" : "2c91808f7892918f0178b78da4a305a1" }, "removeDate" : "2020-07-11T21:23:15Z", "accountSelection" : [ { "sourceId" : "cb89bc2f1ee6445fbea12224c526ba3a", "accounts" : [ { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" }, { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" } ] }, { "sourceId" : "cb89bc2f1ee6445fbea12224c526ba3a", "accounts" : [ { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" }, { "accountUuid" : "{fab7119e-004f-4822-9c33-b8d570d6c6a6}", "nativeIdentity" : "CN=Glen 067da3248e914,OU=YOUROU,OU=org-data-service,DC=YOURDC,DC=local" } ] } ], "comment" : "Requesting access profile for John Doe", "id" : "2c9180835d2e5168015d32f890ca1581", "type" : "ACCESS_PROFILE" } ] } ] } "@ # Submit access request try { $Result = ConvertFrom-JsonToAccessRequest -Json $AccessRequest New-AccessRequest -AccessRequest $Result # Below is a request that includes all optional parameters # New-AccessRequest -AccessRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-AccessRequest" Write-Host $_.ErrorDetails } - path: /access-request-config method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-requests#get-access-request-config source: | # Get access request configuration try { Get-AccessRequestConfig # Below is a request that includes all optional parameters # Get-AccessRequestConfig } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AccessRequestConfig" Write-Host $_.ErrorDetails } - path: /access-request-status method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-requests#list-access-request-status source: | $RequestedFor = "2c9180877b2b6ea4017b2c545f971429" # String | Filter the results by the identity the requests were made for. *me* indicates the current user. Mutually exclusive with *regarding-identity*. (optional) $RequestedBy = "2c9180877b2b6ea4017b2c545f971429" # String | Filter the results by the identity who made the requests. *me* indicates the current user. Mutually exclusive with *regarding-identity*. (optional) $RegardingIdentity = "2c9180877b2b6ea4017b2c545f971429" # String | Filter the results by the specified identity who is either the requester or target of the requests. *me* indicates the current user. Mutually exclusive with *requested-for* and *requested-by*. (optional) $AssignedTo = "2c9180877b2b6ea4017b2c545f971429" # String | Filter the results by the specified identity who is the owner of the Identity Request Work Item. *me* indicates the current user. (optional) $Count = $false # Boolean | If this is true, the *X-Total-Count* response header populates with the number of results that would be returned if limit and offset were ignored. (optional) (default to $false) $Limit = 100 # Int32 | Max number of results to return. (optional) (default to 250) $Offset = 10 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. Defaults to 0 if not specified. (optional) $Filters = "accountActivityItemId eq "2c918086771c86df0177401efcdf54c0"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **accessRequestId**: *eq, in, ge, gt, le, lt, ne, sw* **accountActivityItemId**: *eq, in, ge, gt, le, lt, ne, isnull, sw* **created**: *eq, in, ge, gt, le, lt, ne, isnull, sw* (optional) $Sorters = "created" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **created, modified, accountActivityItemId, name** (optional) $RequestState = "request-state=EXECUTING" # String | Filter the results by the state of the request. The only valid value is *EXECUTING*. (optional) # Access request status try { Get-AccessRequestStatus # Below is a request that includes all optional parameters # Get-AccessRequestStatus -RequestedFor $RequestedFor -RequestedBy $RequestedBy -RegardingIdentity $RegardingIdentity -AssignedTo $AssignedTo -Count $Count -Limit $Limit -Offset $Offset -Filters $Filters -Sorters $Sorters -RequestState $RequestState } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AccessRequestStatus" Write-Host $_.ErrorDetails } - path: /access-request-config method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/access-requests#set-access-request-config source: | $AccessRequestConfig = @" { "requestOnBehalfOfConfig" : { "allowRequestOnBehalfOfEmployeeByManager" : true, "allowRequestOnBehalfOfAnyoneByAnyone" : true }, "approvalReminderAndEscalationConfig" : { "fallbackApproverRef" : { "name" : "Alison Ferguso", "id" : "5168015d32f890ca15812c9180835d2e", "type" : "IDENTITY", "email" : "alison.ferguso@identitysoon.com" }, "maxReminders" : 1, "daysUntilEscalation" : 0, "daysBetweenReminders" : 0 }, "autoApprovalEnabled" : true, "entitlementRequestConfig" : { "requestCommentsRequired" : false, "deniedCommentsRequired" : false, "allowEntitlementRequest" : true, "grantRequestApprovalSchemes" : "entitlementOwner, sourceOwner, manager, workgroup:2c918084660f45d6016617daa9210584" }, "reauthorizationEnabled" : true, "approvalsMustBeExternal" : true } "@ # Update access request configuration try { $Result = ConvertFrom-JsonToAccessRequestConfig -Json $AccessRequestConfig Set-AccessRequestConfig -AccessRequestConfig $Result # Below is a request that includes all optional parameters # Set-AccessRequestConfig -AccessRequestConfig $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Set-AccessRequestConfig" Write-Host $_.ErrorDetails } - path: /account-activities/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/account-activities#get-account-activity source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The account activity id # Get an account activity try { Get-AccountActivity -Id $Id # Below is a request that includes all optional parameters # Get-AccountActivity -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AccountActivity" Write-Host $_.ErrorDetails } - path: /account-activities method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/account-activities#list-account-activities source: | $RequestedFor = "2c91808568c529c60168cca6f90c1313" # String | The identity that the activity was requested for. *me* indicates the current user. Mutually exclusive with *regarding-identity*. (optional) $RequestedBy = "2c91808568c529c60168cca6f90c1313" # String | The identity that requested the activity. *me* indicates the current user. Mutually exclusive with *regarding-identity*. (optional) $RegardingIdentity = "2c91808568c529c60168cca6f90c1313" # String | The specified identity will be either the requester or target of the account activity. *me* indicates the current user. Mutually exclusive with *requested-for* and *requested-by*. (optional) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "type eq "Identity Refresh"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **type**: *eq, in, ge, le, lt, ne, isnull, sw* **created**: *gt, lt, ge, le, eq, in, ne, isnull, sw* **modified**: *gt, lt, ge, le, eq, in, ne, isnull, sw* (optional) $Sorters = "created" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **type, created, modified** (optional) # List account activities try { Get-AccountActivities # Below is a request that includes all optional parameters # Get-AccountActivities -RequestedFor $RequestedFor -RequestedBy $RequestedBy -RegardingIdentity $RegardingIdentity -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AccountActivities" Write-Host $_.ErrorDetails } - path: /account-usages/{accountId}/summaries method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/account-usages#get-usages-by-account-id source: | $AccountId = "ef38f94347e94562b5bb8424a56397d8" # String | ID of IDN account $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Sorters = "-date" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **date** (optional) # Returns account usage insights try { Get-UsagesByAccountId -AccountId $AccountId # Below is a request that includes all optional parameters # Get-UsagesByAccountId -AccountId $AccountId -Limit $Limit -Offset $Offset -Count $Count -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-UsagesByAccountId" Write-Host $_.ErrorDetails } - path: /accounts method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/accounts#create-account source: | $AccountAttributesCreate = @" { "attributes" : { "sourceId" : "34bfcbe116c9407464af37acbaf7a4dc", "city" : "Austin", "displayName" : "John Doe", "userName" : "jdoe", "sAMAccountName" : "jDoe", "mail" : "john.doe@sailpoint.com" } } "@ # Create account try { $Result = ConvertFrom-JsonToAccountAttributesCreate -Json $AccountAttributesCreate New-Account -AccountAttributesCreate $Result # Below is a request that includes all optional parameters # New-Account -AccountAttributesCreate $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-Account" Write-Host $_.ErrorDetails } - path: /accounts/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/accounts#delete-account source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | Account ID. # Delete account try { Remove-Account -Id $Id # Below is a request that includes all optional parameters # Remove-Account -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-Account" Write-Host $_.ErrorDetails } - path: /accounts/{id}/disable method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/accounts#disable-account source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The account id $AccountToggleRequest = @" { "forceProvisioning" : false, "externalVerificationId" : "3f9180835d2e5168015d32f890ca1581" } "@ # Disable account try { $Result = ConvertFrom-JsonToAccountToggleRequest -Json $AccountToggleRequest Disable-Account -Id $Id -AccountToggleRequest $Result # Below is a request that includes all optional parameters # Disable-Account -Id $Id -AccountToggleRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Disable-Account" Write-Host $_.ErrorDetails } - path: /accounts/{id}/enable method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/accounts#enable-account source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The account id $AccountToggleRequest = @" { "forceProvisioning" : false, "externalVerificationId" : "3f9180835d2e5168015d32f890ca1581" } "@ # Enable account try { $Result = ConvertFrom-JsonToAccountToggleRequest -Json $AccountToggleRequest Enable-Account -Id $Id -AccountToggleRequest $Result # Below is a request that includes all optional parameters # Enable-Account -Id $Id -AccountToggleRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Enable-Account" Write-Host $_.ErrorDetails } - path: /accounts/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/accounts#get-account source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | Account ID. # Account details try { Get-Account -Id $Id # Below is a request that includes all optional parameters # Get-Account -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Account" Write-Host $_.ErrorDetails } - path: /accounts/{id}/entitlements method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/accounts#get-account-entitlements source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The account id $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) # Account entitlements try { Get-AccountEntitlements -Id $Id # Below is a request that includes all optional parameters # Get-AccountEntitlements -Id $Id -Limit $Limit -Offset $Offset -Count $Count } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AccountEntitlements" Write-Host $_.ErrorDetails } - path: /accounts method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/accounts#list-accounts source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $DetailLevel = "SLIM" # String | This value determines whether the API provides `SLIM` or increased level of detail (`FULL`) for each account in the returned list. `FULL` is the default behavior. (optional) $Filters = "identityId eq "2c9180858082150f0180893dbaf44201"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in, sw* **identityId**: *eq, in, sw* **name**: *eq, in, sw* **nativeIdentity**: *eq, in, sw* **hasEntitlements**: *eq* **sourceId**: *eq, in, sw* **uncorrelated**: *eq* **entitlements**: *eq* **origin**: *eq, in* **manuallyCorrelated**: *eq* **identity.name**: *eq, in, sw* **identity.correlated**: *eq* **identity.identityState**: *eq, in* **source.displayableName**: *eq, in* **source.authoritative**: *eq* **source.connectionType**: *eq, in* **recommendation.method**: *eq, in, isnull* **created**: *eq, ge, gt, le, lt* **modified**: *eq, ge, gt, le, lt* (optional) $Sorters = "id,name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, created, modified, sourceId, identityId, nativeIdentity, uuid, manuallyCorrelated, entitlements, origin, identity.name, identity.identityState, identity.correlated, source.displayableName, source.authoritative, source.connectionType** (optional) # Accounts list try { Get-Accounts # Below is a request that includes all optional parameters # Get-Accounts -Limit $Limit -Offset $Offset -Count $Count -DetailLevel $DetailLevel -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Accounts" Write-Host $_.ErrorDetails } - path: /accounts/{id} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/accounts#put-account source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | Account ID. $AccountAttributes = @" { "attributes" : { "city" : "Austin", "displayName" : "John Doe", "userName" : "jdoe", "sAMAccountName" : "jDoe", "mail" : "john.doe@sailpoint.com" } } "@ # Update account try { $Result = ConvertFrom-JsonToAccountAttributes -Json $AccountAttributes Send-Account -Id $Id -AccountAttributes $Result # Below is a request that includes all optional parameters # Send-Account -Id $Id -AccountAttributes $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-Account" Write-Host $_.ErrorDetails } - path: /accounts/{id}/reload method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/accounts#submit-reload-account source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The account id # Reload account try { Submit-ReloadAccount -Id $Id # Below is a request that includes all optional parameters # Submit-ReloadAccount -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Submit-ReloadAccount" Write-Host $_.ErrorDetails } - path: /accounts/{id}/unlock method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/accounts#unlock-account source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The account ID. $AccountUnlockRequest = @" { "forceProvisioning" : false, "externalVerificationId" : "3f9180835d2e5168015d32f890ca1581", "unlockIDNAccount" : false } "@ # Unlock account try { $Result = ConvertFrom-JsonToAccountUnlockRequest -Json $AccountUnlockRequest Unlock-Account -Id $Id -AccountUnlockRequest $Result # Below is a request that includes all optional parameters # Unlock-Account -Id $Id -AccountUnlockRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Unlock-Account" Write-Host $_.ErrorDetails } - path: /accounts/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/accounts#update-account source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | Account ID. $RequestBody = # SystemCollectionsHashtable[] | A list of account update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. $RequestBody = @"[{op=remove, path=/identityId}]"@ # Update account try { $Result = ConvertFrom-JsonToRequestBody -Json $RequestBody Update-Account -Id $Id -RequestBody $Result # Below is a request that includes all optional parameters # Update-Account -Id $Id -RequestBody $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-Account" Write-Host $_.ErrorDetails } - path: /discovered-applications method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/application-discovery#get-discovered-applications source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Detail = "SLIM" # String | Determines whether slim, or increased level of detail is provided for each discovered application in the returned list. SLIM is the default behavior. (optional) $Filter = "name eq "Okta" and description co "Okta" and discoverySource in ("csv", "Okta Saas")" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **name**: *eq, sw, co* **description**: *eq, sw, co* **createdAtStart**: *eq, le, ge* **createdAtEnd**: *eq, le, ge* **discoveredAtStart**: *eq, le, ge* **discoveredAtEnd**: *eq, le, ge* **discoverySource**: *eq, in* (optional) $Sorters = "name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, description, discoveredAt, discoverySource** (optional) # Get discovered applications for tenant try { Get-DiscoveredApplications # Below is a request that includes all optional parameters # Get-DiscoveredApplications -Limit $Limit -Offset $Offset -Detail $Detail -Filter $Filter -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-DiscoveredApplications" Write-Host $_.ErrorDetails } - path: /manual-discover-applications-template method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/application-discovery#get-manual-discover-applications-csv-template source: | # Download csv template for discovery try { Get-ManualDiscoverApplicationsCsvTemplate # Below is a request that includes all optional parameters # Get-ManualDiscoverApplicationsCsvTemplate } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ManualDiscoverApplicationsCsvTemplate" Write-Host $_.ErrorDetails } - path: /manual-discover-applications method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/application-discovery#send-manual-discover-applications-csv-template source: | $File = # System.IO.FileInfo | The CSV file to upload containing `application_name` and `description` columns. Each row represents an application to be discovered. # Upload csv to discover applications try { Send-ManualDiscoverApplicationsCsvTemplate -File $File # Below is a request that includes all optional parameters # Send-ManualDiscoverApplicationsCsvTemplate -File $File } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-ManualDiscoverApplicationsCsvTemplate" Write-Host $_.ErrorDetails } - path: /auth-users/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/auth-users#get-auth-user source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | Identity ID # Auth user details try { Get-AuthUser -Id $Id # Below is a request that includes all optional parameters # Get-AuthUser -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AuthUser" Write-Host $_.ErrorDetails } - path: /auth-users/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/auth-users#patch-auth-user source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | Identity ID $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Auth user update try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-AuthUser -Id $Id -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-AuthUser -Id $Id -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-AuthUser" Write-Host $_.ErrorDetails } - path: /brandings method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/branding#create-branding-item source: | $Name = "MyName" # String | name of branding item $ProductName = "MyProductName" # String | product name $ActionButtonColor = "MyActionButtonColor" # String | hex value of color for action button (optional) $ActiveLinkColor = "MyActiveLinkColor" # String | hex value of color for link (optional) $NavigationColor = "MyNavigationColor" # String | hex value of color for navigation bar (optional) $EmailFromAddress = "MyEmailFromAddress" # String | email from address (optional) $LoginInformationalMessage = "MyLoginInformationalMessage" # String | login information message (optional) $FileStandard = # System.IO.FileInfo | png file with logo (optional) # Create a branding item try { New-BrandingItem -Name $Name -ProductName $ProductName # Below is a request that includes all optional parameters # New-BrandingItem -Name $Name -ProductName $ProductName -ActionButtonColor $ActionButtonColor -ActiveLinkColor $ActiveLinkColor -NavigationColor $NavigationColor -EmailFromAddress $EmailFromAddress -LoginInformationalMessage $LoginInformationalMessage -FileStandard $FileStandard } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-BrandingItem" Write-Host $_.ErrorDetails } - path: /brandings/{name} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/branding#delete-branding source: | $Name = "default" # String | The name of the branding item to be deleted # Delete a branding item try { Remove-Branding -Name $Name # Below is a request that includes all optional parameters # Remove-Branding -Name $Name } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-Branding" Write-Host $_.ErrorDetails } - path: /brandings/{name} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/branding#get-branding source: | $Name = "default" # String | The name of the branding item to be retrieved # Get a branding item try { Get-Branding -Name $Name # Below is a request that includes all optional parameters # Get-Branding -Name $Name } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Branding" Write-Host $_.ErrorDetails } - path: /brandings method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/branding#get-branding-list source: | # List of branding items try { Get-BrandingList # Below is a request that includes all optional parameters # Get-BrandingList } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-BrandingList" Write-Host $_.ErrorDetails } - path: /brandings/{name} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/branding#set-branding-item source: | $Name = "default" # String | The name of the branding item to be retrieved $Name2 = "Name_example" # String | name of branding item $ProductName = "MyProductName" # String | product name $ActionButtonColor = "MyActionButtonColor" # String | hex value of color for action button (optional) $ActiveLinkColor = "MyActiveLinkColor" # String | hex value of color for link (optional) $NavigationColor = "MyNavigationColor" # String | hex value of color for navigation bar (optional) $EmailFromAddress = "MyEmailFromAddress" # String | email from address (optional) $LoginInformationalMessage = "MyLoginInformationalMessage" # String | login information message (optional) $FileStandard = # System.IO.FileInfo | png file with logo (optional) # Update a branding item try { Set-BrandingItem -Name $Name -Name2 $Name2 -ProductName $ProductName # Below is a request that includes all optional parameters # Set-BrandingItem -Name $Name -Name2 $Name2 -ProductName $ProductName -ActionButtonColor $ActionButtonColor -ActiveLinkColor $ActiveLinkColor -NavigationColor $NavigationColor -EmailFromAddress $EmailFromAddress -LoginInformationalMessage $LoginInformationalMessage -FileStandard $FileStandard } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Set-BrandingItem" Write-Host $_.ErrorDetails } - path: /campaign-filters method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaign-filters#create-campaign-filter source: | $CampaignFilterDetails = @" { "owner" : "SailPoint Support", "mode" : "INCLUSION", "isSystemFilter" : false, "name" : "Identity Attribute Campaign Filter", "description" : "Campaign filter to certify data based on an identity attribute's specified property.", "id" : "5ec18cef39020d6fd7a60ad3970aba61", "criteriaList" : [ { "type" : "IDENTITY_ATTRIBUTE", "property" : "displayName", "value" : "support", "operation" : "CONTAINS", "negateResult" : false, "shortCircuit" : false, "recordChildMatches" : false, "suppressMatchedItems" : false } ] } "@ # Create campaign filter try { $Result = ConvertFrom-JsonToCampaignFilterDetails -Json $CampaignFilterDetails New-CampaignFilter -CampaignFilterDetails $Result # Below is a request that includes all optional parameters # New-CampaignFilter -CampaignFilterDetails $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-CampaignFilter" Write-Host $_.ErrorDetails } - path: /campaign-filters/delete method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaign-filters#delete-campaign-filters source: | $RequestBody = "MyRequestBody" # String[] | A json list of IDs of campaign filters to delete. $RequestBody = @""@ # Deletes campaign filters try { $Result = ConvertFrom-JsonToRequestBody -Json $RequestBody Remove-CampaignFilters -RequestBody $Result # Below is a request that includes all optional parameters # Remove-CampaignFilters -RequestBody $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-CampaignFilters" Write-Host $_.ErrorDetails } - path: /campaign-filters/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaign-filters#get-campaign-filter-by-id source: | $Id = "e9f9a1397b842fd5a65842087040d3ac" # String | The ID of the campaign filter to be retrieved. # Get campaign filter by id try { Get-CampaignFilterById -Id $Id # Below is a request that includes all optional parameters # Get-CampaignFilterById -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CampaignFilterById" Write-Host $_.ErrorDetails } - path: /campaign-filters method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaign-filters#list-campaign-filters source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Start = 0 # Int32 | Start/Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $IncludeSystemFilters = $true # Boolean | If this is true, the API includes system filters in the count and results. Otherwise it excludes them. If no value is provided, the default is true. (optional) (default to $true) # List campaign filters try { Get-CampaignFilters # Below is a request that includes all optional parameters # Get-CampaignFilters -Limit $Limit -Start $Start -IncludeSystemFilters $IncludeSystemFilters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CampaignFilters" Write-Host $_.ErrorDetails } - path: /campaign-filters/{id} method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaign-filters#update-campaign-filter source: | $FilterId = "e9f9a1397b842fd5a65842087040d3ac" # String | The ID of the campaign filter being modified. $CampaignFilterDetails = @" { "owner" : "SailPoint Support", "mode" : "INCLUSION", "isSystemFilter" : false, "name" : "Identity Attribute Campaign Filter", "description" : "Campaign filter to certify data based on an identity attribute's specified property.", "id" : "5ec18cef39020d6fd7a60ad3970aba61", "criteriaList" : [ { "type" : "IDENTITY_ATTRIBUTE", "property" : "displayName", "value" : "support", "operation" : "CONTAINS", "negateResult" : false, "shortCircuit" : false, "recordChildMatches" : false, "suppressMatchedItems" : false } ] } "@ # Updates a campaign filter try { $Result = ConvertFrom-JsonToCampaignFilterDetails -Json $CampaignFilterDetails Update-CampaignFilter -FilterId $FilterId -CampaignFilterDetails $Result # Below is a request that includes all optional parameters # Update-CampaignFilter -FilterId $FilterId -CampaignFilterDetails $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-CampaignFilter" Write-Host $_.ErrorDetails } - path: /campaigns/{id}/complete method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#complete-campaign source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | Campaign ID. $CampaignCompleteOptions = @" { "autoCompleteAction" : "REVOKE" } "@ # Complete a campaign try { Complete-Campaign -Id $Id # Below is a request that includes all optional parameters # Complete-Campaign -Id $Id -CampaignCompleteOptions $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Complete-Campaign" Write-Host $_.ErrorDetails } - path: /campaigns method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#create-campaign source: | $Campaign = @" { "totalCertifications" : 100, "sourcesWithOrphanEntitlements" : [ { "name" : "Source with orphan entitlements", "id" : "2c90ad2a70ace7d50170acf22ca90010", "type" : "SOURCE" }, { "name" : "Source with orphan entitlements", "id" : "2c90ad2a70ace7d50170acf22ca90010", "type" : "SOURCE" } ], "recommendationsEnabled" : true, "sunsetCommentsRequired" : true, "created" : "2020-03-03T22:15:13.611Z", "machineAccountCampaignInfo" : { "reviewerType" : "ACCOUNT_OWNER", "sourceIds" : [ "0fbe863c063c4c88a35fd7f17e8a3df5" ] }, "description" : "Everyone needs to be reviewed by their manager", "type" : "MANAGER", "sourceOwnerCampaignInfo" : { "sourceIds" : [ "0fbe863c063c4c88a35fd7f17e8a3df5" ] }, "emailNotificationEnabled" : false, "alerts" : [ { "level" : "ERROR", "localizations" : [ { "localeOrigin" : "DEFAULT", "text" : "The request was syntactically correct but its content is semantically invalid.", "locale" : "en-US" }, { "localeOrigin" : "DEFAULT", "text" : "The request was syntactically correct but its content is semantically invalid.", "locale" : "en-US" } ] }, { "level" : "ERROR", "localizations" : [ { "localeOrigin" : "DEFAULT", "text" : "The request was syntactically correct but its content is semantically invalid.", "locale" : "en-US" }, { "localeOrigin" : "DEFAULT", "text" : "The request was syntactically correct but its content is semantically invalid.", "locale" : "en-US" } ] } ], "filter" : { "name" : "Test Filter", "id" : "0fbe863c063c4c88a35fd7f17e8a3df5", "type" : "CAMPAIGN_FILTER" }, "searchCampaignInfo" : { "identityIds" : [ "0fbe863c063c4c88a35fd7f17e8a3df5" ], "query" : "Search Campaign query description", "description" : "Search Campaign description", "reviewer" : { "name" : "William Wilson", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" }, "type" : "ACCESS", "accessConstraints" : [ { "ids" : [ "2c90ad2a70ace7d50170acf22ca90010" ], "type" : "ENTITLEMENT", "operator" : "SELECTED" }, { "ids" : [ "2c90ad2a70ace7d50170acf22ca90010" ], "type" : "ENTITLEMENT", "operator" : "SELECTED" }, { "ids" : [ "2c90ad2a70ace7d50170acf22ca90010" ], "type" : "ENTITLEMENT", "operator" : "SELECTED" }, { "ids" : [ "2c90ad2a70ace7d50170acf22ca90010" ], "type" : "ENTITLEMENT", "operator" : "SELECTED" }, { "ids" : [ "2c90ad2a70ace7d50170acf22ca90010" ], "type" : "ENTITLEMENT", "operator" : "SELECTED" } ] }, "autoRevokeAllowed" : false, "name" : "Manager Campaign", "mandatoryCommentRequirement" : "NO_DECISIONS", "modified" : "2020-03-03T22:20:12.674Z", "roleCompositionCampaignInfo" : { "remediatorRef" : { "name" : "Role Admin", "id" : "2c90ad2a70ace7d50170acf22ca90010", "type" : "IDENTITY" }, "roleIds" : [ "2c90ad2a70ace7d50170acf22ca90010" ], "query" : "Search Query", "description" : "Role Composition Description", "reviewer" : { "name" : "William Wilson", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" } }, "completedCertifications" : 10, "id" : "2c9079b270a266a60170a2779fcb0007", "deadline" : "2020-03-15T10:00:01.456Z", "status" : "ACTIVE", "correlatedStatus" : "CORRELATED" } "@ # Create a campaign try { $Result = ConvertFrom-JsonToCampaign -Json $Campaign New-Campaign -Campaign $Result # Below is a request that includes all optional parameters # New-Campaign -Campaign $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-Campaign" Write-Host $_.ErrorDetails } - path: /campaign-templates method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#create-campaign-template source: | $CampaignTemplate = @" { "ownerRef" : { "name" : "Mister Manager", "id" : "2c918086676d3e0601677611dbde220f", "type" : "IDENTITY", "email" : "mr.manager@example.com" }, "deadlineDuration" : "P2W", "created" : "2020-03-05T22:44:00.364Z", "scheduled" : false, "name" : "Manager Campaign Template", "description" : "Template for the annual manager campaign.", "modified" : "2020-03-05T22:52:09.969Z", "campaign" : { "totalCertifications" : 100, "sourcesWithOrphanEntitlements" : [ { "name" : "Source with orphan entitlements", "id" : "2c90ad2a70ace7d50170acf22ca90010", "type" : "SOURCE" }, { "name" : "Source with orphan entitlements", "id" : "2c90ad2a70ace7d50170acf22ca90010", "type" : "SOURCE" } ], "recommendationsEnabled" : true, "sunsetCommentsRequired" : true, "created" : "2020-03-03T22:15:13.611Z", "machineAccountCampaignInfo" : { "reviewerType" : "ACCOUNT_OWNER", "sourceIds" : [ "0fbe863c063c4c88a35fd7f17e8a3df5" ] }, "description" : "Everyone needs to be reviewed by their manager", "type" : "MANAGER", "sourceOwnerCampaignInfo" : { "sourceIds" : [ "0fbe863c063c4c88a35fd7f17e8a3df5" ] }, "emailNotificationEnabled" : false, "alerts" : [ { "level" : "ERROR", "localizations" : [ { "localeOrigin" : "DEFAULT", "text" : "The request was syntactically correct but its content is semantically invalid.", "locale" : "en-US" }, { "localeOrigin" : "DEFAULT", "text" : "The request was syntactically correct but its content is semantically invalid.", "locale" : "en-US" } ] }, { "level" : "ERROR", "localizations" : [ { "localeOrigin" : "DEFAULT", "text" : "The request was syntactically correct but its content is semantically invalid.", "locale" : "en-US" }, { "localeOrigin" : "DEFAULT", "text" : "The request was syntactically correct but its content is semantically invalid.", "locale" : "en-US" } ] } ], "filter" : { "name" : "Test Filter", "id" : "0fbe863c063c4c88a35fd7f17e8a3df5", "type" : "CAMPAIGN_FILTER" }, "searchCampaignInfo" : { "identityIds" : [ "0fbe863c063c4c88a35fd7f17e8a3df5" ], "query" : "Search Campaign query description", "description" : "Search Campaign description", "reviewer" : { "name" : "William Wilson", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" }, "type" : "ACCESS", "accessConstraints" : [ { "ids" : [ "2c90ad2a70ace7d50170acf22ca90010" ], "type" : "ENTITLEMENT", "operator" : "SELECTED" }, { "ids" : [ "2c90ad2a70ace7d50170acf22ca90010" ], "type" : "ENTITLEMENT", "operator" : "SELECTED" }, { "ids" : [ "2c90ad2a70ace7d50170acf22ca90010" ], "type" : "ENTITLEMENT", "operator" : "SELECTED" }, { "ids" : [ "2c90ad2a70ace7d50170acf22ca90010" ], "type" : "ENTITLEMENT", "operator" : "SELECTED" }, { "ids" : [ "2c90ad2a70ace7d50170acf22ca90010" ], "type" : "ENTITLEMENT", "operator" : "SELECTED" } ] }, "autoRevokeAllowed" : false, "name" : "Manager Campaign", "mandatoryCommentRequirement" : "NO_DECISIONS", "modified" : "2020-03-03T22:20:12.674Z", "roleCompositionCampaignInfo" : { "remediatorRef" : { "name" : "Role Admin", "id" : "2c90ad2a70ace7d50170acf22ca90010", "type" : "IDENTITY" }, "roleIds" : [ "2c90ad2a70ace7d50170acf22ca90010" ], "query" : "Search Query", "description" : "Role Composition Description", "reviewer" : { "name" : "William Wilson", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" } }, "completedCertifications" : 10, "id" : "2c9079b270a266a60170a2779fcb0007", "deadline" : "2020-03-15T10:00:01.456Z", "status" : "ACTIVE", "correlatedStatus" : "CORRELATED" }, "id" : "2c9079b270a266a60170a277bb960008" } "@ # Create a campaign template try { $Result = ConvertFrom-JsonToCampaignTemplate -Json $CampaignTemplate New-CampaignTemplate -CampaignTemplate $Result # Below is a request that includes all optional parameters # New-CampaignTemplate -CampaignTemplate $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-CampaignTemplate" Write-Host $_.ErrorDetails } - path: /campaign-templates/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#delete-campaign-template source: | $Id = "2c9180835d191a86015d28455b4a2329" # String | ID of the campaign template being deleted. # Delete a campaign template try { Remove-CampaignTemplate -Id $Id # Below is a request that includes all optional parameters # Remove-CampaignTemplate -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-CampaignTemplate" Write-Host $_.ErrorDetails } - path: /campaign-templates/{id}/schedule method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#delete-campaign-template-schedule source: | $Id = "04bedce387bd47b2ae1f86eb0bb36dee" # String | ID of the campaign template whose schedule is being deleted. # Delete campaign template schedule try { Remove-CampaignTemplateSchedule -Id $Id # Below is a request that includes all optional parameters # Remove-CampaignTemplateSchedule -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-CampaignTemplateSchedule" Write-Host $_.ErrorDetails } - path: /campaigns/delete method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#delete-campaigns source: | $CampaignsDeleteRequest = @" { "ids" : [ "2c9180887335cee10173490db1776c26", "2c9180836a712436016a7125a90c0021" ] } "@ # Delete campaigns try { $Result = ConvertFrom-JsonToCampaignsDeleteRequest -Json $CampaignsDeleteRequest Remove-Campaigns -CampaignsDeleteRequest $Result # Below is a request that includes all optional parameters # Remove-Campaigns -CampaignsDeleteRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-Campaigns" Write-Host $_.ErrorDetails } - path: /campaigns method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#get-active-campaigns source: | $Detail = "SLIM" # String | Determines whether slim, or increased level of detail is provided for each campaign in the returned list. Slim is the default behavior. (optional) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "name eq "Manager Campaign"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, sw* **status**: *eq, in* (optional) $Sorters = "name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created** (optional) # List campaigns try { Get-ActiveCampaigns # Below is a request that includes all optional parameters # Get-ActiveCampaigns -Detail $Detail -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ActiveCampaigns" Write-Host $_.ErrorDetails } - path: /campaigns/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#get-campaign source: | $Id = "2c91808571bcfcf80171c23e4b4221fc" # String | ID of the campaign to be retrieved. $Detail = "SLIM" # String | Determines whether slim, or increased level of detail is provided for each campaign in the returned list. Slim is the default behavior. (optional) # Get campaign try { Get-Campaign -Id $Id # Below is a request that includes all optional parameters # Get-Campaign -Id $Id -Detail $Detail } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Campaign" Write-Host $_.ErrorDetails } - path: /campaigns/{id}/reports method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#get-campaign-reports source: | $Id = "2c91808571bcfcf80171c23e4b4221fc" # String | ID of the campaign whose reports are being fetched. # Get campaign reports try { Get-CampaignReports -Id $Id # Below is a request that includes all optional parameters # Get-CampaignReports -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CampaignReports" Write-Host $_.ErrorDetails } - path: /campaigns/reports-configuration method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#get-campaign-reports-config source: | # Get campaign reports configuration try { Get-CampaignReportsConfig # Below is a request that includes all optional parameters # Get-CampaignReportsConfig } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CampaignReportsConfig" Write-Host $_.ErrorDetails } - path: /campaign-templates/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#get-campaign-template source: | $Id = "2c9180835d191a86015d28455b4a2329" # String | Requested campaign template's ID. # Get a campaign template try { Get-CampaignTemplate -Id $Id # Below is a request that includes all optional parameters # Get-CampaignTemplate -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CampaignTemplate" Write-Host $_.ErrorDetails } - path: /campaign-templates/{id}/schedule method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#get-campaign-template-schedule source: | $Id = "04bedce387bd47b2ae1f86eb0bb36dee" # String | ID of the campaign template whose schedule is being fetched. # Get campaign template schedule try { Get-CampaignTemplateSchedule -Id $Id # Below is a request that includes all optional parameters # Get-CampaignTemplateSchedule -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CampaignTemplateSchedule" Write-Host $_.ErrorDetails } - path: /campaign-templates method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#get-campaign-templates source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Sorters = "name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** (optional) $Filters = "name eq "manager template"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **name**: *eq, ge, gt, in, le, lt, ne, sw* **id**: *eq, ge, gt, in, le, lt, ne, sw* (optional) # List campaign templates try { Get-CampaignTemplates # Below is a request that includes all optional parameters # Get-CampaignTemplates -Limit $Limit -Offset $Offset -Count $Count -Sorters $Sorters -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CampaignTemplates" Write-Host $_.ErrorDetails } - path: /campaigns/{id}/reassign method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#move source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The certification campaign ID $AdminReviewReassign = @" { "certificationIds" : [ "af3859464779471211bb8424a563abc1", "af3859464779471211bb8424a563abc2", "af3859464779471211bb8424a563abc3" ], "reason" : "reassigned for some reason", "reassignTo" : { "id" : "ef38f94347e94562b5bb8424a56397d8", "type" : "IDENTITY" } } "@ # Reassign certifications try { $Result = ConvertFrom-JsonToAdminReviewReassign -Json $AdminReviewReassign Move- -Id $Id -AdminReviewReassign $Result # Below is a request that includes all optional parameters # Move- -Id $Id -AdminReviewReassign $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Move-" Write-Host $_.ErrorDetails } - path: /campaign-templates/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#patch-campaign-template source: | $Id = "2c9180835d191a86015d28455b4a2329" # String | ID of the campaign template being modified. $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Update a campaign template try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-CampaignTemplate -Id $Id -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-CampaignTemplate -Id $Id -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-CampaignTemplate" Write-Host $_.ErrorDetails } - path: /campaigns/reports-configuration method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#set-campaign-reports-config source: | $CampaignReportsConfig = @" { "identityAttributeColumns" : [ "firstname", "lastname" ] } "@ # Set campaign reports configuration try { $Result = ConvertFrom-JsonToCampaignReportsConfig -Json $CampaignReportsConfig Set-CampaignReportsConfig -CampaignReportsConfig $Result # Below is a request that includes all optional parameters # Set-CampaignReportsConfig -CampaignReportsConfig $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Set-CampaignReportsConfig" Write-Host $_.ErrorDetails } - path: /campaign-templates/{id}/schedule method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#set-campaign-template-schedule source: | $Id = "04bedce387bd47b2ae1f86eb0bb36dee" # String | ID of the campaign template being scheduled. $Schedule = @" { "hours" : { "values" : [ "1" ], "interval" : 2, "type" : "LIST" }, "months" : { "values" : [ "1" ], "interval" : 2, "type" : "LIST" }, "timeZoneId" : "CST", "days" : { "values" : [ "1" ], "interval" : 2, "type" : "LIST" }, "expiration" : "2000-01-23T04:56:07.000+00:00", "type" : "WEEKLY" } "@ # Set campaign template schedule try { Set-CampaignTemplateSchedule -Id $Id # Below is a request that includes all optional parameters # Set-CampaignTemplateSchedule -Id $Id -Schedule $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Set-CampaignTemplateSchedule" Write-Host $_.ErrorDetails } - path: /campaigns/{id}/activate method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#start-campaign source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | Campaign ID. $ActivateCampaignOptions = @" { "timeZone" : "-05:00" } "@ # Activate a campaign try { Start-Campaign -Id $Id # Below is a request that includes all optional parameters # Start-Campaign -Id $Id -ActivateCampaignOptions $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Start-Campaign" Write-Host $_.ErrorDetails } - path: /campaigns/{id}/run-remediation-scan method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#start-campaign-remediation-scan source: | $Id = "2c91808571bcfcf80171c23e4b4221fc" # String | ID of the campaign the remediation scan is being run for. # Run campaign remediation scan try { Start-CampaignRemediationScan -Id $Id # Below is a request that includes all optional parameters # Start-CampaignRemediationScan -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Start-CampaignRemediationScan" Write-Host $_.ErrorDetails } - path: /campaigns/{id}/run-report/{type} method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#start-campaign-report source: | $Id = "2c91808571bcfcf80171c23e4b4221fc" # String | ID of the campaign the report is being run for. $Type = "CAMPAIGN_COMPOSITION_REPORT" # ReportType | Type of the report to run. # Run campaign report try { Start-CampaignReport -Id $Id -Type $Type # Below is a request that includes all optional parameters # Start-CampaignReport -Id $Id -Type $Type } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Start-CampaignReport" Write-Host $_.ErrorDetails } - path: /campaign-templates/{id}/generate method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#start-generate-campaign-template source: | $Id = "2c9180835d191a86015d28455b4a2329" # String | ID of the campaign template to use for generation. # Generate a campaign from template try { Start-GenerateCampaignTemplate -Id $Id # Below is a request that includes all optional parameters # Start-GenerateCampaignTemplate -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Start-GenerateCampaignTemplate" Write-Host $_.ErrorDetails } - path: /campaigns/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-campaigns#update-campaign source: | $Id = "2c91808571bcfcf80171c23e4b4221fc" # String | ID of the campaign template being modified. $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Update a campaign try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-Campaign -Id $Id -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-Campaign -Id $Id -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-Campaign" Write-Host $_.ErrorDetails } - path: /certifications/{id}/access-summaries/{type} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-summaries#get-identity-access-summaries source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The identity campaign certification ID $Type = "ROLE" # String | The type of access review item to retrieve summaries for $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "access.id eq "ef38f94347e94562b5bb8424a56397d8"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **completed**: *eq, ne* **access.id**: *eq, in* **access.name**: *eq, sw* **entitlement.sourceName**: *eq, sw* **accessProfile.sourceName**: *eq, sw* (optional) $Sorters = "access.name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **access.name** (optional) # Access summaries try { Get-IdentityAccessSummaries -Id $Id -Type $Type # Below is a request that includes all optional parameters # Get-IdentityAccessSummaries -Id $Id -Type $Type -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-IdentityAccessSummaries" Write-Host $_.ErrorDetails } - path: /certifications/{id}/decision-summary method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-summaries#get-identity-decision-summary source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The certification ID $Filters = "identitySummary.id eq "ef38f94347e94562b5bb8424a56397d8"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **identitySummary.id**: *eq, in* (optional) # Summary of certification decisions try { Get-IdentityDecisionSummary -Id $Id # Below is a request that includes all optional parameters # Get-IdentityDecisionSummary -Id $Id -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-IdentityDecisionSummary" Write-Host $_.ErrorDetails } - path: /certifications/{id}/identity-summaries method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-summaries#get-identity-summaries source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The identity campaign certification ID $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "id eq "ef38f94347e94562b5bb8424a56397d8"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **completed**: *eq, ne* **name**: *eq, sw* (optional) $Sorters = "name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name** (optional) # Identity summaries for campaign certification try { Get-IdentitySummaries -Id $Id # Below is a request that includes all optional parameters # Get-IdentitySummaries -Id $Id -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-IdentitySummaries" Write-Host $_.ErrorDetails } - path: /certifications/{id}/identity-summaries/{identitySummaryId} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certification-summaries#get-identity-summary source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The identity campaign certification ID $IdentitySummaryId = "2c91808772a504f50172a9540e501ba8" # String | The identity summary ID # Summary for identity try { Get-IdentitySummary -Id $Id -IdentitySummaryId $IdentitySummaryId # Below is a request that includes all optional parameters # Get-IdentitySummary -Id $Id -IdentitySummaryId $IdentitySummaryId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-IdentitySummary" Write-Host $_.ErrorDetails } - path: /certification-tasks/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certifications#get-certification-task source: | $Id = "63b32151-26c0-42f4-9299-8898dc1c9daa" # String | The task ID # Certification task by id try { Get-CertificationTask -Id $Id # Below is a request that includes all optional parameters # Get-CertificationTask -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CertificationTask" Write-Host $_.ErrorDetails } - path: /certifications/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certifications#get-identity-certification source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The certification id # Identity certification by id try { Get-IdentityCertification -Id $Id # Below is a request that includes all optional parameters # Get-IdentityCertification -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-IdentityCertification" Write-Host $_.ErrorDetails } - path: /certifications/{certificationId}/access-review-items/{itemId}/permissions method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certifications#get-identity-certification-item-permissions source: | $CertificationId = "ef38f94347e94562b5bb8424a56397d8" # String | The certification ID $ItemId = "2c91808671bcbab40171bd945d961227" # String | The certification item ID $Filters = "target eq "SYS.OBJAUTH2"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **target**: *eq, sw* **rights**: *ca* Supported composite operators: *and, or* All field values (second filter operands) are case-insensitive for this API. Only a single *and* or *or* composite filter operator may be used. It must also be used between a target filter and a rights filter, not between 2 filters for the same field. For example, the following is valid: `?filters=rights+ca+(%22CREATE%22)+and+target+eq+%22SYS.OBJAUTH2%22` The following is invalid: 1?filters=rights+ca+(%22CREATE%22)+and+rights+ca+(%SELECT%22)1 (optional) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) # Permissions for entitlement certification item try { Get-IdentityCertificationItemPermissions -CertificationId $CertificationId -ItemId $ItemId # Below is a request that includes all optional parameters # Get-IdentityCertificationItemPermissions -CertificationId $CertificationId -ItemId $ItemId -Filters $Filters -Limit $Limit -Offset $Offset -Count $Count } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-IdentityCertificationItemPermissions" Write-Host $_.ErrorDetails } - path: /certification-tasks method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certifications#get-pending-certification-tasks source: | $ReviewerIdentity = "Ada.1de82e55078344" # String | The ID of reviewer identity. *me* indicates the current user. (optional) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "type eq "ADMIN_REASSIGN"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **targetId**: *eq, in* **type**: *eq, in* (optional) # List of pending certification tasks try { Get-PendingCertificationTasks # Below is a request that includes all optional parameters # Get-PendingCertificationTasks -ReviewerIdentity $ReviewerIdentity -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-PendingCertificationTasks" Write-Host $_.ErrorDetails } - path: /certifications/{id}/reviewers method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certifications#list-certification-reviewers source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The certification ID $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "name eq "Bob"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, sw* **email**: *eq, sw* (optional) $Sorters = "name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, email** (optional) # List of reviewers for certification try { Get-CertificationReviewers -Id $Id # Below is a request that includes all optional parameters # Get-CertificationReviewers -Id $Id -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CertificationReviewers" Write-Host $_.ErrorDetails } - path: /certifications/{id}/access-review-items method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certifications#list-identity-access-review-items source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The identity campaign certification ID $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "id eq "ef38f94347e94562b5bb8424a56397d8"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **type**: *eq* **access.type**: *eq* **completed**: *eq, ne* **identitySummary.id**: *eq, in* **identitySummary.name**: *eq, sw* **access.id**: *eq, in* **access.name**: *eq, sw* **entitlement.sourceName**: *eq, sw* **accessProfile.sourceName**: *eq, sw* (optional) $Sorters = "access.name,-accessProfile.sourceName" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **identitySummary.name, access.name, access.type, entitlement.sourceName, accessProfile.sourceName** (optional) $Entitlements = "identityEntitlement" # String | Filter results to view access review items that pertain to any of the specified comma-separated entitlement IDs. An error will occur if this param is used with **access-profiles** or **roles** as only one of these query params can be used at a time. (optional) $AccessProfiles = "accessProfile1" # String | Filter results to view access review items that pertain to any of the specified comma-separated access-profle IDs. An error will occur if this param is used with **entitlements** or **roles** as only one of these query params can be used at a time. (optional) $Roles = "userRole" # String | Filter results to view access review items that pertain to any of the specified comma-separated role IDs. An error will occur if this param is used with **entitlements** or **access-profiles** as only one of these query params can be used at a time. (optional) # List of access review items try { Get-IdentityAccessReviewItems -Id $Id # Below is a request that includes all optional parameters # Get-IdentityAccessReviewItems -Id $Id -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters -Entitlements $Entitlements -AccessProfiles $AccessProfiles -Roles $Roles } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-IdentityAccessReviewItems" Write-Host $_.ErrorDetails } - path: /certifications method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certifications#list-identity-certifications source: | $ReviewerIdentity = "me" # String | Reviewer's identity. *me* indicates the current user. (optional) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "id eq "ef38f94347e94562b5bb8424a56397d8"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **campaign.id**: *eq, in* **phase**: *eq* **completed**: *eq* (optional) $Sorters = "name,due" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, due, signed** (optional) # List identity campaign certifications try { Get-IdentityCertifications # Below is a request that includes all optional parameters # Get-IdentityCertifications -ReviewerIdentity $ReviewerIdentity -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-IdentityCertifications" Write-Host $_.ErrorDetails } - path: /certifications/{id}/decide method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certifications#make-identity-decision source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the identity campaign certification on which to make decisions $ReviewDecision = @"{ "comments" : "This user no longer needs access to this source", "decision" : "APPROVE", "proposedEndDate" : "2017-07-11T18:45:37.098Z", "recommendation" : { "reasons" : [ "Reason 1", "Reason 2" ], "recommendation" : "recommendation", "timestamp" : "2020-06-01T13:49:37.385Z" }, "id" : "ef38f94347e94562b5bb8424a56397d8", "bulk" : true }"@ # Decide on a certification item try { $Result = ConvertFrom-JsonToReviewDecision -Json $ReviewDecision Select-IdentityDecision -Id $Id -ReviewDecision $Result # Below is a request that includes all optional parameters # Select-IdentityDecision -Id $Id -ReviewDecision $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Select-IdentityDecision" Write-Host $_.ErrorDetails } - path: /certifications/{id}/reassign method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certifications#reassign-identity-certifications source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The identity campaign certification ID $ReviewReassign = @" { "reason" : "reassigned for some reason", "reassignTo" : "ef38f94347e94562b5bb8424a56397d8", "reassign" : [ { "id" : "ef38f94347e94562b5bb8424a56397d8", "type" : "ITEM" }, { "id" : "ef38f94347e94562b5bb8424a56397d8", "type" : "ITEM" } ] } "@ # Reassign identities or items try { $Result = ConvertFrom-JsonToReviewReassign -Json $ReviewReassign Invoke-ReassignIdentityCertifications -Id $Id -ReviewReassign $Result # Below is a request that includes all optional parameters # Invoke-ReassignIdentityCertifications -Id $Id -ReviewReassign $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Invoke-ReassignIdentityCertifications" Write-Host $_.ErrorDetails } - path: /certifications/{id}/sign-off method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certifications#sign-off-identity-certification source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The identity campaign certification ID # Finalize identity certification decisions try { Invoke-SignOffIdentityCertification -Id $Id # Below is a request that includes all optional parameters # Invoke-SignOffIdentityCertification -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Invoke-SignOffIdentityCertification" Write-Host $_.ErrorDetails } - path: /certifications/{id}/reassign-async method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/certifications#submit-reassign-certs-async source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The identity campaign certification ID $ReviewReassign = @" { "reason" : "reassigned for some reason", "reassignTo" : "ef38f94347e94562b5bb8424a56397d8", "reassign" : [ { "id" : "ef38f94347e94562b5bb8424a56397d8", "type" : "ITEM" }, { "id" : "ef38f94347e94562b5bb8424a56397d8", "type" : "ITEM" } ] } "@ # Reassign certifications asynchronously try { $Result = ConvertFrom-JsonToReviewReassign -Json $ReviewReassign Submit-ReassignCertsAsync -Id $Id -ReviewReassign $Result # Below is a request that includes all optional parameters # Submit-ReassignCertsAsync -Id $Id -ReviewReassign $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Submit-ReassignCertsAsync" Write-Host $_.ErrorDetails } - path: /configuration-hub/object-mappings/{sourceOrg} method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/configuration-hub#create-object-mapping source: | $SourceOrg = "source-org" # String | The name of the source org. $ObjectMappingRequest = @" { "targetValue" : "My New Governance Group Name", "jsonPath" : "$.name", "sourceValue" : "My Governance Group Name", "enabled" : false, "objectType" : "IDENTITY" } "@ # Creates an object mapping try { $Result = ConvertFrom-JsonToObjectMappingRequest -Json $ObjectMappingRequest New-ObjectMapping -SourceOrg $SourceOrg -ObjectMappingRequest $Result # Below is a request that includes all optional parameters # New-ObjectMapping -SourceOrg $SourceOrg -ObjectMappingRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-ObjectMapping" Write-Host $_.ErrorDetails } - path: /configuration-hub/object-mappings/{sourceOrg}/bulk-create method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/configuration-hub#create-object-mappings source: | $SourceOrg = "source-org" # String | The name of the source org. $ObjectMappingBulkCreateRequest = @" { "newObjectsMappings" : [ { "targetValue" : "My New Governance Group Name", "jsonPath" : "$.name", "sourceValue" : "My Governance Group Name", "enabled" : false, "objectType" : "IDENTITY" }, { "targetValue" : "My New Governance Group Name", "jsonPath" : "$.name", "sourceValue" : "My Governance Group Name", "enabled" : false, "objectType" : "IDENTITY" } ] } "@ # Bulk creates object mappings try { $Result = ConvertFrom-JsonToObjectMappingBulkCreateRequest -Json $ObjectMappingBulkCreateRequest New-ObjectMappings -SourceOrg $SourceOrg -ObjectMappingBulkCreateRequest $Result # Below is a request that includes all optional parameters # New-ObjectMappings -SourceOrg $SourceOrg -ObjectMappingBulkCreateRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-ObjectMappings" Write-Host $_.ErrorDetails } - path: /configuration-hub/backups/uploads method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/configuration-hub#create-uploaded-configuration source: | $Data = # System.IO.FileInfo | JSON file containing the objects to be imported. $Name = "MyName" # String | Name that will be assigned to the uploaded configuration file. # Upload a configuration try { New-UploadedConfiguration -Data $Data -Name $Name # Below is a request that includes all optional parameters # New-UploadedConfiguration -Data $Data -Name $Name } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-UploadedConfiguration" Write-Host $_.ErrorDetails } - path: /configuration-hub/object-mappings/{sourceOrg}/{objectMappingId} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/configuration-hub#delete-object-mapping source: | $SourceOrg = "source-org" # String | The name of the source org. $ObjectMappingId = "3d6e0144-963f-4bd6-8d8d-d77b4e507ce4" # String | The id of the object mapping to be deleted. # Deletes an object mapping try { Remove-ObjectMapping -SourceOrg $SourceOrg -ObjectMappingId $ObjectMappingId # Below is a request that includes all optional parameters # Remove-ObjectMapping -SourceOrg $SourceOrg -ObjectMappingId $ObjectMappingId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-ObjectMapping" Write-Host $_.ErrorDetails } - path: /configuration-hub/backups/uploads/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/configuration-hub#delete-uploaded-configuration source: | $Id = "3d0fe04b-57df-4a46-a83b-8f04b0f9d10b" # String | The id of the uploaded configuration. # Delete an uploaded configuration try { Remove-UploadedConfiguration -Id $Id # Below is a request that includes all optional parameters # Remove-UploadedConfiguration -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-UploadedConfiguration" Write-Host $_.ErrorDetails } - path: /configuration-hub/object-mappings/{sourceOrg} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/configuration-hub#get-object-mappings source: | $SourceOrg = "source-org" # String | The name of the source org. # Gets list of object mappings try { Get-ObjectMappings -SourceOrg $SourceOrg # Below is a request that includes all optional parameters # Get-ObjectMappings -SourceOrg $SourceOrg } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ObjectMappings" Write-Host $_.ErrorDetails } - path: /configuration-hub/backups/uploads/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/configuration-hub#get-uploaded-configuration source: | $Id = "3d0fe04b-57df-4a46-a83b-8f04b0f9d10b" # String | The id of the uploaded configuration. # Get an uploaded configuration try { Get-UploadedConfiguration -Id $Id # Below is a request that includes all optional parameters # Get-UploadedConfiguration -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-UploadedConfiguration" Write-Host $_.ErrorDetails } - path: /configuration-hub/backups/uploads method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/configuration-hub#list-uploaded-configurations source: | $Filters = "status eq "COMPLETE"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **status**: *eq* (optional) # List uploaded configurations try { Get-UploadedConfigurations # Below is a request that includes all optional parameters # Get-UploadedConfigurations -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-UploadedConfigurations" Write-Host $_.ErrorDetails } - path: /configuration-hub/object-mappings/{sourceOrg}/bulk-patch method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/configuration-hub#update-object-mappings source: | $SourceOrg = "source-org" # String | The name of the source org. $ObjectMappingBulkPatchRequest = @" { "patches" : { "603b1a61-d03d-4ed1-864f-a508fbd1995d" : [ { "op" : "replace", "path" : "/enabled", "value" : true } ], "00bece34-f50d-4227-8878-76f620b5a971" : [ { "op" : "replace", "path" : "/targetValue", "value" : "New Target Value" } ] } } "@ # Bulk updates object mappings try { $Result = ConvertFrom-JsonToObjectMappingBulkPatchRequest -Json $ObjectMappingBulkPatchRequest Update-ObjectMappings -SourceOrg $SourceOrg -ObjectMappingBulkPatchRequest $Result # Below is a request that includes all optional parameters # Update-ObjectMappings -SourceOrg $SourceOrg -ObjectMappingBulkPatchRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-ObjectMappings" Write-Host $_.ErrorDetails } - path: /connectors method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/connectors#create-custom-connector source: | $V3CreateConnectorDto = @" { "name" : "custom connector", "directConnect" : true, "className" : "sailpoint.connector.OpenConnectorAdapter", "type" : "custom connector type", "status" : "RELEASED" } "@ # Create custom connector try { $Result = ConvertFrom-JsonToV3CreateConnectorDto -Json $V3CreateConnectorDto New-CustomConnector -V3CreateConnectorDto $Result # Below is a request that includes all optional parameters # New-CustomConnector -V3CreateConnectorDto $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-CustomConnector" Write-Host $_.ErrorDetails } - path: /connectors/{scriptName} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/connectors#delete-custom-connector source: | $ScriptName = "aScriptName" # String | The scriptName value of the connector. ScriptName is the unique id generated at connector creation. # Delete connector by script name try { Remove-CustomConnector -ScriptName $ScriptName # Below is a request that includes all optional parameters # Remove-CustomConnector -ScriptName $ScriptName } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-CustomConnector" Write-Host $_.ErrorDetails } - path: /connectors/{scriptName} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/connectors#get-connector source: | $ScriptName = "aScriptName" # String | The scriptName value of the connector. ScriptName is the unique id generated at connector creation. $Locale = "de" # String | The locale to apply to the config. If no viable locale is given, it will default to ""en"" (optional) # Get connector by script name try { Get-Connector -ScriptName $ScriptName # Below is a request that includes all optional parameters # Get-Connector -ScriptName $ScriptName -Locale $Locale } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Connector" Write-Host $_.ErrorDetails } - path: /connectors method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/connectors#get-connector-list source: | $Filters = "directConnect eq "true"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **name**: *sw, co* **type**: *sw, co, eq* **directConnect**: *eq* **category**: *eq* **features**: *ca* **labels**: *ca* (optional) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Locale = "de" # String | The locale to apply to the config. If no viable locale is given, it will default to ""en"" (optional) # Get connector list try { Get-ConnectorList # Below is a request that includes all optional parameters # Get-ConnectorList -Filters $Filters -Limit $Limit -Offset $Offset -Count $Count -Locale $Locale } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ConnectorList" Write-Host $_.ErrorDetails } - path: /connectors/{scriptName}/source-config method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/connectors#get-connector-source-config source: | $ScriptName = "aScriptName" # String | The scriptName value of the connector. ScriptName is the unique id generated at connector creation. # Get connector source configuration try { Get-ConnectorSourceConfig -ScriptName $ScriptName # Below is a request that includes all optional parameters # Get-ConnectorSourceConfig -ScriptName $ScriptName } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ConnectorSourceConfig" Write-Host $_.ErrorDetails } - path: /connectors/{scriptName}/source-template method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/connectors#get-connector-source-template source: | $ScriptName = "aScriptName" # String | The scriptName value of the connector. ScriptName is the unique id generated at connector creation. # Get connector source template try { Get-ConnectorSourceTemplate -ScriptName $ScriptName # Below is a request that includes all optional parameters # Get-ConnectorSourceTemplate -ScriptName $ScriptName } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ConnectorSourceTemplate" Write-Host $_.ErrorDetails } - path: /connectors/{scriptName}/translations/{locale} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/connectors#get-connector-translations source: | $ScriptName = "aScriptName" # String | The scriptName value of the connector. Scriptname is the unique id generated at connector creation. $Locale = "de" # String | The locale to apply to the config. If no viable locale is given, it will default to ""en"" # Get connector translations try { Get-ConnectorTranslations -ScriptName $ScriptName -Locale $Locale # Below is a request that includes all optional parameters # Get-ConnectorTranslations -ScriptName $ScriptName -Locale $Locale } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ConnectorTranslations" Write-Host $_.ErrorDetails } - path: /connectors/{scriptName}/source-config method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/connectors#put-connector-source-config source: | $ScriptName = "aScriptName" # String | The scriptName value of the connector. ScriptName is the unique id generated at connector creation. $File = # System.IO.FileInfo | connector source config xml file # Update connector source configuration try { Send-ConnectorSourceConfig -ScriptName $ScriptName -File $File # Below is a request that includes all optional parameters # Send-ConnectorSourceConfig -ScriptName $ScriptName -File $File } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-ConnectorSourceConfig" Write-Host $_.ErrorDetails } - path: /connectors/{scriptName}/source-template method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/connectors#put-connector-source-template source: | $ScriptName = "aScriptName" # String | The scriptName value of the connector. ScriptName is the unique id generated at connector creation. $File = # System.IO.FileInfo | connector source template xml file # Update connector source template try { Send-ConnectorSourceTemplate -ScriptName $ScriptName -File $File # Below is a request that includes all optional parameters # Send-ConnectorSourceTemplate -ScriptName $ScriptName -File $File } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-ConnectorSourceTemplate" Write-Host $_.ErrorDetails } - path: /connectors/{scriptName}/translations/{locale} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/connectors#put-connector-translations source: | $ScriptName = "aScriptName" # String | The scriptName value of the connector. Scriptname is the unique id generated at connector creation. $Locale = "de" # String | The locale to apply to the config. If no viable locale is given, it will default to ""en"" # Update connector translations try { Send-ConnectorTranslations -ScriptName $ScriptName -Locale $Locale # Below is a request that includes all optional parameters # Send-ConnectorTranslations -ScriptName $ScriptName -Locale $Locale } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-ConnectorTranslations" Write-Host $_.ErrorDetails } - path: /connectors/{scriptName} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/connectors#update-connector source: | $ScriptName = "aScriptName" # String | The scriptName value of the connector. ScriptName is the unique id generated at connector creation. $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Update connector by script name try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-Connector -ScriptName $ScriptName -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-Connector -ScriptName $ScriptName -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-Connector" Write-Host $_.ErrorDetails } - path: /auth-org/network-config method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/global-tenant-security-settings#create-auth-org-network-config source: | $NetworkConfiguration = @" { "range" : [ "1.3.7.2", "255.255.255.252/30" ], "whitelisted" : true, "geolocation" : [ "CA", "FR", "HT" ] } "@ # Create security network configuration. try { $Result = ConvertFrom-JsonToNetworkConfiguration -Json $NetworkConfiguration New-AuthOrgNetworkConfig -NetworkConfiguration $Result # Below is a request that includes all optional parameters # New-AuthOrgNetworkConfig -NetworkConfiguration $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-AuthOrgNetworkConfig" Write-Host $_.ErrorDetails } - path: /auth-org/lockout-config method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/global-tenant-security-settings#get-auth-org-lockout-config source: | # Get auth org lockout configuration. try { Get-AuthOrgLockoutConfig # Below is a request that includes all optional parameters # Get-AuthOrgLockoutConfig } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AuthOrgLockoutConfig" Write-Host $_.ErrorDetails } - path: /auth-org/network-config method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/global-tenant-security-settings#get-auth-org-network-config source: | # Get security network configuration. try { Get-AuthOrgNetworkConfig # Below is a request that includes all optional parameters # Get-AuthOrgNetworkConfig } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AuthOrgNetworkConfig" Write-Host $_.ErrorDetails } - path: /auth-org/service-provider-config method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/global-tenant-security-settings#get-auth-org-service-provider-config source: | # Get service provider configuration. try { Get-AuthOrgServiceProviderConfig # Below is a request that includes all optional parameters # Get-AuthOrgServiceProviderConfig } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AuthOrgServiceProviderConfig" Write-Host $_.ErrorDetails } - path: /auth-org/session-config method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/global-tenant-security-settings#get-auth-org-session-config source: | # Get auth org session configuration. try { Get-AuthOrgSessionConfig # Below is a request that includes all optional parameters # Get-AuthOrgSessionConfig } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AuthOrgSessionConfig" Write-Host $_.ErrorDetails } - path: /auth-org/lockout-config method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/global-tenant-security-settings#patch-auth-org-lockout-config source: | $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Update auth org lockout configuration try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-AuthOrgLockoutConfig -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-AuthOrgLockoutConfig -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-AuthOrgLockoutConfig" Write-Host $_.ErrorDetails } - path: /auth-org/network-config method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/global-tenant-security-settings#patch-auth-org-network-config source: | $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Update security network configuration. try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-AuthOrgNetworkConfig -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-AuthOrgNetworkConfig -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-AuthOrgNetworkConfig" Write-Host $_.ErrorDetails } - path: /auth-org/service-provider-config method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/global-tenant-security-settings#patch-auth-org-service-provider-config source: | $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Update service provider configuration try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-AuthOrgServiceProviderConfig -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-AuthOrgServiceProviderConfig -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-AuthOrgServiceProviderConfig" Write-Host $_.ErrorDetails } - path: /auth-org/session-config method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/global-tenant-security-settings#patch-auth-org-session-config source: | $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Update auth org session configuration try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-AuthOrgSessionConfig -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-AuthOrgSessionConfig -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-AuthOrgSessionConfig" Write-Host $_.ErrorDetails } - path: /identity-profiles method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/identity-profiles#create-identity-profile source: | $IdentityProfile = @" { "owner" : { "name" : "William Wilson", "id" : "2c9180835d191a86015d28455b4b232a", "type" : "IDENTITY" }, "identityExceptionReportReference" : { "reportName" : "My annual report", "taskResultId" : "2b838de9-db9b-abcf-e646-d4f274ad4238" }, "authoritativeSource" : { "name" : "HR Active Directory", "id" : "2c9180835d191a86015d28455b4b232a", "type" : "SOURCE" }, "hasTimeBasedAttr" : true, "created" : "2015-05-28T14:07:17Z", "description" : "My custom flat file profile", "identityRefreshRequired" : true, "identityCount" : 8, "priority" : 10, "identityAttributeConfig" : { "attributeTransforms" : [ { "transformDefinition" : { "attributes" : { "attributeName" : "e-mail", "sourceName" : "MySource", "sourceId" : "2c9180877a826e68017a8c0b03da1a53" }, "type" : "accountAttribute" }, "identityAttributeName" : "email" }, { "transformDefinition" : { "attributes" : { "attributeName" : "e-mail", "sourceName" : "MySource", "sourceId" : "2c9180877a826e68017a8c0b03da1a53" }, "type" : "accountAttribute" }, "identityAttributeName" : "email" } ], "enabled" : true }, "name" : "aName", "modified" : "2015-05-28T14:07:17Z", "id" : "id12345" } "@ # Create identity profile try { $Result = ConvertFrom-JsonToIdentityProfile -Json $IdentityProfile New-IdentityProfile -IdentityProfile $Result # Below is a request that includes all optional parameters # New-IdentityProfile -IdentityProfile $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-IdentityProfile" Write-Host $_.ErrorDetails } - path: /identity-profiles/{identity-profile-id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/identity-profiles#delete-identity-profile source: | $IdentityProfileId = "ef38f94347e94562b5bb8424a56397d8" # String | Identity profile ID. # Delete identity profile try { Remove-IdentityProfile -IdentityProfileId $IdentityProfileId # Below is a request that includes all optional parameters # Remove-IdentityProfile -IdentityProfileId $IdentityProfileId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-IdentityProfile" Write-Host $_.ErrorDetails } - path: /identity-profiles/bulk-delete method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/identity-profiles#delete-identity-profiles source: | $RequestBody = "MyRequestBody" # String[] | Identity Profile bulk delete request body. $RequestBody = @""@ # Delete identity profiles try { $Result = ConvertFrom-JsonToRequestBody -Json $RequestBody Remove-IdentityProfiles -RequestBody $Result # Below is a request that includes all optional parameters # Remove-IdentityProfiles -RequestBody $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-IdentityProfiles" Write-Host $_.ErrorDetails } - path: /identity-profiles/export method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/identity-profiles#export-identity-profiles source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "id eq "ef38f94347e94562b5bb8424a56397d8"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne* **name**: *eq, ne* **priority**: *eq, ne* (optional) $Sorters = "id,name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority** (optional) # Export identity profiles try { Export-IdentityProfiles # Below is a request that includes all optional parameters # Export-IdentityProfiles -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Export-IdentityProfiles" Write-Host $_.ErrorDetails } - path: /identity-profiles/{identity-profile-id}/default-identity-attribute-config method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/identity-profiles#get-default-identity-attribute-config source: | $IdentityProfileId = "2b838de9-db9b-abcf-e646-d4f274ad4238" # String | The Identity Profile ID. # Get default identity attribute config try { Get-DefaultIdentityAttributeConfig -IdentityProfileId $IdentityProfileId # Below is a request that includes all optional parameters # Get-DefaultIdentityAttributeConfig -IdentityProfileId $IdentityProfileId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-DefaultIdentityAttributeConfig" Write-Host $_.ErrorDetails } - path: /identity-profiles/{identity-profile-id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/identity-profiles#get-identity-profile source: | $IdentityProfileId = "2b838de9-db9b-abcf-e646-d4f274ad4238" # String | Identity profile ID. # Get identity profile try { Get-IdentityProfile -IdentityProfileId $IdentityProfileId # Below is a request that includes all optional parameters # Get-IdentityProfile -IdentityProfileId $IdentityProfileId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-IdentityProfile" Write-Host $_.ErrorDetails } - path: /identity-profiles/import method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/identity-profiles#import-identity-profiles source: | $IdentityProfileExportedObject = @"{ "self" : { "name" : "HR Active Directory", "id" : "2c9180835d191a86015d28455b4b232a", "type" : "SOURCE" }, "version" : 1, "object" : { "owner" : { "name" : "William Wilson", "id" : "2c9180835d191a86015d28455b4b232a", "type" : "IDENTITY" }, "identityExceptionReportReference" : { "reportName" : "My annual report", "taskResultId" : "2b838de9-db9b-abcf-e646-d4f274ad4238" }, "authoritativeSource" : { "name" : "HR Active Directory", "id" : "2c9180835d191a86015d28455b4b232a", "type" : "SOURCE" }, "hasTimeBasedAttr" : true, "created" : "2015-05-28T14:07:17Z", "description" : "My custom flat file profile", "identityRefreshRequired" : true, "identityCount" : 8, "priority" : 10, "identityAttributeConfig" : { "attributeTransforms" : [ { "transformDefinition" : { "attributes" : { "attributeName" : "e-mail", "sourceName" : "MySource", "sourceId" : "2c9180877a826e68017a8c0b03da1a53" }, "type" : "accountAttribute" }, "identityAttributeName" : "email" }, { "transformDefinition" : { "attributes" : { "attributeName" : "e-mail", "sourceName" : "MySource", "sourceId" : "2c9180877a826e68017a8c0b03da1a53" }, "type" : "accountAttribute" }, "identityAttributeName" : "email" } ], "enabled" : true }, "name" : "aName", "modified" : "2015-05-28T14:07:17Z", "id" : "id12345" } }"@ # Import identity profiles try { $Result = ConvertFrom-JsonToIdentityProfileExportedObject -Json $IdentityProfileExportedObject Import-IdentityProfiles -IdentityProfileExportedObject $Result # Below is a request that includes all optional parameters # Import-IdentityProfiles -IdentityProfileExportedObject $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Import-IdentityProfiles" Write-Host $_.ErrorDetails } - path: /identity-profiles method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/identity-profiles#list-identity-profiles source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "id eq "ef38f94347e94562b5bb8424a56397d8"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, ne, ge, gt, in, le, sw* **name**: *eq, ne, ge, gt, in, le, sw* **priority**: *eq, ne* (optional) $Sorters = "id,name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, priority, created, modified, owner.id, owner.name** (optional) # List identity profiles try { Get-IdentityProfiles # Below is a request that includes all optional parameters # Get-IdentityProfiles -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-IdentityProfiles" Write-Host $_.ErrorDetails } - path: /identity-profiles/identity-preview method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/identity-profiles#show-identity-preview source: | $IdentityPreviewRequest = @" { "identityId" : "046b6c7f-0b8a-43b9-b35d-6489e6daee91", "identityAttributeConfig" : { "attributeTransforms" : [ { "transformDefinition" : { "attributes" : { "attributeName" : "e-mail", "sourceName" : "MySource", "sourceId" : "2c9180877a826e68017a8c0b03da1a53" }, "type" : "accountAttribute" }, "identityAttributeName" : "email" }, { "transformDefinition" : { "attributes" : { "attributeName" : "e-mail", "sourceName" : "MySource", "sourceId" : "2c9180877a826e68017a8c0b03da1a53" }, "type" : "accountAttribute" }, "identityAttributeName" : "email" } ], "enabled" : true } } "@ # Generate identity profile preview try { $Result = ConvertFrom-JsonToIdentityPreviewRequest -Json $IdentityPreviewRequest Show-IdentityPreview -IdentityPreviewRequest $Result # Below is a request that includes all optional parameters # Show-IdentityPreview -IdentityPreviewRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Show-IdentityPreview" Write-Host $_.ErrorDetails } - path: /identity-profiles/{identity-profile-id}/process-identities method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/identity-profiles#sync-identity-profile source: | $IdentityProfileId = "ef38f94347e94562b5bb8424a56397d8" # String | The Identity Profile ID to be processed # Process identities under profile try { Sync-IdentityProfile -IdentityProfileId $IdentityProfileId # Below is a request that includes all optional parameters # Sync-IdentityProfile -IdentityProfileId $IdentityProfileId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Sync-IdentityProfile" Write-Host $_.ErrorDetails } - path: /identity-profiles/{identity-profile-id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/identity-profiles#update-identity-profile source: | $IdentityProfileId = "ef38f94347e94562b5bb8424a56397d8" # String | Identity profile ID. $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Update identity profile try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-IdentityProfile -IdentityProfileId $IdentityProfileId -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-IdentityProfile -IdentityProfileId $IdentityProfileId -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-IdentityProfile" Write-Host $_.ErrorDetails } - path: /identity-profiles/{identity-profile-id}/lifecycle-states method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/lifecycle-states#create-lifecycle-state source: | $IdentityProfileId = "2b838de9-db9b-abcf-e646-d4f274ad4238" # String | Identity profile ID. $LifecycleState = @" { "accessProfileIds" : [ "2c918084660f45d6016617daa9210584", "2c918084660f45d6016617daa9210500" ], "emailNotificationOption" : { "notifyManagers" : true, "notifySpecificUsers" : true, "emailAddressList" : [ "test@test.com", "test2@test.com" ], "notifyAllAdmins" : true }, "created" : "2015-05-28T14:07:17Z", "name" : "aName", "modified" : "2015-05-28T14:07:17Z", "description" : "Lifecycle description", "accountActions" : [ { "action" : "ENABLE", "sourceIds" : [ "2c918084660f45d6016617daa9210584", "2c918084660f45d6016617daa9210500" ] }, { "action" : "ENABLE", "sourceIds" : [ "2c918084660f45d6016617daa9210584", "2c918084660f45d6016617daa9210500" ] } ], "id" : "id12345", "identityCount" : 42, "technicalName" : "Technical Name", "identityState" : "identityState", "enabled" : true } "@ # Create lifecycle state try { $Result = ConvertFrom-JsonToLifecycleState -Json $LifecycleState New-LifecycleState -IdentityProfileId $IdentityProfileId -LifecycleState $Result # Below is a request that includes all optional parameters # New-LifecycleState -IdentityProfileId $IdentityProfileId -LifecycleState $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-LifecycleState" Write-Host $_.ErrorDetails } - path: /identity-profiles/{identity-profile-id}/lifecycle-states/{lifecycle-state-id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/lifecycle-states#delete-lifecycle-state source: | $IdentityProfileId = "2b838de9-db9b-abcf-e646-d4f274ad4238" # String | Identity profile ID. $LifecycleStateId = "ef38f94347e94562b5bb8424a56397d8" # String | Lifecycle state ID. # Delete lifecycle state try { Remove-LifecycleState -IdentityProfileId $IdentityProfileId -LifecycleStateId $LifecycleStateId # Below is a request that includes all optional parameters # Remove-LifecycleState -IdentityProfileId $IdentityProfileId -LifecycleStateId $LifecycleStateId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-LifecycleState" Write-Host $_.ErrorDetails } - path: /identity-profiles/{identity-profile-id}/lifecycle-states/{lifecycle-state-id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/lifecycle-states#get-lifecycle-state source: | $IdentityProfileId = "2b838de9-db9b-abcf-e646-d4f274ad4238" # String | Identity profile ID. $LifecycleStateId = "ef38f94347e94562b5bb8424a56397d8" # String | Lifecycle state ID. # Get lifecycle state try { Get-LifecycleState -IdentityProfileId $IdentityProfileId -LifecycleStateId $LifecycleStateId # Below is a request that includes all optional parameters # Get-LifecycleState -IdentityProfileId $IdentityProfileId -LifecycleStateId $LifecycleStateId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-LifecycleState" Write-Host $_.ErrorDetails } - path: /identity-profiles/{identity-profile-id}/lifecycle-states method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/lifecycle-states#get-lifecycle-states source: | $IdentityProfileId = "2b838de9-db9b-abcf-e646-d4f274ad4238" # String | Identity profile ID. $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Sorters = "created,modified" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **created, modified** (optional) # Lists lifecyclestates try { Get-LifecycleStates -IdentityProfileId $IdentityProfileId # Below is a request that includes all optional parameters # Get-LifecycleStates -IdentityProfileId $IdentityProfileId -Limit $Limit -Offset $Offset -Count $Count -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-LifecycleStates" Write-Host $_.ErrorDetails } - path: /identities/{identity-id}/set-lifecycle-state method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/lifecycle-states#set-lifecycle-state source: | $IdentityId = "2c9180857893f1290178944561990364" # String | ID of the identity to update. $SetLifecycleStateRequest = @" "@ # Set lifecycle state try { $Result = ConvertFrom-JsonToSetLifecycleStateRequest -Json $SetLifecycleStateRequest Set-LifecycleState -IdentityId $IdentityId -SetLifecycleStateRequest $Result # Below is a request that includes all optional parameters # Set-LifecycleState -IdentityId $IdentityId -SetLifecycleStateRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Set-LifecycleState" Write-Host $_.ErrorDetails } - path: /identity-profiles/{identity-profile-id}/lifecycle-states/{lifecycle-state-id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/lifecycle-states#update-lifecycle-states source: | $IdentityProfileId = "2b838de9-db9b-abcf-e646-d4f274ad4238" # String | Identity profile ID. $LifecycleStateId = "ef38f94347e94562b5bb8424a56397d8" # String | Lifecycle state ID. $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Update lifecycle state try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-LifecycleStates -IdentityProfileId $IdentityProfileId -LifecycleStateId $LifecycleStateId -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-LifecycleStates -IdentityProfileId $IdentityProfileId -LifecycleStateId $LifecycleStateId -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-LifecycleStates" Write-Host $_.ErrorDetails } - path: /mfa/{method}/delete method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/mfa-configuration#delete-mfa-config source: | $Method = "okta-verify" # String | The name of the MFA method. The currently supported method names are 'okta-verify' and 'duo-web'. # Delete mfa method configuration try { Remove-MFAConfig -Method $Method # Below is a request that includes all optional parameters # Remove-MFAConfig -Method $Method } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-MFAConfig" Write-Host $_.ErrorDetails } - path: /mfa/duo-web/config method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/mfa-configuration#get-mfa-duo-config source: | # Configuration of duo mfa method try { Get-MFADuoConfig # Below is a request that includes all optional parameters # Get-MFADuoConfig } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-MFADuoConfig" Write-Host $_.ErrorDetails } - path: /mfa/kba/config method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/mfa-configuration#get-mfa-kba-config source: | $AllLanguages = $false # Boolean | Indicator whether the question text should be returned in all configured languages * If true, the question text is returned in all languages that it is configured in. * If false, the question text is returned in the user locale if available, else for the default locale. * If not passed, it behaves the same way as passing this parameter as false (optional) # Configuration of kba mfa method try { Get-MFAKbaConfig # Below is a request that includes all optional parameters # Get-MFAKbaConfig -AllLanguages $AllLanguages } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-MFAKbaConfig" Write-Host $_.ErrorDetails } - path: /mfa/okta-verify/config method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/mfa-configuration#get-mfa-okta-config source: | # Configuration of okta mfa method try { Get-MFAOktaConfig # Below is a request that includes all optional parameters # Get-MFAOktaConfig } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-MFAOktaConfig" Write-Host $_.ErrorDetails } - path: /mfa/duo-web/config method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/mfa-configuration#set-mfa-duo-config source: | $MfaDuoConfig = @" { "accessKey" : "qw123Y3QlA5UqocYpdU3rEkzrK2D497y", "host" : "example.com", "configProperties" : { "skey" : "qwERttyZx1CdlQye2Vwtbsjr3HKddy4BAiCXjc5x", "ikey" : "Q123WE45R6TY7890ZXCV" }, "mfaMethod" : "duo-web", "enabled" : true, "identityAttribute" : "email" } "@ # Set duo mfa configuration try { $Result = ConvertFrom-JsonToMfaDuoConfig -Json $MfaDuoConfig Set-MFADuoConfig -MfaDuoConfig $Result # Below is a request that includes all optional parameters # Set-MFADuoConfig -MfaDuoConfig $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Set-MFADuoConfig" Write-Host $_.ErrorDetails } - path: /mfa/kba/config/answers method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/mfa-configuration#set-mfakba-config source: | $KbaAnswerRequestItem = @"{ "answer" : "Your answer", "id" : "c54fee53-2d63-4fc5-9259-3e93b9994135" }"@ # Set mfa kba configuration try { $Result = ConvertFrom-JsonToKbaAnswerRequestItem -Json $KbaAnswerRequestItem Set-MFAKBAConfig -KbaAnswerRequestItem $Result # Below is a request that includes all optional parameters # Set-MFAKBAConfig -KbaAnswerRequestItem $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Set-MFAKBAConfig" Write-Host $_.ErrorDetails } - path: /mfa/okta-verify/config method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/mfa-configuration#set-mfa-okta-config source: | $MfaOktaConfig = @" { "accessKey" : "qw123Y3QlA5UqocYpdU3rEkzrK2D497y", "host" : "example.com", "mfaMethod" : "okta-verify", "enabled" : true, "identityAttribute" : "email" } "@ # Set okta mfa configuration try { $Result = ConvertFrom-JsonToMfaOktaConfig -Json $MfaOktaConfig Set-MFAOktaConfig -MfaOktaConfig $Result # Below is a request that includes all optional parameters # Set-MFAOktaConfig -MfaOktaConfig $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Set-MFAOktaConfig" Write-Host $_.ErrorDetails } - path: /mfa/{method}/test method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/mfa-configuration#test-mfa-config source: | $Method = "okta-verify" # String | The name of the MFA method. The currently supported method names are 'okta-verify' and 'duo-web'. # Mfa method's test configuration try { Test-MFAConfig -Method $Method # Below is a request that includes all optional parameters # Test-MFAConfig -Method $Method } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Test-MFAConfig" Write-Host $_.ErrorDetails } - path: /mfa/token/send method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/mfa-controller#create-send-token source: | $SendTokenRequest = @" { "userAlias" : "will.albin", "deliveryType" : "EMAIL_WORK" } "@ # Create and send user token try { $Result = ConvertFrom-JsonToSendTokenRequest -Json $SendTokenRequest New-SendToken -SendTokenRequest $Result # Below is a request that includes all optional parameters # New-SendToken -SendTokenRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-SendToken" Write-Host $_.ErrorDetails } - path: /mfa/{method}/poll method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/mfa-controller#ping-verification-status source: | $Method = "okta-verify" # String | The name of the MFA method. The currently supported method names are 'okta-verify', 'duo-web', 'kba','token', 'rsa' $VerificationPollRequest = @" { "requestId" : "089899f13a8f4da7824996191587bab9" } "@ # Polling mfa method by verificationpollrequest try { $Result = ConvertFrom-JsonToVerificationPollRequest -Json $VerificationPollRequest Ping-VerificationStatus -Method $Method -VerificationPollRequest $Result # Below is a request that includes all optional parameters # Ping-VerificationStatus -Method $Method -VerificationPollRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Ping-VerificationStatus" Write-Host $_.ErrorDetails } - path: /mfa/duo-web/verify method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/mfa-controller#send-duo-verify-request source: | $DuoVerificationRequest = @" { "signedResponse" : "AUTH|d2lsbC5hbGJpbnxESTZNMFpHSThKQVRWTVpZN0M5VXwxNzAxMjUzMDg5|f1f5f8ced5b340f3d303b05d0efa0e43b6a8f970:APP|d2lsbC5hbGJpbnxESTZNMFpHSThKQVRWTVpZN0M5VXwxNzAxMjU2NjE5|cb44cf44353f5127edcae31b1da0355f87357db2", "userId" : "2c9180947f0ef465017f215cbcfd004b" } "@ # Verifying authentication via duo method try { $Result = ConvertFrom-JsonToDuoVerificationRequest -Json $DuoVerificationRequest Send-DuoVerifyRequest -DuoVerificationRequest $Result # Below is a request that includes all optional parameters # Send-DuoVerifyRequest -DuoVerificationRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-DuoVerifyRequest" Write-Host $_.ErrorDetails } - path: /mfa/kba/authenticate method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/mfa-controller#send-kba-answers source: | $KbaAnswerRequestItem = @"{ "answer" : "Your answer", "id" : "c54fee53-2d63-4fc5-9259-3e93b9994135" }"@ # Authenticate kba provided mfa method try { $Result = ConvertFrom-JsonToKbaAnswerRequestItem -Json $KbaAnswerRequestItem Send-KbaAnswers -KbaAnswerRequestItem $Result # Below is a request that includes all optional parameters # Send-KbaAnswers -KbaAnswerRequestItem $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-KbaAnswers" Write-Host $_.ErrorDetails } - path: /mfa/okta-verify/verify method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/mfa-controller#send-okta-verify-request source: | $OktaVerificationRequest = @" { "userId" : "example@mail.com" } "@ # Verifying authentication via okta method try { $Result = ConvertFrom-JsonToOktaVerificationRequest -Json $OktaVerificationRequest Send-OktaVerifyRequest -OktaVerificationRequest $Result # Below is a request that includes all optional parameters # Send-OktaVerifyRequest -OktaVerificationRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-OktaVerifyRequest" Write-Host $_.ErrorDetails } - path: /mfa/token/authenticate method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/mfa-controller#send-token-auth-request source: | $TokenAuthRequest = @" { "userAlias" : "will.albin", "deliveryType" : "EMAIL_WORK", "token" : "12345" } "@ # Authenticate token provided mfa method try { $Result = ConvertFrom-JsonToTokenAuthRequest -Json $TokenAuthRequest Send-TokenAuthRequest -TokenAuthRequest $Result # Below is a request that includes all optional parameters # Send-TokenAuthRequest -TokenAuthRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-TokenAuthRequest" Write-Host $_.ErrorDetails } - path: /managed-clients method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/managed-clients#create-managed-client source: | $ManagedClientRequest = @" { "name" : "aName", "description" : "A short description of the ManagedClient", "clusterId" : "aClusterId", "type" : "VA" } "@ # Create managed client try { $Result = ConvertFrom-JsonToManagedClientRequest -Json $ManagedClientRequest New-ManagedClient -ManagedClientRequest $Result # Below is a request that includes all optional parameters # New-ManagedClient -ManagedClientRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-ManagedClient" Write-Host $_.ErrorDetails } - path: /managed-clients/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/managed-clients#delete-managed-client source: | $Id = "4440278c-0ce2-41ee-a0a9-f5cfd5e8d3b7" # String | Managed client ID. # Delete managed client try { Remove-ManagedClient -Id $Id # Below is a request that includes all optional parameters # Remove-ManagedClient -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-ManagedClient" Write-Host $_.ErrorDetails } - path: /managed-clients/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/managed-clients#get-managed-client source: | $Id = "4440278c-0ce2-41ee-a0a9-f5cfd5e8d3b7" # String | Managed client ID. # Get managed client try { Get-ManagedClient -Id $Id # Below is a request that includes all optional parameters # Get-ManagedClient -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ManagedClient" Write-Host $_.ErrorDetails } - path: /managed-clients/{id}/status method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/managed-clients#get-managed-client-status source: | $Id = "aClientId" # String | Managed client ID to get status for. $Type = "CCG" # ManagedClientType | Managed client type to get status for. # Get managed client status try { Get-ManagedClientStatus -Id $Id -Type $Type # Below is a request that includes all optional parameters # Get-ManagedClientStatus -Id $Id -Type $Type } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ManagedClientStatus" Write-Host $_.ErrorDetails } - path: /managed-clients method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/managed-clients#get-managed-clients source: | $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "name eq "client name"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq* **name**: *eq* **clientId**: *eq* **clusterId**: *eq* (optional) # Get managed clients try { Get-ManagedClients # Below is a request that includes all optional parameters # Get-ManagedClients -Offset $Offset -Limit $Limit -Count $Count -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ManagedClients" Write-Host $_.ErrorDetails } - path: /managed-clients/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/managed-clients#update-managed-client source: | $Id = "4440278c-0ce2-41ee-a0a9-f5cfd5e8d3b7" # String | Managed client ID. $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Update managed client try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-ManagedClient -Id $Id -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-ManagedClient -Id $Id -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-ManagedClient" Write-Host $_.ErrorDetails } - path: /managed-clusters method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/managed-clusters#create-managed-cluster source: | $ManagedClusterRequest = @" { "configuration" : { "clusterExternalId" : "externalId", "ccgVersion" : "77.0.0" }, "name" : "Managed Cluster Name", "description" : "A short description of the managed cluster.", "type" : "idn" } "@ # Create create managed cluster try { $Result = ConvertFrom-JsonToManagedClusterRequest -Json $ManagedClusterRequest New-ManagedCluster -ManagedClusterRequest $Result # Below is a request that includes all optional parameters # New-ManagedCluster -ManagedClusterRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-ManagedCluster" Write-Host $_.ErrorDetails } - path: /managed-clusters/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/managed-clusters#delete-managed-cluster source: | $Id = "2c9180897de347a2017de8859e8c5039" # String | Managed cluster ID. $RemoveClients = $false # Boolean | Flag to determine the need to delete a cluster with clients. (optional) (default to $false) # Delete managed cluster try { Remove-ManagedCluster -Id $Id # Below is a request that includes all optional parameters # Remove-ManagedCluster -Id $Id -RemoveClients $RemoveClients } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-ManagedCluster" Write-Host $_.ErrorDetails } - path: /managed-clusters/{id}/log-config method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/managed-clusters#get-client-log-configuration source: | $Id = "2b838de9-db9b-abcf-e646-d4f274ad4238" # String | ID of managed cluster to get log configuration for. # Get managed cluster log configuration try { Get-ClientLogConfiguration -Id $Id # Below is a request that includes all optional parameters # Get-ClientLogConfiguration -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ClientLogConfiguration" Write-Host $_.ErrorDetails } - path: /managed-clusters/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/managed-clusters#get-managed-cluster source: | $Id = "2c9180897de347a2017de8859e8c5039" # String | Managed cluster ID. # Get managed cluster try { Get-ManagedCluster -Id $Id # Below is a request that includes all optional parameters # Get-ManagedCluster -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ManagedCluster" Write-Host $_.ErrorDetails } - path: /managed-clusters method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/managed-clusters#get-managed-clusters source: | $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "operational eq "operation"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **operational**: *eq* (optional) # Get managed clusters try { Get-ManagedClusters # Below is a request that includes all optional parameters # Get-ManagedClusters -Offset $Offset -Limit $Limit -Count $Count -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ManagedClusters" Write-Host $_.ErrorDetails } - path: /managed-clusters/{id}/log-config method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/managed-clusters#put-client-log-configuration source: | $Id = "2b838de9-db9b-abcf-e646-d4f274ad4238" # String | ID of the managed cluster to update the log configuration for. $PutClientLogConfigurationRequest = @" "@ # Update managed cluster log configuration try { $Result = ConvertFrom-JsonToPutClientLogConfigurationRequest -Json $PutClientLogConfigurationRequest Send-ClientLogConfiguration -Id $Id -PutClientLogConfigurationRequest $Result # Below is a request that includes all optional parameters # Send-ClientLogConfiguration -Id $Id -PutClientLogConfigurationRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-ClientLogConfiguration" Write-Host $_.ErrorDetails } - path: /managed-clusters/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/managed-clusters#update-managed-cluster source: | $Id = "2c9180897de347a2017de8859e8c5039" # String | Managed cluster ID. $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Update managed cluster try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-ManagedCluster -Id $Id -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-ManagedCluster -Id $Id -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-ManagedCluster" Write-Host $_.ErrorDetails } - path: /non-employee-approvals/{id}/approve method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#approve-non-employee-request source: | $Id = "e136567de87e4d029e60b3c3c55db56d" # String | Non-Employee approval item id (UUID) $NonEmployeeApprovalDecision = @" { "comment" : "Approved by manager" } "@ # Approve a non-employee request try { $Result = ConvertFrom-JsonToNonEmployeeApprovalDecision -Json $NonEmployeeApprovalDecision Approve-NonEmployeeRequest -Id $Id -NonEmployeeApprovalDecision $Result # Below is a request that includes all optional parameters # Approve-NonEmployeeRequest -Id $Id -NonEmployeeApprovalDecision $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Approve-NonEmployeeRequest" Write-Host $_.ErrorDetails } - path: /non-employee-records method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#create-non-employee-record source: | $NonEmployeeRequestBody = @" { "sourceId" : "2c91808568c529c60168cca6f90c1313", "firstName" : "William", "lastName" : "Smith", "manager" : "jane.doe", "data" : { "description" : "Auditing" }, "accountName" : "william.smith", "phone" : "5125555555", "endDate" : "2021-03-25T00:00:00-05:00", "email" : "william.smith@example.com", "startDate" : "2020-03-24T00:00:00-05:00" } "@ # Create non-employee record try { $Result = ConvertFrom-JsonToNonEmployeeRequestBody -Json $NonEmployeeRequestBody New-NonEmployeeRecord -NonEmployeeRequestBody $Result # Below is a request that includes all optional parameters # New-NonEmployeeRecord -NonEmployeeRequestBody $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-NonEmployeeRecord" Write-Host $_.ErrorDetails } - path: /non-employee-requests method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#create-non-employee-request source: | $NonEmployeeRequestBody = @" { "sourceId" : "2c91808568c529c60168cca6f90c1313", "firstName" : "William", "lastName" : "Smith", "manager" : "jane.doe", "data" : { "description" : "Auditing" }, "accountName" : "william.smith", "phone" : "5125555555", "endDate" : "2021-03-25T00:00:00-05:00", "email" : "william.smith@example.com", "startDate" : "2020-03-24T00:00:00-05:00" } "@ # Create non-employee request try { $Result = ConvertFrom-JsonToNonEmployeeRequestBody -Json $NonEmployeeRequestBody New-NonEmployeeRequest -NonEmployeeRequestBody $Result # Below is a request that includes all optional parameters # New-NonEmployeeRequest -NonEmployeeRequestBody $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-NonEmployeeRequest" Write-Host $_.ErrorDetails } - path: /non-employee-sources method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#create-non-employee-source source: | $NonEmployeeSourceRequestBody = @" { "owner" : { "id" : "2c91808570313110017040b06f344ec9" }, "managementWorkgroup" : "123299", "accountManagers" : [ { "id" : "2c91808570313110017040b06f344ec9" }, { "id" : "2c91808570313110017040b06f344ec9" }, { "id" : "2c91808570313110017040b06f344ec9" }, { "id" : "2c91808570313110017040b06f344ec9" }, { "id" : "2c91808570313110017040b06f344ec9" } ], "name" : "Retail", "description" : "Source description", "approvers" : [ { "id" : "2c91808570313110017040b06f344ec9" }, { "id" : "2c91808570313110017040b06f344ec9" }, { "id" : "2c91808570313110017040b06f344ec9" } ] } "@ # Create non-employee source try { $Result = ConvertFrom-JsonToNonEmployeeSourceRequestBody -Json $NonEmployeeSourceRequestBody New-NonEmployeeSource -NonEmployeeSourceRequestBody $Result # Below is a request that includes all optional parameters # New-NonEmployeeSource -NonEmployeeSourceRequestBody $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-NonEmployeeSource" Write-Host $_.ErrorDetails } - path: /non-employee-sources/{sourceId}/schema-attributes method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#create-non-employee-source-schema-attributes source: | $SourceId = "ef38f94347e94562b5bb8424a56397d8" # String | The Source id $NonEmployeeSchemaAttributeBody = @" { "helpText" : "The unique identifier for the account", "label" : "Account Name", "placeholder" : "Enter a unique user name for this account.", "type" : "TEXT", "technicalName" : "account.name", "required" : true } "@ # Create a new schema attribute for non-employee source try { $Result = ConvertFrom-JsonToNonEmployeeSchemaAttributeBody -Json $NonEmployeeSchemaAttributeBody New-NonEmployeeSourceSchemaAttributes -SourceId $SourceId -NonEmployeeSchemaAttributeBody $Result # Below is a request that includes all optional parameters # New-NonEmployeeSourceSchemaAttributes -SourceId $SourceId -NonEmployeeSchemaAttributeBody $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-NonEmployeeSourceSchemaAttributes" Write-Host $_.ErrorDetails } - path: /non-employee-records/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#delete-non-employee-record source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | Non-Employee record id (UUID) # Delete non-employee record try { Remove-NonEmployeeRecord -Id $Id # Below is a request that includes all optional parameters # Remove-NonEmployeeRecord -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-NonEmployeeRecord" Write-Host $_.ErrorDetails } - path: /non-employee-records/bulk-delete method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#delete-non-employee-records-in-bulk source: | $DeleteNonEmployeeRecordsInBulkRequest = @" "@ # Delete multiple non-employee records try { $Result = ConvertFrom-JsonToDeleteNonEmployeeRecordsInBulkRequest -Json $DeleteNonEmployeeRecordsInBulkRequest Remove-NonEmployeeRecordsInBulk -DeleteNonEmployeeRecordsInBulkRequest $Result # Below is a request that includes all optional parameters # Remove-NonEmployeeRecordsInBulk -DeleteNonEmployeeRecordsInBulkRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-NonEmployeeRecordsInBulk" Write-Host $_.ErrorDetails } - path: /non-employee-requests/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#delete-non-employee-request source: | $Id = "ac110005-7156-1150-8171-5b292e3e0084" # String | Non-Employee request id in the UUID format # Delete non-employee request try { Remove-NonEmployeeRequest -Id $Id # Below is a request that includes all optional parameters # Remove-NonEmployeeRequest -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-NonEmployeeRequest" Write-Host $_.ErrorDetails } - path: /non-employee-sources/{sourceId}/schema-attributes/{attributeId} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#delete-non-employee-schema-attribute source: | $AttributeId = "ef38f94347e94562b5bb8424a56397d8" # String | The Schema Attribute Id (UUID) $SourceId = "ef38f94347e94562b5bb8424a56397d8" # String | The Source id # Delete a schema attribute for non-employee source try { Remove-NonEmployeeSchemaAttribute -AttributeId $AttributeId -SourceId $SourceId # Below is a request that includes all optional parameters # Remove-NonEmployeeSchemaAttribute -AttributeId $AttributeId -SourceId $SourceId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-NonEmployeeSchemaAttribute" Write-Host $_.ErrorDetails } - path: /non-employee-sources/{sourceId} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#delete-non-employee-source source: | $SourceId = "e136567de87e4d029e60b3c3c55db56d" # String | Source Id # Delete non-employee source try { Remove-NonEmployeeSource -SourceId $SourceId # Below is a request that includes all optional parameters # Remove-NonEmployeeSource -SourceId $SourceId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-NonEmployeeSource" Write-Host $_.ErrorDetails } - path: /non-employee-sources/{sourceId}/schema-attributes method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#delete-non-employee-source-schema-attributes source: | $SourceId = "ef38f94347e94562b5bb8424a56397d8" # String | The Source id # Delete all custom schema attributes for non-employee source try { Remove-NonEmployeeSourceSchemaAttributes -SourceId $SourceId # Below is a request that includes all optional parameters # Remove-NonEmployeeSourceSchemaAttributes -SourceId $SourceId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-NonEmployeeSourceSchemaAttributes" Write-Host $_.ErrorDetails } - path: /non-employee-sources/{id}/non-employees/download method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#export-non-employee-records source: | $Id = "e136567de87e4d029e60b3c3c55db56d" # String | Source Id (UUID) # Exports non-employee records to csv try { Export-NonEmployeeRecords -Id $Id # Below is a request that includes all optional parameters # Export-NonEmployeeRecords -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Export-NonEmployeeRecords" Write-Host $_.ErrorDetails } - path: /non-employee-sources/{id}/schema-attributes-template/download method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#export-non-employee-source-schema-template source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | Source Id (UUID) # Exports source schema template try { Export-NonEmployeeSourceSchemaTemplate -Id $Id # Below is a request that includes all optional parameters # Export-NonEmployeeSourceSchemaTemplate -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Export-NonEmployeeSourceSchemaTemplate" Write-Host $_.ErrorDetails } - path: /non-employee-approvals/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#get-non-employee-approval source: | $Id = "e136567de87e4d029e60b3c3c55db56d" # String | Non-Employee approval item id (UUID) $IncludeDetail = $true # Boolean | The object nonEmployeeRequest will not be included detail when set to false. *Default value is true* (optional) # Get a non-employee approval item detail try { Get-NonEmployeeApproval -Id $Id # Below is a request that includes all optional parameters # Get-NonEmployeeApproval -Id $Id -IncludeDetail $IncludeDetail } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-NonEmployeeApproval" Write-Host $_.ErrorDetails } - path: /non-employee-approvals/summary/{requested-for} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#get-non-employee-approval-summary source: | $RequestedFor = "2c91808280430dfb0180431a59440460" # String | The identity (UUID) of the approver for whom for whom the summary is being retrieved. Use ""me"" instead to indicate the current user. # Get summary of non-employee approval requests try { Get-NonEmployeeApprovalSummary -RequestedFor $RequestedFor # Below is a request that includes all optional parameters # Get-NonEmployeeApprovalSummary -RequestedFor $RequestedFor } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-NonEmployeeApprovalSummary" Write-Host $_.ErrorDetails } - path: /non-employee-sources/{id}/non-employee-bulk-upload/status method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#get-non-employee-bulk-upload-status source: | $Id = "e136567de87e4d029e60b3c3c55db56d" # String | Source ID (UUID) # Obtain the status of bulk upload on the source try { Get-NonEmployeeBulkUploadStatus -Id $Id # Below is a request that includes all optional parameters # Get-NonEmployeeBulkUploadStatus -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-NonEmployeeBulkUploadStatus" Write-Host $_.ErrorDetails } - path: /non-employee-records/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#get-non-employee-record source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | Non-Employee record id (UUID) # Get a non-employee record try { Get-NonEmployeeRecord -Id $Id # Below is a request that includes all optional parameters # Get-NonEmployeeRecord -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-NonEmployeeRecord" Write-Host $_.ErrorDetails } - path: /non-employee-requests/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#get-non-employee-request source: | $Id = "ac110005-7156-1150-8171-5b292e3e0084" # String | Non-Employee request id (UUID) # Get a non-employee request try { Get-NonEmployeeRequest -Id $Id # Below is a request that includes all optional parameters # Get-NonEmployeeRequest -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-NonEmployeeRequest" Write-Host $_.ErrorDetails } - path: /non-employee-requests/summary/{requested-for} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#get-non-employee-request-summary source: | $RequestedFor = "2c91808280430dfb0180431a59440460" # String | The identity (UUID) of the non-employee account manager for whom the summary is being retrieved. Use ""me"" instead to indicate the current user. # Get summary of non-employee requests try { Get-NonEmployeeRequestSummary -RequestedFor $RequestedFor # Below is a request that includes all optional parameters # Get-NonEmployeeRequestSummary -RequestedFor $RequestedFor } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-NonEmployeeRequestSummary" Write-Host $_.ErrorDetails } - path: /non-employee-sources/{sourceId}/schema-attributes/{attributeId} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#get-non-employee-schema-attribute source: | $AttributeId = "ef38f94347e94562b5bb8424a56397d8" # String | The Schema Attribute Id (UUID) $SourceId = "ef38f94347e94562b5bb8424a56397d8" # String | The Source id # Get schema attribute non-employee source try { Get-NonEmployeeSchemaAttribute -AttributeId $AttributeId -SourceId $SourceId # Below is a request that includes all optional parameters # Get-NonEmployeeSchemaAttribute -AttributeId $AttributeId -SourceId $SourceId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-NonEmployeeSchemaAttribute" Write-Host $_.ErrorDetails } - path: /non-employee-sources/{sourceId} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#get-non-employee-source source: | $SourceId = "2c91808b7c28b350017c2a2ec5790aa1" # String | Source Id # Get a non-employee source try { Get-NonEmployeeSource -SourceId $SourceId # Below is a request that includes all optional parameters # Get-NonEmployeeSource -SourceId $SourceId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-NonEmployeeSource" Write-Host $_.ErrorDetails } - path: /non-employee-sources/{sourceId}/schema-attributes method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#get-non-employee-source-schema-attributes source: | $SourceId = "ef38f94347e94562b5bb8424a56397d8" # String | The Source id # List schema attributes non-employee source try { Get-NonEmployeeSourceSchemaAttributes -SourceId $SourceId # Below is a request that includes all optional parameters # Get-NonEmployeeSourceSchemaAttributes -SourceId $SourceId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-NonEmployeeSourceSchemaAttributes" Write-Host $_.ErrorDetails } - path: /non-employee-sources/{id}/non-employee-bulk-upload method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#import-non-employee-records-in-bulk source: | $Id = "e136567de87e4d029e60b3c3c55db56d" # String | Source Id (UUID) $Data = # System.IO.FileInfo | # Imports, or updates, non-employee records try { Import-NonEmployeeRecordsInBulk -Id $Id -Data $Data # Below is a request that includes all optional parameters # Import-NonEmployeeRecordsInBulk -Id $Id -Data $Data } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Import-NonEmployeeRecordsInBulk" Write-Host $_.ErrorDetails } - path: /non-employee-approvals method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#list-non-employee-approvals source: | $RequestedFor = "2c91808280430dfb0180431a59440460" # String | The identity for whom the request was made. *me* indicates the current user. (optional) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "approvalStatus eq "Pending"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **approvalStatus**: *eq* (optional) $Sorters = "created" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **created, modified** (optional) # Get list of non-employee approval requests try { Get-NonEmployeeApprovals # Below is a request that includes all optional parameters # Get-NonEmployeeApprovals -RequestedFor $RequestedFor -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-NonEmployeeApprovals" Write-Host $_.ErrorDetails } - path: /non-employee-records method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#list-non-employee-records source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Sorters = "accountName,sourceId" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, accountName, sourceId, manager, firstName, lastName, email, phone, startDate, endDate, created, modified** (optional) $Filters = "sourceId eq "2c91808568c529c60168cca6f90c1313"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **sourceId**: *eq* (optional) # List non-employee records try { Get-NonEmployeeRecords # Below is a request that includes all optional parameters # Get-NonEmployeeRecords -Limit $Limit -Offset $Offset -Count $Count -Sorters $Sorters -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-NonEmployeeRecords" Write-Host $_.ErrorDetails } - path: /non-employee-requests method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#list-non-employee-requests source: | $RequestedFor = "e136567de87e4d029e60b3c3c55db56d" # String | The identity for whom the request was made. *me* indicates the current user. $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Sorters = "created,approvalStatus" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **created, approvalStatus, firstName, lastName, email, phone, accountName, startDate, endDate** (optional) $Filters = "sourceId eq "2c91808568c529c60168cca6f90c1313"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **sourceId**: *eq* (optional) # List non-employee requests try { Get-NonEmployeeRequests -RequestedFor $RequestedFor # Below is a request that includes all optional parameters # Get-NonEmployeeRequests -RequestedFor $RequestedFor -Limit $Limit -Offset $Offset -Count $Count -Sorters $Sorters -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-NonEmployeeRequests" Write-Host $_.ErrorDetails } - path: /non-employee-sources method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#list-non-employee-sources source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $RequestedFor = "me" # String | Identity the request was made for. Use 'me' to indicate the current user. (optional) $NonEmployeeCount = $true # Boolean | Flag that determines whether the API will return a non-employee count associated with the source. (optional) (default to $false) $Sorters = "name,created" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, sourceId** (optional) # List non-employee sources try { Get-NonEmployeeSources # Below is a request that includes all optional parameters # Get-NonEmployeeSources -Limit $Limit -Offset $Offset -Count $Count -RequestedFor $RequestedFor -NonEmployeeCount $NonEmployeeCount -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-NonEmployeeSources" Write-Host $_.ErrorDetails } - path: /non-employee-records/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#patch-non-employee-record source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | Non-employee record id (UUID) $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Patch non-employee record try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-NonEmployeeRecord -Id $Id -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-NonEmployeeRecord -Id $Id -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-NonEmployeeRecord" Write-Host $_.ErrorDetails } - path: /non-employee-sources/{sourceId}/schema-attributes/{attributeId} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#patch-non-employee-schema-attribute source: | $AttributeId = "ef38f94347e94562b5bb8424a56397d8" # String | The Schema Attribute Id (UUID) $SourceId = "ef38f94347e94562b5bb8424a56397d8" # String | The Source id $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Patch a schema attribute for non-employee source try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-NonEmployeeSchemaAttribute -AttributeId $AttributeId -SourceId $SourceId -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-NonEmployeeSchemaAttribute -AttributeId $AttributeId -SourceId $SourceId -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-NonEmployeeSchemaAttribute" Write-Host $_.ErrorDetails } - path: /non-employee-sources/{sourceId} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#patch-non-employee-source source: | $SourceId = "e136567de87e4d029e60b3c3c55db56d" # String | Source Id $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Patch a non-employee source try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-NonEmployeeSource -SourceId $SourceId -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-NonEmployeeSource -SourceId $SourceId -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-NonEmployeeSource" Write-Host $_.ErrorDetails } - path: /non-employee-approvals/{id}/reject method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#reject-non-employee-request source: | $Id = "e136567de87e4d029e60b3c3c55db56d" # String | Non-Employee approval item id (UUID) $NonEmployeeRejectApprovalDecision = @" { "comment" : "approved" } "@ # Reject a non-employee request try { $Result = ConvertFrom-JsonToNonEmployeeRejectApprovalDecision -Json $NonEmployeeRejectApprovalDecision Deny-NonEmployeeRequest -Id $Id -NonEmployeeRejectApprovalDecision $Result # Below is a request that includes all optional parameters # Deny-NonEmployeeRequest -Id $Id -NonEmployeeRejectApprovalDecision $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Deny-NonEmployeeRequest" Write-Host $_.ErrorDetails } - path: /non-employee-records/{id} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/non-employee-lifecycle-management#update-non-employee-record source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | Non-employee record id (UUID) $NonEmployeeRequestBody = @" { "sourceId" : "2c91808568c529c60168cca6f90c1313", "firstName" : "William", "lastName" : "Smith", "manager" : "jane.doe", "data" : { "description" : "Auditing" }, "accountName" : "william.smith", "phone" : "5125555555", "endDate" : "2021-03-25T00:00:00-05:00", "email" : "william.smith@example.com", "startDate" : "2020-03-24T00:00:00-05:00" } "@ # Update non-employee record try { $Result = ConvertFrom-JsonToNonEmployeeRequestBody -Json $NonEmployeeRequestBody Update-NonEmployeeRecord -Id $Id -NonEmployeeRequestBody $Result # Below is a request that includes all optional parameters # Update-NonEmployeeRecord -Id $Id -NonEmployeeRequestBody $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-NonEmployeeRecord" Write-Host $_.ErrorDetails } - path: /oauth-clients method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/o-auth-clients#create-oauth-client source: | $CreateOAuthClientRequest = @" { "internal" : false, "businessName" : "Acme-Solar", "description" : "An API client used for the authorization_code, refresh_token, and client_credentials flows", "refreshTokenValiditySeconds" : 86400, "type" : "CONFIDENTIAL", "redirectUris" : [ "http://localhost:12345" ], "enabled" : true, "accessType" : "OFFLINE", "grantTypes" : [ "AUTHORIZATION_CODE", "CLIENT_CREDENTIALS", "REFRESH_TOKEN" ], "strongAuthSupported" : false, "homepageUrl" : "http://localhost:12345", "accessTokenValiditySeconds" : 750, "scope" : [ "demo:api-client-scope:first", "demo:api-client-scope:second" ], "name" : "Demo API Client", "claimsSupported" : false } "@ # Create oauth client try { $Result = ConvertFrom-JsonToCreateOAuthClientRequest -Json $CreateOAuthClientRequest New-OauthClient -CreateOAuthClientRequest $Result # Below is a request that includes all optional parameters # New-OauthClient -CreateOAuthClientRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-OauthClient" Write-Host $_.ErrorDetails } - path: /oauth-clients/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/o-auth-clients#delete-oauth-client source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The OAuth client id # Delete oauth client try { Remove-OauthClient -Id $Id # Below is a request that includes all optional parameters # Remove-OauthClient -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-OauthClient" Write-Host $_.ErrorDetails } - path: /oauth-clients/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/o-auth-clients#get-oauth-client source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The OAuth client id # Get oauth client try { Get-OauthClient -Id $Id # Below is a request that includes all optional parameters # Get-OauthClient -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-OauthClient" Write-Host $_.ErrorDetails } - path: /oauth-clients method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/o-auth-clients#list-oauth-clients source: | $Filters = "lastUsed le 2023-02-05T10:59:27.214Z" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **lastUsed**: *le, isnull* (optional) # List oauth clients try { Get-OauthClients # Below is a request that includes all optional parameters # Get-OauthClients -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-OauthClients" Write-Host $_.ErrorDetails } - path: /oauth-clients/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/o-auth-clients#patch-oauth-client source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The OAuth client id $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Patch oauth client try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-OauthClient -Id $Id -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-OauthClient -Id $Id -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-OauthClient" Write-Host $_.ErrorDetails } - path: /password-org-config method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-configuration#create-password-org-config source: | $PasswordOrgConfig = @" { "digitTokenLength" : 9, "digitTokenEnabled" : true, "digitTokenDurationMinutes" : 10, "customInstructionsEnabled" : true } "@ # Create password org config try { $Result = ConvertFrom-JsonToPasswordOrgConfig -Json $PasswordOrgConfig New-PasswordOrgConfig -PasswordOrgConfig $Result # Below is a request that includes all optional parameters # New-PasswordOrgConfig -PasswordOrgConfig $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-PasswordOrgConfig" Write-Host $_.ErrorDetails } - path: /password-org-config method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-configuration#get-password-org-config source: | # Get password org config try { Get-PasswordOrgConfig # Below is a request that includes all optional parameters # Get-PasswordOrgConfig } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-PasswordOrgConfig" Write-Host $_.ErrorDetails } - path: /password-org-config method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-configuration#put-password-org-config source: | $PasswordOrgConfig = @" { "digitTokenLength" : 9, "digitTokenEnabled" : true, "digitTokenDurationMinutes" : 10, "customInstructionsEnabled" : true } "@ # Update password org config try { $Result = ConvertFrom-JsonToPasswordOrgConfig -Json $PasswordOrgConfig Send-PasswordOrgConfig -PasswordOrgConfig $Result # Below is a request that includes all optional parameters # Send-PasswordOrgConfig -PasswordOrgConfig $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-PasswordOrgConfig" Write-Host $_.ErrorDetails } - path: /password-dictionary method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-dictionary#get-password-dictionary source: | # Get password dictionary try { Get-PasswordDictionary # Below is a request that includes all optional parameters # Get-PasswordDictionary } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-PasswordDictionary" Write-Host $_.ErrorDetails } - path: /password-dictionary method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-dictionary#put-password-dictionary source: | $File = # System.IO.FileInfo | (optional) # Update password dictionary try { Send-PasswordDictionary # Below is a request that includes all optional parameters # Send-PasswordDictionary -File $File } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-PasswordDictionary" Write-Host $_.ErrorDetails } - path: /password-change-status/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-management#get-password-change-status source: | $Id = "089899f13a8f4da7824996191587bab9" # String | Password change request ID # Get password change request status try { Get-PasswordChangeStatus -Id $Id # Below is a request that includes all optional parameters # Get-PasswordChangeStatus -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-PasswordChangeStatus" Write-Host $_.ErrorDetails } - path: /query-password-info method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-management#query-password-info source: | $PasswordInfoQueryDTO = @" { "sourceName" : "My-AD", "userName" : "Abby.Smith" } "@ # Query password info try { $Result = ConvertFrom-JsonToPasswordInfoQueryDTO -Json $PasswordInfoQueryDTO Search-PasswordInfo -PasswordInfoQueryDTO $Result # Below is a request that includes all optional parameters # Search-PasswordInfo -PasswordInfoQueryDTO $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Search-PasswordInfo" Write-Host $_.ErrorDetails } - path: /set-password method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-management#set-password source: | $PasswordChangeRequest = @" { "sourceId" : "8a807d4c73c545510173c545d4b60246", "accountId" : "CN=Abby Smith,OU=Austin,OU=Americas,OU=Demo,DC=seri,DC=acme,DC=com", "identityId" : "8a807d4c73c545510173c545f0a002ff", "publicKeyId" : "YWQ2NjQ4MTItZjY0NC00MWExLWFjMjktOGNmMzU3Y2VlNjk2", "encryptedPassword" : "XzN+YwKgr2C+InkMYFMBG3UtjMEw5ZIql/XFlXo8cJNeslmkplx6vn4kd4/43IF9STBk5RnzR6XmjpEO+FwHDoiBwYZAkAZK/Iswxk4OdybG6Y4MStJCOCiK8osKr35IMMSV/mbO4wAeltoCk7daTWzTGLiI6UaT5tf+F2EgdjJZ7YqM8W8r7aUWsm3p2Xt01Y46ZRx0QaM91QruiIx2rECFT2pUO0wr+7oQ77jypATyGWRtADsu3YcvCk/6U5MqCnXMzKBcRas7NnZdSL/d5H1GglVGz3VLPMaivG4/oL4chOMmFCRl/zVsGxZ9RhN8rxsRGFFKn+rhExTi+bax3A==" } "@ # Set identity's password try { $Result = ConvertFrom-JsonToPasswordChangeRequest -Json $PasswordChangeRequest Set-Password -PasswordChangeRequest $Result # Below is a request that includes all optional parameters # Set-Password -PasswordChangeRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Set-Password" Write-Host $_.ErrorDetails } - path: /password-policies method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-policies#create-password-policy source: | $PasswordPolicyV3Dto = @" { "validateAgainstAccountName" : true, "minLength" : 8, "description" : "Information about the Password Policy", "requireStrongAuthUntrustedGeographies" : true, "enablePasswdExpiration" : true, "minNumeric" : 8, "lastUpdated" : "2000-01-23T04:56:07.000+00:00", "validateAgainstAccountId" : false, "dateCreated" : "2000-01-23T04:56:07.000+00:00", "accountNameMinWordLength" : 6, "minUpper" : 8, "firstExpirationReminder" : 45, "modified" : "modified", "id" : "2c91808e7d976f3b017d9f5ceae440c8", "requireStrongAuthn" : true, "useDictionary" : false, "minSpecial" : 8, "sourceIds" : [ "2c91808382ffee0b01830de154f14034", "2f98808382ffee0b01830de154f12134" ], "passwordExpiration" : 8, "maxRepeatedChars" : 3, "minCharacterTypes" : 5, "minAlpha" : 5, "created" : "created", "useAccountAttributes" : false, "accountIdMinWordLength" : 4, "minLower" : 8, "useIdentityAttributes" : false, "defaultPolicy" : true, "requireStrongAuthOffNetwork" : true, "name" : "PasswordPolicy Example", "maxLength" : 25 } "@ # Create password policy try { $Result = ConvertFrom-JsonToPasswordPolicyV3Dto -Json $PasswordPolicyV3Dto New-PasswordPolicy -PasswordPolicyV3Dto $Result # Below is a request that includes all optional parameters # New-PasswordPolicy -PasswordPolicyV3Dto $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-PasswordPolicy" Write-Host $_.ErrorDetails } - path: /password-policies/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-policies#delete-password-policy source: | $Id = "ff808081838d9e9d01838da6a03e0002" # String | The ID of password policy to delete. # Delete password policy by id try { Remove-PasswordPolicy -Id $Id # Below is a request that includes all optional parameters # Remove-PasswordPolicy -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-PasswordPolicy" Write-Host $_.ErrorDetails } - path: /password-policies/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-policies#get-password-policy-by-id source: | $Id = "ff808081838d9e9d01838da6a03e0005" # String | The ID of password policy to retrieve. # Get password policy by id try { Get-PasswordPolicyById -Id $Id # Below is a request that includes all optional parameters # Get-PasswordPolicyById -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-PasswordPolicyById" Write-Host $_.ErrorDetails } - path: /password-policies method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-policies#list-password-policies source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) # List password policies try { Get-PasswordPolicies # Below is a request that includes all optional parameters # Get-PasswordPolicies -Limit $Limit -Offset $Offset -Count $Count } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-PasswordPolicies" Write-Host $_.ErrorDetails } - path: /password-policies/{id} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-policies#set-password-policy source: | $Id = "ff808081838d9e9d01838da6a03e0007" # String | The ID of password policy to update. $PasswordPolicyV3Dto = @" { "validateAgainstAccountName" : true, "minLength" : 8, "description" : "Information about the Password Policy", "requireStrongAuthUntrustedGeographies" : true, "enablePasswdExpiration" : true, "minNumeric" : 8, "lastUpdated" : "2000-01-23T04:56:07.000+00:00", "validateAgainstAccountId" : false, "dateCreated" : "2000-01-23T04:56:07.000+00:00", "accountNameMinWordLength" : 6, "minUpper" : 8, "firstExpirationReminder" : 45, "modified" : "modified", "id" : "2c91808e7d976f3b017d9f5ceae440c8", "requireStrongAuthn" : true, "useDictionary" : false, "minSpecial" : 8, "sourceIds" : [ "2c91808382ffee0b01830de154f14034", "2f98808382ffee0b01830de154f12134" ], "passwordExpiration" : 8, "maxRepeatedChars" : 3, "minCharacterTypes" : 5, "minAlpha" : 5, "created" : "created", "useAccountAttributes" : false, "accountIdMinWordLength" : 4, "minLower" : 8, "useIdentityAttributes" : false, "defaultPolicy" : true, "requireStrongAuthOffNetwork" : true, "name" : "PasswordPolicy Example", "maxLength" : 25 } "@ # Update password policy by id try { $Result = ConvertFrom-JsonToPasswordPolicyV3Dto -Json $PasswordPolicyV3Dto Set-PasswordPolicy -Id $Id -PasswordPolicyV3Dto $Result # Below is a request that includes all optional parameters # Set-PasswordPolicy -Id $Id -PasswordPolicyV3Dto $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Set-PasswordPolicy" Write-Host $_.ErrorDetails } - path: /password-sync-groups method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-sync-groups#create-password-sync-group source: | $PasswordSyncGroup = @" { "created" : "2023-03-16T04:00:00Z", "name" : "Password Sync Group 1", "modified" : "2023-03-16T04:00:00Z", "passwordPolicyId" : "2c91808d744ba0ce01746f93b6204501", "id" : "6881f631-3bd5-4213-9c75-8e05cc3e35dd", "sourceIds" : [ "2c918084660f45d6016617daa9210584", "2c918084660f45d6016617daa9210500" ] } "@ # Create password sync group try { $Result = ConvertFrom-JsonToPasswordSyncGroup -Json $PasswordSyncGroup New-PasswordSyncGroup -PasswordSyncGroup $Result # Below is a request that includes all optional parameters # New-PasswordSyncGroup -PasswordSyncGroup $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-PasswordSyncGroup" Write-Host $_.ErrorDetails } - path: /password-sync-groups/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-sync-groups#delete-password-sync-group source: | $Id = "6881f631-3bd5-4213-9c75-8e05cc3e35dd" # String | The ID of password sync group to delete. # Delete password sync group by id try { Remove-PasswordSyncGroup -Id $Id # Below is a request that includes all optional parameters # Remove-PasswordSyncGroup -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-PasswordSyncGroup" Write-Host $_.ErrorDetails } - path: /password-sync-groups/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-sync-groups#get-password-sync-group source: | $Id = "6881f631-3bd5-4213-9c75-8e05cc3e35dd" # String | The ID of password sync group to retrieve. # Get password sync group by id try { Get-PasswordSyncGroup -Id $Id # Below is a request that includes all optional parameters # Get-PasswordSyncGroup -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-PasswordSyncGroup" Write-Host $_.ErrorDetails } - path: /password-sync-groups method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-sync-groups#get-password-sync-groups source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) # Get password sync group list try { Get-PasswordSyncGroups # Below is a request that includes all optional parameters # Get-PasswordSyncGroups -Limit $Limit -Offset $Offset -Count $Count } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-PasswordSyncGroups" Write-Host $_.ErrorDetails } - path: /password-sync-groups/{id} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/password-sync-groups#update-password-sync-group source: | $Id = "6881f631-3bd5-4213-9c75-8e05cc3e35dd" # String | The ID of password sync group to update. $PasswordSyncGroup = @" { "created" : "2023-03-16T04:00:00Z", "name" : "Password Sync Group 1", "modified" : "2023-03-16T04:00:00Z", "passwordPolicyId" : "2c91808d744ba0ce01746f93b6204501", "id" : "6881f631-3bd5-4213-9c75-8e05cc3e35dd", "sourceIds" : [ "2c918084660f45d6016617daa9210584", "2c918084660f45d6016617daa9210500" ] } "@ # Update password sync group by id try { $Result = ConvertFrom-JsonToPasswordSyncGroup -Json $PasswordSyncGroup Update-PasswordSyncGroup -Id $Id -PasswordSyncGroup $Result # Below is a request that includes all optional parameters # Update-PasswordSyncGroup -Id $Id -PasswordSyncGroup $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-PasswordSyncGroup" Write-Host $_.ErrorDetails } - path: /personal-access-tokens method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/personal-access-tokens#create-personal-access-token source: | $CreatePersonalAccessTokenRequest = @" { "scope" : [ "demo:personal-access-token-scope:first", "demo:personal-access-token-scope:second" ], "accessTokenValiditySeconds" : 36900, "name" : "NodeJS Integration" } "@ # Create personal access token try { $Result = ConvertFrom-JsonToCreatePersonalAccessTokenRequest -Json $CreatePersonalAccessTokenRequest New-PersonalAccessToken -CreatePersonalAccessTokenRequest $Result # Below is a request that includes all optional parameters # New-PersonalAccessToken -CreatePersonalAccessTokenRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-PersonalAccessToken" Write-Host $_.ErrorDetails } - path: /personal-access-tokens/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/personal-access-tokens#delete-personal-access-token source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The personal access token id # Delete personal access token try { Remove-PersonalAccessToken -Id $Id # Below is a request that includes all optional parameters # Remove-PersonalAccessToken -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-PersonalAccessToken" Write-Host $_.ErrorDetails } - path: /personal-access-tokens method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/personal-access-tokens#list-personal-access-tokens source: | $OwnerId = "2c9180867b50d088017b554662fb281e" # String | The identity ID of the owner whose personal access tokens should be listed. If ""me"", the caller should have the following right: 'idn:my-personal-access-tokens:read' If an actual owner ID or if the `owner-id` parameter is omitted in the request, the caller should have the following right: 'idn:all-personal-access-tokens:read'. If the caller has the following right, then managed personal access tokens associated with `owner-id` will be retrieved: 'idn:managed-personal-access-tokens:read' (optional) $Filters = "lastUsed le 2023-02-05T10:59:27.214Z" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **lastUsed**: *le, isnull* (optional) # List personal access tokens try { Get-PersonalAccessTokens # Below is a request that includes all optional parameters # Get-PersonalAccessTokens -OwnerId $OwnerId -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-PersonalAccessTokens" Write-Host $_.ErrorDetails } - path: /personal-access-tokens/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/personal-access-tokens#patch-personal-access-token source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The Personal Access Token id $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Patch personal access token try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-PersonalAccessToken -Id $Id -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-PersonalAccessToken -Id $Id -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-PersonalAccessToken" Write-Host $_.ErrorDetails } - path: /public-identities method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/public-identities#get-public-identities source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "firstname eq "John"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **alias**: *eq, sw* **email**: *eq, sw* **firstname**: *eq, sw* **lastname**: *eq, sw* (optional) $AddCoreFilters = $false # Boolean | If *true*, only get identities which satisfy ALL the following criteria in addition to any criteria specified by *filters*: - Should be either correlated or protected. - Should not be ""spadmin"" or ""cloudadmin"". - uid should not be null. - lastname should not be null. - email should not be null. (optional) (default to $false) $Sorters = "name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name** (optional) # Get list of public identities try { Get-PublicIdentities # Below is a request that includes all optional parameters # Get-PublicIdentities -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -AddCoreFilters $AddCoreFilters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-PublicIdentities" Write-Host $_.ErrorDetails } - path: /public-identities-config method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/public-identities-config#get-public-identity-config source: | # Get the public identities configuration try { Get-PublicIdentityConfig # Below is a request that includes all optional parameters # Get-PublicIdentityConfig } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-PublicIdentityConfig" Write-Host $_.ErrorDetails } - path: /public-identities-config method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/public-identities-config#update-public-identity-config source: | $PublicIdentityConfig = @" { "modified" : "2018-06-25T20:22:28.104Z", "attributes" : [ { "name" : "Country", "key" : "country" }, { "name" : "Country", "key" : "country" } ], "modifiedBy" : { "name" : "Thomas Edison", "id" : "2c9180a46faadee4016fb4e018c20639", "type" : "IDENTITY" } } "@ # Update the public identities configuration try { $Result = ConvertFrom-JsonToPublicIdentityConfig -Json $PublicIdentityConfig Update-PublicIdentityConfig -PublicIdentityConfig $Result # Below is a request that includes all optional parameters # Update-PublicIdentityConfig -PublicIdentityConfig $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-PublicIdentityConfig" Write-Host $_.ErrorDetails } - path: /reports/{id}/cancel method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/reports-data-extraction#cancel-report source: | $Id = "a1ed223247144cc29d23c632624b4767" # String | ID of the running Report to cancel # Cancel report try { Suspend-Report -Id $Id # Below is a request that includes all optional parameters # Suspend-Report -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Suspend-Report" Write-Host $_.ErrorDetails } - path: /reports/{taskResultId} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/reports-data-extraction#get-report source: | $TaskResultId = "ef38f94347e94562b5bb8424a56397d8" # String | Unique identifier of the task result which handled report $FileFormat = "csv" # String | Output format of the requested report file $Name = "Identities Details Report" # String | preferred Report file name, by default will be used report name from task result. (optional) $Auditable = $true # Boolean | Enables auditing for current report download. Will create an audit event and sent it to the REPORT cloud-audit kafka topic. Event will be created if there is any result present by requested taskResultId. (optional) (default to $false) # Get report file try { Get-Report -TaskResultId $TaskResultId -FileFormat $FileFormat # Below is a request that includes all optional parameters # Get-Report -TaskResultId $TaskResultId -FileFormat $FileFormat -Name $Name -Auditable $Auditable } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Report" Write-Host $_.ErrorDetails } - path: /reports/{taskResultId}/result method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/reports-data-extraction#get-report-result source: | $TaskResultId = "ef38f94347e94562b5bb8424a56397d8" # String | Unique identifier of the task result which handled report $Completed = $true # Boolean | state of task result to apply ordering when results are fetching from the DB (optional) (default to $false) # Get report result try { Get-ReportResult -TaskResultId $TaskResultId # Below is a request that includes all optional parameters # Get-ReportResult -TaskResultId $TaskResultId -Completed $Completed } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ReportResult" Write-Host $_.ErrorDetails } - path: /reports/run method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/reports-data-extraction#start-report source: | $ReportDetails = @" { "reportType" : "ACCOUNTS", "arguments" : { "application" : "2c9180897e7742b2017e781782f705b9", "sourceName" : "Active Directory" } } "@ # Run report try { $Result = ConvertFrom-JsonToReportDetails -Json $ReportDetails Start-Report -ReportDetails $Result # Below is a request that includes all optional parameters # Start-Report -ReportDetails $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Start-Report" Write-Host $_.ErrorDetails } - path: /requestable-objects method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/requestable-objects#list-requestable-objects source: | $IdentityId = "e7eab60924f64aa284175b9fa3309599" # String | If present, the value returns only requestable objects for the specified identity. * Admin users can call this with any identity ID value. * Non-admin users can only specify *me* or pass their own identity ID value. * If absent, returns a list of all requestable objects for the tenant. Only admin users can make such a call. In this case, the available, pending, assigned accesses will not be annotated in the result. (optional) $Types = "ACCESS_PROFILE" # String[] | Filters the results to the specified type/types, where each type is one of `ROLE` or `ACCESS_PROFILE`. If absent, all types are returned. SailPoint may add support for additional types in the future without notice. (optional) $Types = @"ACCESS_PROFILE,ROLE"@ $Term = "Finance Role" # String | Allows searching requestable access items with a partial match on the name or description. If `term` is provided, then the API will ignore the `filter` query parameter. (optional) $Statuses = "AVAILABLE" # RequestableObjectRequestStatus[] | Filters the result to the specified status/statuses, where each status is one of `AVAILABLE`, `ASSIGNED`, or `PENDING`. Specifying this parameter without also specifying an `identity-id` parameter results in an error. SailPoint may add additional statuses in the future without notice. (optional) $Statuses = @"[ASSIGNED, PENDING]"@ $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "name sw "bob"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, in, sw* (optional) $Sorters = "name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name** (optional) # Requestable objects list try { Get-RequestableObjects # Below is a request that includes all optional parameters # Get-RequestableObjects -IdentityId $IdentityId -Types $Types -Term $Term -Statuses $Statuses -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-RequestableObjects" Write-Host $_.ErrorDetails } - path: /roles method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/roles#create-role source: | $Role = @" { "owner" : { "name" : "support", "id" : "2c9180a46faadee4016fb4e018c20639", "type" : "IDENTITY" }, "entitlements" : [ { "name" : "CN=entitlement.490efde5,OU=OrgCo,OU=ServiceDept,DC=HQAD,DC=local", "id" : "2c91809773dee32014e13e122092014e", "type" : "ENTITLEMENT" }, { "name" : "CN=entitlement.490efde5,OU=OrgCo,OU=ServiceDept,DC=HQAD,DC=local", "id" : "2c91809773dee32014e13e122092014e", "type" : "ENTITLEMENT" } ], "dimensional" : false, "created" : "2021-03-01T22:32:58.104Z", "dimensionRefs" : [ { "name" : "Role 2", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "DIMENSION" }, { "name" : "Role 2", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "DIMENSION" } ], "description" : "Urna amet cursus pellentesque nisl orci maximus lorem nisl euismod fusce morbi placerat adipiscing maecenas nisi tristique et metus et lacus sed morbi nunc nisl maximus magna arcu varius sollicitudin elementum enim maecenas nisi id ipsum tempus fusce diam ipsum tortor.", "membership" : { "identities" : [ { "aliasName" : "t.edison", "name" : "Thomas Edison", "id" : "2c9180a46faadee4016fb4e018c20639", "type" : "IDENTITY" }, { "aliasName" : "t.edison", "name" : "Thomas Edison", "id" : "2c9180a46faadee4016fb4e018c20639", "type" : "IDENTITY" } ], "criteria" : { "stringValue" : "carlee.cert1c9f9b6fd@mailinator.com", "children" : [ { "stringValue" : "carlee.cert1c9f9b6fd@mailinator.com", "children" : [ { "stringValue" : "carlee.cert1c9f9b6fd@mailinator.com", "operation" : "EQUALS", "key" : { "sourceId" : "2c9180867427f3a301745aec18211519", "property" : "attribute.email", "type" : "ACCOUNT" } }, { "stringValue" : "carlee.cert1c9f9b6fd@mailinator.com", "operation" : "EQUALS", "key" : { "sourceId" : "2c9180867427f3a301745aec18211519", "property" : "attribute.email", "type" : "ACCOUNT" } } ], "operation" : "EQUALS", "key" : { "sourceId" : "2c9180867427f3a301745aec18211519", "property" : "attribute.email", "type" : "ACCOUNT" } }, { "stringValue" : "carlee.cert1c9f9b6fd@mailinator.com", "children" : [ { "stringValue" : "carlee.cert1c9f9b6fd@mailinator.com", "operation" : "EQUALS", "key" : { "sourceId" : "2c9180867427f3a301745aec18211519", "property" : "attribute.email", "type" : "ACCOUNT" } }, { "stringValue" : "carlee.cert1c9f9b6fd@mailinator.com", "operation" : "EQUALS", "key" : { "sourceId" : "2c9180867427f3a301745aec18211519", "property" : "attribute.email", "type" : "ACCOUNT" } } ], "operation" : "EQUALS", "key" : { "sourceId" : "2c9180867427f3a301745aec18211519", "property" : "attribute.email", "type" : "ACCOUNT" } } ], "operation" : "EQUALS", "key" : { "sourceId" : "2c9180867427f3a301745aec18211519", "property" : "attribute.email", "type" : "ACCOUNT" } }, "type" : "IDENTITY_LIST" }, "enabled" : true, "revocationRequestConfig" : { "commentsRequired" : false, "approvalSchemes" : [ { "approverId" : "46c79819-a69f-49a2-becb-12c971ae66c6", "approverType" : "GOVERNANCE_GROUP" }, { "approverId" : "46c79819-a69f-49a2-becb-12c971ae66c6", "approverType" : "GOVERNANCE_GROUP" } ], "denialCommentsRequired" : false }, "segments" : [ "f7b1b8a3-5fed-4fd4-ad29-82014e137e19", "29cb6c06-1da8-43ea-8be4-b3125f248f2a" ], "legacyMembershipInfo" : { "type" : "IDENTITY_LIST" }, "accessRequestConfig" : { "commentsRequired" : true, "reauthorizationRequired" : true, "approvalSchemes" : [ { "approverId" : "46c79819-a69f-49a2-becb-12c971ae66c6", "approverType" : "GOVERNANCE_GROUP" }, { "approverId" : "46c79819-a69f-49a2-becb-12c971ae66c6", "approverType" : "GOVERNANCE_GROUP" } ], "denialCommentsRequired" : true }, "accessProfiles" : [ { "name" : "Access Profile 2567", "id" : "ff808081751e6e129f1518161919ecca", "type" : "ACCESS_PROFILE" }, { "name" : "Access Profile 2567", "id" : "ff808081751e6e129f1518161919ecca", "type" : "ACCESS_PROFILE" } ], "name" : "Role 2567", "modified" : "2021-03-02T20:22:28.104Z", "accessModelMetadata" : { "attributes" : [ { "key" : "iscPrivacy", "name" : "Privacy", "multiselect" : false, "status" : "active", "type" : "governance", "objectTypes" : [ "all" ], "description" : "Specifies the level of privacy associated with an access item.", "values" : [ { "value" : "public", "name" : "Public", "status" : "active" } ] } ] }, "id" : "2c918086749d78830174a1a40e121518", "requestable" : true } "@ # Create a role try { $Result = ConvertFrom-JsonToRole -Json $Role New-Role -Role $Result # Below is a request that includes all optional parameters # New-Role -Role $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-Role" Write-Host $_.ErrorDetails } - path: /roles/bulk-delete method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/roles#delete-bulk-roles source: | $RoleBulkDeleteRequest = @" { "roleIds" : [ "2c9180847812e0b1017817051919ecca", "2c9180887812e0b201781e129f151816" ] } "@ # Delete role(s) try { $Result = ConvertFrom-JsonToRoleBulkDeleteRequest -Json $RoleBulkDeleteRequest Remove-BulkRoles -RoleBulkDeleteRequest $Result # Below is a request that includes all optional parameters # Remove-BulkRoles -RoleBulkDeleteRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-BulkRoles" Write-Host $_.ErrorDetails } - path: /roles/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/roles#delete-role source: | $Id = "2c91808a7813090a017814121e121518" # String | Role ID. # Delete role try { Remove-Role -Id $Id # Below is a request that includes all optional parameters # Remove-Role -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-Role" Write-Host $_.ErrorDetails } - path: /roles/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/roles#get-role source: | $Id = "2c91808a7813090a017814121e121518" # String | Role ID. # Get role try { Get-Role -Id $Id # Below is a request that includes all optional parameters # Get-Role -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Role" Write-Host $_.ErrorDetails } - path: /roles/{id}/assigned-identities method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/roles#get-role-assigned-identities source: | $Id = "2c91808a7813090a017814121e121518" # String | ID of the Role for which the assigned Identities are to be listed $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "name sw Joe" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **aliasName**: *eq, sw* **email**: *eq, sw* **name**: *eq, sw, co* (optional) $Sorters = "aliasName,name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, aliasName, email** (optional) # List identities assigned a role try { Get-RoleAssignedIdentities -Id $Id # Below is a request that includes all optional parameters # Get-RoleAssignedIdentities -Id $Id -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-RoleAssignedIdentities" Write-Host $_.ErrorDetails } - path: /roles method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/roles#list-roles source: | $ForSubadmin = "5168015d32f890ca15812c9180835d2e" # String | If provided, filters the returned list according to what is visible to the indicated ROLE_SUBADMIN Identity. The value of the parameter is either an Identity ID, or the special value **me**, which is shorthand for the calling Identity's ID. A 400 Bad Request error is returned if the **for-subadmin** parameter is specified for an Identity that is not a subadmin. (optional) $Limit = 50 # Int32 | Note that for this API the maximum value for limit is 50. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 50) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "requestable eq false" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, sw* **created**: *gt, ge, le* **modified**: *lt, ge, le* **owner.id**: *eq, in* **requestable**: *eq* **dimensional**: *eq* (optional) $Sorters = "name,-modified" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** (optional) $ForSegmentIds = "0b5c9f25-83c6-4762-9073-e38f7bb2ae26,2e8d8180-24bc-4d21-91c6-7affdb473b0d" # String | If present and not empty, additionally filters Roles to those which are assigned to the Segment(s) with the specified IDs. If segmentation is currently unavailable, specifying this parameter results in an error. (optional) $IncludeUnsegmented = $false # Boolean | Whether or not the response list should contain unsegmented Roles. If *for-segment-ids* is absent or empty, specifying *include-unsegmented* as false results in an error. (optional) (default to $true) # List roles try { Get-Roles # Below is a request that includes all optional parameters # Get-Roles -ForSubadmin $ForSubadmin -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters -ForSegmentIds $ForSegmentIds -IncludeUnsegmented $IncludeUnsegmented } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Roles" Write-Host $_.ErrorDetails } - path: /roles/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/roles#patch-role source: | $Id = "2c91808a7813090a017814121e121518" # String | Role ID to patch $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Patch role try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-Role -Id $Id -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-Role -Id $Id -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-Role" Write-Host $_.ErrorDetails } - path: /sod-policies method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#create-sod-policy source: | $SodPolicy = @" { "conflictingAccessCriteria" : { "leftCriteria" : { "name" : "money-in", "criteriaList" : [ { "type" : "ENTITLEMENT", "id" : "2c9180866166b5b0016167c32ef31a66", "name" : "Administrator" }, { "type" : "ENTITLEMENT", "id" : "2c9180866166b5b0016167c32ef31a67", "name" : "Administrator" } ] }, "rightCriteria" : { "name" : "money-in", "criteriaList" : [ { "type" : "ENTITLEMENT", "id" : "2c9180866166b5b0016167c32ef31a66", "name" : "Administrator" }, { "type" : "ENTITLEMENT", "id" : "2c9180866166b5b0016167c32ef31a67", "name" : "Administrator" } ] } }, "ownerRef" : { "name" : "Support", "id" : "2c9180a46faadee4016fb4e018c20639", "type" : "IDENTITY" }, "created" : "2020-01-01T00:00:00Z", "scheduled" : true, "creatorId" : "0f11f2a4-7c94-4bf3-a2bd-742580fe3bde", "modifierId" : "0f11f2a4-7c94-4bf3-a2bd-742580fe3bde", "description" : "This policy ensures compliance of xyz", "violationOwnerAssignmentConfig" : { "assignmentRule" : "MANAGER", "ownerRef" : { "name" : "Support", "id" : "2c9180a46faadee4016fb4e018c20639", "type" : "IDENTITY" } }, "correctionAdvice" : "Based on the role of the employee, managers should remove access that is not required for their job function.", "type" : "GENERAL", "tags" : [ "TAG1", "TAG2" ], "name" : "policy-xyz", "modified" : "2020-01-01T00:00:00Z", "policyQuery" : "@access(id:0f11f2a4-7c94-4bf3-a2bd-742580fe3bdg) AND @access(id:0f11f2a4-7c94-4bf3-a2bd-742580fe3bdf)", "compensatingControls" : "Have a manager review the transaction decisions for their \"out of compliance\" employee", "id" : "0f11f2a4-7c94-4bf3-a2bd-742580fe3bde", "state" : "ENFORCED", "externalPolicyReference" : "XYZ policy" } "@ # Create sod policy try { $Result = ConvertFrom-JsonToSodPolicy -Json $SodPolicy New-SodPolicy -SodPolicy $Result # Below is a request that includes all optional parameters # New-SodPolicy -SodPolicy $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-SodPolicy" Write-Host $_.ErrorDetails } - path: /sod-policies/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#delete-sod-policy source: | $Id = "ef38f943-47e9-4562-b5bb-8424a56397d8" # String | The ID of the SOD Policy to delete. $Logical = $true # Boolean | Indicates whether this is a soft delete (logical true) or a hard delete. Soft delete marks the policy as deleted and just save it with this status. It could be fully deleted or recovered further. Hard delete vise versa permanently delete SOD request during this call. (optional) (default to $true) # Delete sod policy by id try { Remove-SodPolicy -Id $Id # Below is a request that includes all optional parameters # Remove-SodPolicy -Id $Id -Logical $Logical } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-SodPolicy" Write-Host $_.ErrorDetails } - path: /sod-policies/{id}/schedule method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#delete-sod-policy-schedule source: | $Id = "ef38f943-47e9-4562-b5bb-8424a56397d8" # String | The ID of the SOD policy the schedule must be deleted for. # Delete sod policy schedule try { Remove-SodPolicySchedule -Id $Id # Below is a request that includes all optional parameters # Remove-SodPolicySchedule -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-SodPolicySchedule" Write-Host $_.ErrorDetails } - path: /sod-violation-report/{reportResultId}/download/{fileName} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#get-custom-violation-report source: | $ReportResultId = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the report reference to download. $FileName = "custom-name" # String | Custom Name for the file. # Download custom violation report try { Get-CustomViolationReport -ReportResultId $ReportResultId -FileName $FileName # Below is a request that includes all optional parameters # Get-CustomViolationReport -ReportResultId $ReportResultId -FileName $FileName } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CustomViolationReport" Write-Host $_.ErrorDetails } - path: /sod-violation-report/{reportResultId}/download method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#get-default-violation-report source: | $ReportResultId = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the report reference to download. # Download violation report try { Get-DefaultViolationReport -ReportResultId $ReportResultId # Below is a request that includes all optional parameters # Get-DefaultViolationReport -ReportResultId $ReportResultId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-DefaultViolationReport" Write-Host $_.ErrorDetails } - path: /sod-violation-report method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#get-sod-all-report-run-status source: | # Get multi-report run task status try { Get-SodAllReportRunStatus # Below is a request that includes all optional parameters # Get-SodAllReportRunStatus } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-SodAllReportRunStatus" Write-Host $_.ErrorDetails } - path: /sod-policies/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#get-sod-policy source: | $Id = "ef38f943-47e9-4562-b5bb-8424a56397d8" # String | The ID of the SOD Policy to retrieve. # Get sod policy by id try { Get-SodPolicy -Id $Id # Below is a request that includes all optional parameters # Get-SodPolicy -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-SodPolicy" Write-Host $_.ErrorDetails } - path: /sod-policies/{id}/schedule method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#get-sod-policy-schedule source: | $Id = "ef38f943-47e9-4562-b5bb-8424a56397d8" # String | The ID of the SOD policy schedule to retrieve. # Get sod policy schedule try { Get-SodPolicySchedule -Id $Id # Below is a request that includes all optional parameters # Get-SodPolicySchedule -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-SodPolicySchedule" Write-Host $_.ErrorDetails } - path: /sod-policies/sod-violation-report-status/{reportResultId} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#get-sod-violation-report-run-status source: | $ReportResultId = "2e8d8180-24bc-4d21-91c6-7affdb473b0d" # String | The ID of the report reference to retrieve. # Get violation report run status try { Get-SodViolationReportRunStatus -ReportResultId $ReportResultId # Below is a request that includes all optional parameters # Get-SodViolationReportRunStatus -ReportResultId $ReportResultId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-SodViolationReportRunStatus" Write-Host $_.ErrorDetails } - path: /sod-policies/{id}/violation-report method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#get-sod-violation-report-status source: | $Id = "ef38f943-47e9-4562-b5bb-8424a56397d8" # String | The ID of the violation report to retrieve status for. # Get sod violation report status try { Get-SodViolationReportStatus -Id $Id # Below is a request that includes all optional parameters # Get-SodViolationReportStatus -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-SodViolationReportStatus" Write-Host $_.ErrorDetails } - path: /sod-policies method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#list-sod-policies source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "id eq "bc693f07e7b645539626c25954c58554"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, in* **state**: *eq, in* (optional) $Sorters = "id,name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, created, modified, description** (optional) # List sod policies try { Get-SodPolicies # Below is a request that includes all optional parameters # Get-SodPolicies -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-SodPolicies" Write-Host $_.ErrorDetails } - path: /sod-policies/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#patch-sod-policy source: | $Id = "2c918083-5d19-1a86-015d-28455b4a2329" # String | The ID of the SOD policy being modified. $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Patch sod policy by id try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-SodPolicy -Id $Id -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-SodPolicy -Id $Id -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-SodPolicy" Write-Host $_.ErrorDetails } - path: /sod-policies/{id}/schedule method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#put-policy-schedule source: | $Id = "ef38f943-47e9-4562-b5bb-8424a56397d8" # String | The ID of the SOD policy to update its schedule. $SodPolicySchedule = @" { "schedule" : { "hours" : { "values" : [ "MON", "WED" ], "interval" : 3, "type" : "LIST" }, "months" : { "values" : [ "MON", "WED" ], "interval" : 3, "type" : "LIST" }, "timeZoneId" : "America/Chicago", "days" : { "values" : [ "MON", "WED" ], "interval" : 3, "type" : "LIST" }, "expiration" : "2018-06-25T20:22:28.104Z", "type" : "WEEKLY" }, "created" : "2020-01-01T00:00:00Z", "recipients" : [ { "name" : "Michael Michaels", "id" : "2c7180a46faadee4016fb4e018c20642", "type" : "IDENTITY" }, { "name" : "Michael Michaels", "id" : "2c7180a46faadee4016fb4e018c20642", "type" : "IDENTITY" } ], "name" : "SCH-1584312283015", "creatorId" : "0f11f2a47c944bf3a2bd742580fe3bde", "modifierId" : "0f11f2a47c944bf3a2bd742580fe3bde", "modified" : "2020-01-01T00:00:00Z", "description" : "Schedule for policy xyz", "emailEmptyResults" : false } "@ # Update sod policy schedule try { $Result = ConvertFrom-JsonToSodPolicySchedule -Json $SodPolicySchedule Send-PolicySchedule -Id $Id -SodPolicySchedule $Result # Below is a request that includes all optional parameters # Send-PolicySchedule -Id $Id -SodPolicySchedule $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-PolicySchedule" Write-Host $_.ErrorDetails } - path: /sod-policies/{id} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#put-sod-policy source: | $Id = "ef38f943-47e9-4562-b5bb-8424a56397d8" # String | The ID of the SOD policy to update. $SodPolicy = @" { "conflictingAccessCriteria" : { "leftCriteria" : { "name" : "money-in", "criteriaList" : [ { "type" : "ENTITLEMENT", "id" : "2c9180866166b5b0016167c32ef31a66", "name" : "Administrator" }, { "type" : "ENTITLEMENT", "id" : "2c9180866166b5b0016167c32ef31a67", "name" : "Administrator" } ] }, "rightCriteria" : { "name" : "money-in", "criteriaList" : [ { "type" : "ENTITLEMENT", "id" : "2c9180866166b5b0016167c32ef31a66", "name" : "Administrator" }, { "type" : "ENTITLEMENT", "id" : "2c9180866166b5b0016167c32ef31a67", "name" : "Administrator" } ] } }, "ownerRef" : { "name" : "Support", "id" : "2c9180a46faadee4016fb4e018c20639", "type" : "IDENTITY" }, "created" : "2020-01-01T00:00:00Z", "scheduled" : true, "creatorId" : "0f11f2a4-7c94-4bf3-a2bd-742580fe3bde", "modifierId" : "0f11f2a4-7c94-4bf3-a2bd-742580fe3bde", "description" : "This policy ensures compliance of xyz", "violationOwnerAssignmentConfig" : { "assignmentRule" : "MANAGER", "ownerRef" : { "name" : "Support", "id" : "2c9180a46faadee4016fb4e018c20639", "type" : "IDENTITY" } }, "correctionAdvice" : "Based on the role of the employee, managers should remove access that is not required for their job function.", "type" : "GENERAL", "tags" : [ "TAG1", "TAG2" ], "name" : "policy-xyz", "modified" : "2020-01-01T00:00:00Z", "policyQuery" : "@access(id:0f11f2a4-7c94-4bf3-a2bd-742580fe3bdg) AND @access(id:0f11f2a4-7c94-4bf3-a2bd-742580fe3bdf)", "compensatingControls" : "Have a manager review the transaction decisions for their \"out of compliance\" employee", "id" : "0f11f2a4-7c94-4bf3-a2bd-742580fe3bde", "state" : "ENFORCED", "externalPolicyReference" : "XYZ policy" } "@ # Update sod policy by id try { $Result = ConvertFrom-JsonToSodPolicy -Json $SodPolicy Send-SodPolicy -Id $Id -SodPolicy $Result # Below is a request that includes all optional parameters # Send-SodPolicy -Id $Id -SodPolicy $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-SodPolicy" Write-Host $_.ErrorDetails } - path: /sod-policies/{id}/evaluate method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#start-evaluate-sod-policy source: | $Id = "ef38f943-47e9-4562-b5bb-8424a56397d8" # String | The SOD policy ID to run. # Evaluate one policy by id try { Start-EvaluateSodPolicy -Id $Id # Below is a request that includes all optional parameters # Start-EvaluateSodPolicy -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Start-EvaluateSodPolicy" Write-Host $_.ErrorDetails } - path: /sod-violation-report/run method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#start-sod-all-policies-for-org source: | $MultiPolicyRequest = @" { "filteredPolicyList" : [ "[b868cd40-ffa4-4337-9c07-1a51846cfa94, 63a07a7b-39a4-48aa-956d-50c827deba2a]", "[b868cd40-ffa4-4337-9c07-1a51846cfa94, 63a07a7b-39a4-48aa-956d-50c827deba2a]" ] } "@ # Runs all policies for org try { Start-SodAllPoliciesForOrg # Below is a request that includes all optional parameters # Start-SodAllPoliciesForOrg -MultiPolicyRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Start-SodAllPoliciesForOrg" Write-Host $_.ErrorDetails } - path: /sod-policies/{id}/violation-report/run method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-policies#start-sod-policy source: | $Id = "ef38f943-47e9-4562-b5bb-8424a56397d8" # String | The SOD policy ID to run. # Runs sod policy violation report try { Start-SodPolicy -Id $Id # Below is a request that includes all optional parameters # Start-SodPolicy -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Start-SodPolicy" Write-Host $_.ErrorDetails } - path: /sod-violations/predict method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-violations#start-predict-sod-violations source: | $IdentityWithNewAccess = @" { "identityId" : "2c91808568c529c60168cca6f90c1313", "accessRefs" : [ { "type" : "ENTITLEMENT", "id" : "2c918087682f9a86016839c050861ab1", "name" : "CN=Information Access,OU=test,OU=test-service,DC=TestAD,DC=local" }, { "type" : "ENTITLEMENT", "id" : "2c918087682f9a86016839c0509c1ab2", "name" : "CN=Information Technology,OU=test,OU=test-service,DC=TestAD,DC=local" } ] } "@ # Predict sod violations for identity. try { $Result = ConvertFrom-JsonToIdentityWithNewAccess -Json $IdentityWithNewAccess Start-PredictSodViolations -IdentityWithNewAccess $Result # Below is a request that includes all optional parameters # Start-PredictSodViolations -IdentityWithNewAccess $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Start-PredictSodViolations" Write-Host $_.ErrorDetails } - path: /sod-violations/check method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sod-violations#start-violation-check source: | $IdentityWithNewAccess1 = @" {identityId=2c91808568c529c60168cca6f90c1313, accessRefs=[{type=ENTITLEMENT, id=2c918087682f9a86016839c050861ab1, name=CN=Information Access,OU=test,OU=test-service,DC=TestAD,DC=local}, {type=ENTITLEMENT, id=2c918087682f9a86016839c0509c1ab2, name=CN=Information Technology,OU=test,OU=test-service,DC=TestAD,DC=local}], clientMetadata={additionalProp1=string, additionalProp2=string, additionalProp3=string}} "@ # Check sod violations try { $Result = ConvertFrom-JsonToIdentityWithNewAccess1 -Json $IdentityWithNewAccess1 Start-ViolationCheck -IdentityWithNewAccess1 $Result # Below is a request that includes all optional parameters # Start-ViolationCheck -IdentityWithNewAccess1 $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Start-ViolationCheck" Write-Host $_.ErrorDetails } - path: /saved-searches method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/saved-search#create-saved-search source: | $CreateSavedSearchRequest = @" "@ # Create a saved search try { $Result = ConvertFrom-JsonToCreateSavedSearchRequest -Json $CreateSavedSearchRequest New-SavedSearch -CreateSavedSearchRequest $Result # Below is a request that includes all optional parameters # New-SavedSearch -CreateSavedSearchRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-SavedSearch" Write-Host $_.ErrorDetails } - path: /saved-searches/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/saved-search#delete-saved-search source: | $Id = "2c91808568c529c60168cca6f90c1313" # String | ID of the requested document. # Delete document by id try { Remove-SavedSearch -Id $Id # Below is a request that includes all optional parameters # Remove-SavedSearch -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-SavedSearch" Write-Host $_.ErrorDetails } - path: /saved-searches/{id}/execute method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/saved-search#execute-saved-search source: | $Id = "2c91808568c529c60168cca6f90c1313" # String | ID of the requested document. $SearchArguments = @" { "owner" : "", "recipients" : [ { "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" }, { "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" } ], "scheduleId" : "7a724640-0c17-4ce9-a8c3-4a89738459c8" } "@ # Execute a saved search by id try { $Result = ConvertFrom-JsonToSearchArguments -Json $SearchArguments Invoke-ExecuteSavedSearch -Id $Id -SearchArguments $Result # Below is a request that includes all optional parameters # Invoke-ExecuteSavedSearch -Id $Id -SearchArguments $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Invoke-ExecuteSavedSearch" Write-Host $_.ErrorDetails } - path: /saved-searches/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/saved-search#get-saved-search source: | $Id = "2c91808568c529c60168cca6f90c1313" # String | ID of the requested document. # Return saved search by id try { Get-SavedSearch -Id $Id # Below is a request that includes all optional parameters # Get-SavedSearch -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-SavedSearch" Write-Host $_.ErrorDetails } - path: /saved-searches method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/saved-search#list-saved-searches source: | $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "owner.id eq "7a724640-0c17-4ce9-a8c3-4a89738459c8"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **owner.id**: *eq* (optional) # A list of saved searches try { Get-SavedSearches # Below is a request that includes all optional parameters # Get-SavedSearches -Offset $Offset -Limit $Limit -Count $Count -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-SavedSearches" Write-Host $_.ErrorDetails } - path: /saved-searches/{id} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/saved-search#put-saved-search source: | $Id = "2c91808568c529c60168cca6f90c1313" # String | ID of the requested document. $SavedSearch = @" { "owner" : { "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" }, "created" : "2018-06-25T20:22:28.104Z", "columns" : { "identity" : [ { "field" : "displayName", "header" : "Display Name" }, { "field" : "e-mail", "header" : "Work Email" } ] }, "query" : "@accounts(disabled:true)", "description" : "Disabled accounts", "orderBy" : { "identity" : [ "lastName", "firstName" ], "role" : [ "name" ] }, "sort" : [ "displayName" ], "filters" : { "terms" : [ "account_count", "account_count" ], "range" : { "lower" : { "inclusive" : false, "value" : "1" }, "upper" : { "inclusive" : false, "value" : "1" } }, "exclude" : false, "type" : "RANGE" }, "ownerId" : "2c91808568c529c60168cca6f90c1313", "indices" : [ "identities" ], "public" : false, "name" : "Disabled accounts", "modified" : "2018-06-25T20:22:28.104Z", "id" : "0de46054-fe90-434a-b84e-c6b3359d0c64", "fields" : [ "disabled" ] } "@ # Updates an existing saved search try { $Result = ConvertFrom-JsonToSavedSearch -Json $SavedSearch Send-SavedSearch -Id $Id -SavedSearch $Result # Below is a request that includes all optional parameters # Send-SavedSearch -Id $Id -SavedSearch $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-SavedSearch" Write-Host $_.ErrorDetails } - path: /scheduled-searches method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/scheduled-search#create-scheduled-search source: | $CreateScheduledSearchRequest = @" {savedSearchId=9c620e13-cd33-4804-a13d-403bd7bcdbad, schedule={type=DAILY, hours={type=LIST, values=[9]}}, recipients=[{type=IDENTITY, id=2c9180867624cbd7017642d8c8c81f67}]} "@ # Create a new scheduled search try { $Result = ConvertFrom-JsonToCreateScheduledSearchRequest -Json $CreateScheduledSearchRequest New-ScheduledSearch -CreateScheduledSearchRequest $Result # Below is a request that includes all optional parameters # New-ScheduledSearch -CreateScheduledSearchRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-ScheduledSearch" Write-Host $_.ErrorDetails } - path: /scheduled-searches/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/scheduled-search#delete-scheduled-search source: | $Id = "2c91808568c529c60168cca6f90c1313" # String | ID of the requested document. # Delete a scheduled search try { Remove-ScheduledSearch -Id $Id # Below is a request that includes all optional parameters # Remove-ScheduledSearch -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-ScheduledSearch" Write-Host $_.ErrorDetails } - path: /scheduled-searches/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/scheduled-search#get-scheduled-search source: | $Id = "2c91808568c529c60168cca6f90c1313" # String | ID of the requested document. # Get a scheduled search try { Get-ScheduledSearch -Id $Id # Below is a request that includes all optional parameters # Get-ScheduledSearch -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ScheduledSearch" Write-Host $_.ErrorDetails } - path: /scheduled-searches method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/scheduled-search#list-scheduled-search source: | $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "savedSearchId eq "6cc0945d-9eeb-4948-9033-72d066e1153e"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **owner.id**: *eq* **savedSearchId**: *eq* (optional) # List scheduled searches try { Get-ScheduledSearch # Below is a request that includes all optional parameters # Get-ScheduledSearch -Offset $Offset -Limit $Limit -Count $Count -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ScheduledSearch" Write-Host $_.ErrorDetails } - path: /scheduled-searches/{id}/unsubscribe method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/scheduled-search#unsubscribe-scheduled-search source: | $Id = "2c91808568c529c60168cca6f90c1313" # String | ID of the requested document. $TypedReference = @" { "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" } "@ # Unsubscribe a recipient from scheduled search try { $Result = ConvertFrom-JsonToTypedReference -Json $TypedReference Invoke-UnsubscribeScheduledSearch -Id $Id -TypedReference $Result # Below is a request that includes all optional parameters # Invoke-UnsubscribeScheduledSearch -Id $Id -TypedReference $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Invoke-UnsubscribeScheduledSearch" Write-Host $_.ErrorDetails } - path: /scheduled-searches/{id} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/scheduled-search#update-scheduled-search source: | $Id = "2c91808568c529c60168cca6f90c1313" # String | ID of the requested document. $ScheduledSearch = @" { "owner" : { "id" : "2c9180867624cbd7017642d8c8c81f67", "type" : "IDENTITY" }, "displayQueryDetails" : false, "created" : "", "description" : "Daily disabled accounts", "ownerId" : "2c9180867624cbd7017642d8c8c81f67", "enabled" : false, "schedule" : { "hours" : { "values" : [ "MON", "WED" ], "interval" : 3, "type" : "LIST" }, "months" : { "values" : [ "MON", "WED" ], "interval" : 3, "type" : "LIST" }, "timeZoneId" : "America/Chicago", "days" : { "values" : [ "MON", "WED" ], "interval" : 3, "type" : "LIST" }, "expiration" : "2018-06-25T20:22:28.104Z", "type" : "WEEKLY" }, "recipients" : [ { "id" : "2c9180867624cbd7017642d8c8c81f67", "type" : "IDENTITY" }, { "id" : "2c9180867624cbd7017642d8c8c81f67", "type" : "IDENTITY" } ], "savedSearchId" : "554f1511-f0a1-4744-ab14-599514d3e57c", "name" : "Daily disabled accounts", "modified" : "", "id" : "0de46054-fe90-434a-b84e-c6b3359d0c64", "emailEmptyResults" : false } "@ # Update an existing scheduled search try { $Result = ConvertFrom-JsonToScheduledSearch -Json $ScheduledSearch Update-ScheduledSearch -Id $Id -ScheduledSearch $Result # Below is a request that includes all optional parameters # Update-ScheduledSearch -Id $Id -ScheduledSearch $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-ScheduledSearch" Write-Host $_.ErrorDetails } - path: /search/aggregate method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/search#search-aggregate source: | $Search = @" { "queryDsl" : { "match" : { "name" : "john.doe" } }, "aggregationType" : "DSL", "aggregationsVersion" : "", "query" : { "query" : "name:a*", "timeZone" : "America/Chicago", "fields" : "[firstName,lastName,email]", "innerHit" : { "query" : "source.name:\\\"Active Directory\\\"", "type" : "access" } }, "aggregationsDsl" : { }, "sort" : [ "displayName", "+id" ], "filters" : { }, "queryVersion" : "", "queryType" : "SAILPOINT", "includeNested" : true, "queryResultFilter" : { "excludes" : [ "stacktrace" ], "includes" : [ "name", "displayName" ] }, "indices" : [ "identities" ], "typeAheadQuery" : { "field" : "source.name", "size" : 100, "query" : "Work", "sortByValue" : true, "nestedType" : "access", "sort" : "asc", "maxExpansions" : 10 }, "textQuery" : { "contains" : true, "terms" : [ "The quick brown fox", "3141592", "7" ], "matchAny" : false, "fields" : [ "displayName", "employeeNumber", "roleCount" ] }, "searchAfter" : [ "John Doe", "2c91808375d8e80a0175e1f88a575221" ], "aggregations" : { "filter" : { "field" : "access.type", "name" : "Entitlements", "type" : "TERM", "value" : "ENTITLEMENT" }, "bucket" : { "field" : "attributes.city", "size" : 100, "minDocCount" : 2, "name" : "Identity Locations", "type" : "TERMS" }, "metric" : { "field" : "@access.name", "name" : "Access Name Count", "type" : "COUNT" }, "subAggregation" : { "filter" : { "field" : "access.type", "name" : "Entitlements", "type" : "TERM", "value" : "ENTITLEMENT" }, "bucket" : { "field" : "attributes.city", "size" : 100, "minDocCount" : 2, "name" : "Identity Locations", "type" : "TERMS" }, "metric" : { "field" : "@access.name", "name" : "Access Name Count", "type" : "COUNT" }, "subAggregation" : { "filter" : { "field" : "access.type", "name" : "Entitlements", "type" : "TERM", "value" : "ENTITLEMENT" }, "bucket" : { "field" : "attributes.city", "size" : 100, "minDocCount" : 2, "name" : "Identity Locations", "type" : "TERMS" }, "metric" : { "field" : "@access.name", "name" : "Access Name Count", "type" : "COUNT" }, "nested" : { "name" : "id", "type" : "access" } }, "nested" : { "name" : "id", "type" : "access" } }, "nested" : { "name" : "id", "type" : "access" } } } "@ $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) # Perform a search query aggregation try { $Result = ConvertFrom-JsonToSearch -Json $Search Search-Aggregate -Search $Result # Below is a request that includes all optional parameters # Search-Aggregate -Search $Result -Offset $Offset -Limit $Limit -Count $Count } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Search-Aggregate" Write-Host $_.ErrorDetails } - path: /search/count method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/search#search-count source: | $Search = @" { "queryDsl" : { "match" : { "name" : "john.doe" } }, "aggregationType" : "DSL", "aggregationsVersion" : "", "query" : { "query" : "name:a*", "timeZone" : "America/Chicago", "fields" : "[firstName,lastName,email]", "innerHit" : { "query" : "source.name:\\\"Active Directory\\\"", "type" : "access" } }, "aggregationsDsl" : { }, "sort" : [ "displayName", "+id" ], "filters" : { }, "queryVersion" : "", "queryType" : "SAILPOINT", "includeNested" : true, "queryResultFilter" : { "excludes" : [ "stacktrace" ], "includes" : [ "name", "displayName" ] }, "indices" : [ "identities" ], "typeAheadQuery" : { "field" : "source.name", "size" : 100, "query" : "Work", "sortByValue" : true, "nestedType" : "access", "sort" : "asc", "maxExpansions" : 10 }, "textQuery" : { "contains" : true, "terms" : [ "The quick brown fox", "3141592", "7" ], "matchAny" : false, "fields" : [ "displayName", "employeeNumber", "roleCount" ] }, "searchAfter" : [ "John Doe", "2c91808375d8e80a0175e1f88a575221" ], "aggregations" : { "filter" : { "field" : "access.type", "name" : "Entitlements", "type" : "TERM", "value" : "ENTITLEMENT" }, "bucket" : { "field" : "attributes.city", "size" : 100, "minDocCount" : 2, "name" : "Identity Locations", "type" : "TERMS" }, "metric" : { "field" : "@access.name", "name" : "Access Name Count", "type" : "COUNT" }, "subAggregation" : { "filter" : { "field" : "access.type", "name" : "Entitlements", "type" : "TERM", "value" : "ENTITLEMENT" }, "bucket" : { "field" : "attributes.city", "size" : 100, "minDocCount" : 2, "name" : "Identity Locations", "type" : "TERMS" }, "metric" : { "field" : "@access.name", "name" : "Access Name Count", "type" : "COUNT" }, "subAggregation" : { "filter" : { "field" : "access.type", "name" : "Entitlements", "type" : "TERM", "value" : "ENTITLEMENT" }, "bucket" : { "field" : "attributes.city", "size" : 100, "minDocCount" : 2, "name" : "Identity Locations", "type" : "TERMS" }, "metric" : { "field" : "@access.name", "name" : "Access Name Count", "type" : "COUNT" }, "nested" : { "name" : "id", "type" : "access" } }, "nested" : { "name" : "id", "type" : "access" } }, "nested" : { "name" : "id", "type" : "access" } } } "@ # Count documents satisfying a query try { $Result = ConvertFrom-JsonToSearch -Json $Search Search-Count -Search $Result # Below is a request that includes all optional parameters # Search-Count -Search $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Search-Count" Write-Host $_.ErrorDetails } - path: /search/{index}/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/search#search-get source: | $Index = "accessprofiles" # String | The index from which to fetch the specified document. The currently supported index names are: *accessprofiles*, *accountactivities*, *entitlements*, *events*, *identities*, and *roles*. $Id = "2c91808568c529c60168cca6f90c1313" # String | ID of the requested document. # Get a document by id try { Search-Get -Index $Index -Id $Id # Below is a request that includes all optional parameters # Search-Get -Index $Index -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Search-Get" Write-Host $_.ErrorDetails } - path: /search method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/search#search-post source: | $Search = @" { "queryDsl" : { "match" : { "name" : "john.doe" } }, "aggregationType" : "DSL", "aggregationsVersion" : "", "query" : { "query" : "name:a*", "timeZone" : "America/Chicago", "fields" : "[firstName,lastName,email]", "innerHit" : { "query" : "source.name:\\\"Active Directory\\\"", "type" : "access" } }, "aggregationsDsl" : { }, "sort" : [ "displayName", "+id" ], "filters" : { }, "queryVersion" : "", "queryType" : "SAILPOINT", "includeNested" : true, "queryResultFilter" : { "excludes" : [ "stacktrace" ], "includes" : [ "name", "displayName" ] }, "indices" : [ "identities" ], "typeAheadQuery" : { "field" : "source.name", "size" : 100, "query" : "Work", "sortByValue" : true, "nestedType" : "access", "sort" : "asc", "maxExpansions" : 10 }, "textQuery" : { "contains" : true, "terms" : [ "The quick brown fox", "3141592", "7" ], "matchAny" : false, "fields" : [ "displayName", "employeeNumber", "roleCount" ] }, "searchAfter" : [ "John Doe", "2c91808375d8e80a0175e1f88a575221" ], "aggregations" : { "filter" : { "field" : "access.type", "name" : "Entitlements", "type" : "TERM", "value" : "ENTITLEMENT" }, "bucket" : { "field" : "attributes.city", "size" : 100, "minDocCount" : 2, "name" : "Identity Locations", "type" : "TERMS" }, "metric" : { "field" : "@access.name", "name" : "Access Name Count", "type" : "COUNT" }, "subAggregation" : { "filter" : { "field" : "access.type", "name" : "Entitlements", "type" : "TERM", "value" : "ENTITLEMENT" }, "bucket" : { "field" : "attributes.city", "size" : 100, "minDocCount" : 2, "name" : "Identity Locations", "type" : "TERMS" }, "metric" : { "field" : "@access.name", "name" : "Access Name Count", "type" : "COUNT" }, "subAggregation" : { "filter" : { "field" : "access.type", "name" : "Entitlements", "type" : "TERM", "value" : "ENTITLEMENT" }, "bucket" : { "field" : "attributes.city", "size" : 100, "minDocCount" : 2, "name" : "Identity Locations", "type" : "TERMS" }, "metric" : { "field" : "@access.name", "name" : "Access Name Count", "type" : "COUNT" }, "nested" : { "name" : "id", "type" : "access" } }, "nested" : { "name" : "id", "type" : "access" } }, "nested" : { "name" : "id", "type" : "access" } } } "@ $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Limit = 10000 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) # Perform search try { $Result = ConvertFrom-JsonToSearch -Json $Search Search-Post -Search $Result # Below is a request that includes all optional parameters # Search-Post -Search $Result -Offset $Offset -Limit $Limit -Count $Count } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Search-Post" Write-Host $_.ErrorDetails } - path: /accounts/search-attribute-config method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/search-attribute-configuration#create-search-attribute-config source: | $SearchAttributeConfig = @" { "displayName" : "New Mail Attribute", "name" : "newMailAttribute", "applicationAttributes" : { "2c91808b79fd2422017a0b35d30f3968" : "employeeNumber", "2c91808b79fd2422017a0b36008f396b" : "employeeNumber" } } "@ # Create extended search attributes try { $Result = ConvertFrom-JsonToSearchAttributeConfig -Json $SearchAttributeConfig New-SearchAttributeConfig -SearchAttributeConfig $Result # Below is a request that includes all optional parameters # New-SearchAttributeConfig -SearchAttributeConfig $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-SearchAttributeConfig" Write-Host $_.ErrorDetails } - path: /accounts/search-attribute-config/{name} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/search-attribute-configuration#delete-search-attribute-config source: | $Name = "newMailAttribute" # String | Name of the extended search attribute configuration to delete. # Delete extended search attribute try { Remove-SearchAttributeConfig -Name $Name # Below is a request that includes all optional parameters # Remove-SearchAttributeConfig -Name $Name } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-SearchAttributeConfig" Write-Host $_.ErrorDetails } - path: /accounts/search-attribute-config method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/search-attribute-configuration#get-search-attribute-config source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) # List extended search attributes try { Get-SearchAttributeConfig # Below is a request that includes all optional parameters # Get-SearchAttributeConfig -Limit $Limit -Offset $Offset } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-SearchAttributeConfig" Write-Host $_.ErrorDetails } - path: /accounts/search-attribute-config/{name} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/search-attribute-configuration#get-single-search-attribute-config source: | $Name = "newMailAttribute" # String | Name of the extended search attribute configuration to retrieve. # Get extended search attribute try { Get-SingleSearchAttributeConfig -Name $Name # Below is a request that includes all optional parameters # Get-SingleSearchAttributeConfig -Name $Name } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-SingleSearchAttributeConfig" Write-Host $_.ErrorDetails } - path: /accounts/search-attribute-config/{name} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/search-attribute-configuration#patch-search-attribute-config source: | $Name = "promotedMailAttribute" # String | Name of the search attribute configuration to patch. $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Update extended search attribute try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-SearchAttributeConfig -Name $Name -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-SearchAttributeConfig -Name $Name -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-SearchAttributeConfig" Write-Host $_.ErrorDetails } - path: /segments method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/segments#create-segment source: | $Segment = @" { "owner" : { "name" : "support", "id" : "2c9180a46faadee4016fb4e018c20639", "type" : "IDENTITY" }, "created" : "2020-01-01T00:00:00Z", "visibilityCriteria" : { "expression" : { "children" : [ ], "attribute" : "location", "value" : { "type" : "STRING", "value" : "Austin" }, "operator" : "EQUALS" } }, "name" : "segment-xyz", "modified" : "2020-01-01T00:00:00Z", "description" : "This segment represents xyz", "active" : true, "id" : "0f11f2a4-7c94-4bf3-a2bd-742580fe3bde" } "@ # Create segment try { $Result = ConvertFrom-JsonToSegment -Json $Segment New-Segment -Segment $Result # Below is a request that includes all optional parameters # New-Segment -Segment $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-Segment" Write-Host $_.ErrorDetails } - path: /segments/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/segments#delete-segment source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The segment ID to delete. # Delete segment by id try { Remove-Segment -Id $Id # Below is a request that includes all optional parameters # Remove-Segment -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-Segment" Write-Host $_.ErrorDetails } - path: /segments/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/segments#get-segment source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The segment ID to retrieve. # Get segment by id try { Get-Segment -Id $Id # Below is a request that includes all optional parameters # Get-Segment -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Segment" Write-Host $_.ErrorDetails } - path: /segments method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/segments#list-segments source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) # List segments try { Get-Segments # Below is a request that includes all optional parameters # Get-Segments -Limit $Limit -Offset $Offset -Count $Count } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Segments" Write-Host $_.ErrorDetails } - path: /segments/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/segments#patch-segment source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The segment ID to modify. $RequestBody = # SystemCollectionsHashtable[] | A list of segment update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * name * description * owner * visibilityCriteria * active $RequestBody = @"[{op=replace, path=/visibilityCriteria, value={expression={operator=AND, children=[{operator=EQUALS, attribute=location, value={type=STRING, value=Philadelphia}}, {operator=EQUALS, attribute=department, value={type=STRING, value=HR}}]}}}]"@ # Update segment try { $Result = ConvertFrom-JsonToRequestBody -Json $RequestBody Update-Segment -Id $Id -RequestBody $Result # Below is a request that includes all optional parameters # Update-Segment -Id $Id -RequestBody $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-Segment" Write-Host $_.ErrorDetails } - path: /service-desk-integrations method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/service-desk-integration#create-service-desk-integration source: | $ServiceDeskIntegrationDto = @" { "ownerRef" : "", "cluster" : "xyzzy999", "created" : "2024-01-17T18:45:25.994Z", "description" : "A very nice Service Desk integration", "clusterRef" : "", "type" : "ServiceNowSDIM", "managedSources" : [ "2c9180835d191a86015d28455b4a2329", "2c5680835d191a85765d28455b4a9823" ], "provisioningConfig" : { "managedResourceRefs" : [ { "type" : "SOURCE", "id" : "2c9180855d191c59015d291ceb051111", "name" : "My Source 1" }, { "type" : "SOURCE", "id" : "2c9180855d191c59015d291ceb052222", "name" : "My Source 2" } ], "provisioningRequestExpiration" : 7, "noProvisioningRequests" : true, "universalManager" : true, "planInitializerScript" : { "source" : "\\r\\n\\r\\n\\r\\n Before Provisioning Rule which changes disables and enables to a modify.\\r\\n \n" } }, "name" : "Service Desk Integration Name", "modified" : "2024-02-18T18:45:25.994Z", "attributes" : { "property" : "value", "key" : "value" }, "id" : "62945a496ef440189b1f03e3623411c8", "beforeProvisioningRule" : "" } "@ # Create new service desk integration try { $Result = ConvertFrom-JsonToServiceDeskIntegrationDto -Json $ServiceDeskIntegrationDto New-ServiceDeskIntegration -ServiceDeskIntegrationDto $Result # Below is a request that includes all optional parameters # New-ServiceDeskIntegration -ServiceDeskIntegrationDto $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-ServiceDeskIntegration" Write-Host $_.ErrorDetails } - path: /service-desk-integrations/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/service-desk-integration#delete-service-desk-integration source: | $Id = "anId" # String | ID of Service Desk integration to delete # Delete a service desk integration try { Remove-ServiceDeskIntegration -Id $Id # Below is a request that includes all optional parameters # Remove-ServiceDeskIntegration -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-ServiceDeskIntegration" Write-Host $_.ErrorDetails } - path: /service-desk-integrations/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/service-desk-integration#get-service-desk-integration source: | $Id = "anId" # String | ID of the Service Desk integration to get # Get a service desk integration try { Get-ServiceDeskIntegration -Id $Id # Below is a request that includes all optional parameters # Get-ServiceDeskIntegration -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ServiceDeskIntegration" Write-Host $_.ErrorDetails } - path: /service-desk-integrations/templates/{scriptName} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/service-desk-integration#get-service-desk-integration-template source: | $ScriptName = "aScriptName" # String | The scriptName value of the Service Desk integration template to get # Service desk integration template by scriptname try { Get-ServiceDeskIntegrationTemplate -ScriptName $ScriptName # Below is a request that includes all optional parameters # Get-ServiceDeskIntegrationTemplate -ScriptName $ScriptName } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ServiceDeskIntegrationTemplate" Write-Host $_.ErrorDetails } - path: /service-desk-integrations/types method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/service-desk-integration#get-service-desk-integration-types source: | # List service desk integration types try { Get-ServiceDeskIntegrationTypes # Below is a request that includes all optional parameters # Get-ServiceDeskIntegrationTypes } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ServiceDeskIntegrationTypes" Write-Host $_.ErrorDetails } - path: /service-desk-integrations method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/service-desk-integration#get-service-desk-integrations source: | $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Sorters = "name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name** (optional) $Filters = "name eq "John Doe"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq* **type**: *eq, in* **cluster**: *eq, in* (optional) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) # List existing service desk integrations try { Get-ServiceDeskIntegrations # Below is a request that includes all optional parameters # Get-ServiceDeskIntegrations -Offset $Offset -Limit $Limit -Sorters $Sorters -Filters $Filters -Count $Count } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ServiceDeskIntegrations" Write-Host $_.ErrorDetails } - path: /service-desk-integrations/status-check-configuration method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/service-desk-integration#get-status-check-details source: | # Get the time check configuration try { Get-StatusCheckDetails # Below is a request that includes all optional parameters # Get-StatusCheckDetails } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-StatusCheckDetails" Write-Host $_.ErrorDetails } - path: /service-desk-integrations/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/service-desk-integration#patch-service-desk-integration source: | $Id = "anId" # String | ID of the Service Desk integration to update $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Patch a service desk integration try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-ServiceDeskIntegration -Id $Id -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-ServiceDeskIntegration -Id $Id -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-ServiceDeskIntegration" Write-Host $_.ErrorDetails } - path: /service-desk-integrations/{id} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/service-desk-integration#put-service-desk-integration source: | $Id = "anId" # String | ID of the Service Desk integration to update $ServiceDeskIntegrationDto = @" { "ownerRef" : "", "cluster" : "xyzzy999", "created" : "2024-01-17T18:45:25.994Z", "description" : "A very nice Service Desk integration", "clusterRef" : "", "type" : "ServiceNowSDIM", "managedSources" : [ "2c9180835d191a86015d28455b4a2329", "2c5680835d191a85765d28455b4a9823" ], "provisioningConfig" : { "managedResourceRefs" : [ { "type" : "SOURCE", "id" : "2c9180855d191c59015d291ceb051111", "name" : "My Source 1" }, { "type" : "SOURCE", "id" : "2c9180855d191c59015d291ceb052222", "name" : "My Source 2" } ], "provisioningRequestExpiration" : 7, "noProvisioningRequests" : true, "universalManager" : true, "planInitializerScript" : { "source" : "\\r\\n\\r\\n\\r\\n Before Provisioning Rule which changes disables and enables to a modify.\\r\\n \n" } }, "name" : "Service Desk Integration Name", "modified" : "2024-02-18T18:45:25.994Z", "attributes" : { "property" : "value", "key" : "value" }, "id" : "62945a496ef440189b1f03e3623411c8", "beforeProvisioningRule" : "" } "@ # Update a service desk integration try { $Result = ConvertFrom-JsonToServiceDeskIntegrationDto -Json $ServiceDeskIntegrationDto Send-ServiceDeskIntegration -Id $Id -ServiceDeskIntegrationDto $Result # Below is a request that includes all optional parameters # Send-ServiceDeskIntegration -Id $Id -ServiceDeskIntegrationDto $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-ServiceDeskIntegration" Write-Host $_.ErrorDetails } - path: /service-desk-integrations/status-check-configuration method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/service-desk-integration#update-status-check-details source: | $QueuedCheckConfigDetails = @" { "provisioningStatusCheckIntervalMinutes" : "30", "provisioningMaxStatusCheckDays" : "2" } "@ # Update the time check configuration try { $Result = ConvertFrom-JsonToQueuedCheckConfigDetails -Json $QueuedCheckConfigDetails Update-StatusCheckDetails -QueuedCheckConfigDetails $Result # Below is a request that includes all optional parameters # Update-StatusCheckDetails -QueuedCheckConfigDetails $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-StatusCheckDetails" Write-Host $_.ErrorDetails } - path: /source-usages/{sourceId}/status method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/source-usages#get-status-by-source-id source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | ID of IDN source # Finds status of source usage try { Get-StatusBySourceId -SourceId $SourceId # Below is a request that includes all optional parameters # Get-StatusBySourceId -SourceId $SourceId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-StatusBySourceId" Write-Host $_.ErrorDetails } - path: /source-usages/{sourceId}/summaries method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/source-usages#get-usages-by-source-id source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | ID of IDN source $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Sorters = "-date" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **date** (optional) # Returns source usage insights try { Get-UsagesBySourceId -SourceId $SourceId # Below is a request that includes all optional parameters # Get-UsagesBySourceId -SourceId $SourceId -Limit $Limit -Offset $Offset -Count $Count -Sorters $Sorters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-UsagesBySourceId" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/provisioning-policies method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#create-provisioning-policy source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source id $ProvisioningPolicyDto = @" { "name" : "example provisioning policy for inactive identities", "description" : "this provisioning policy creates access based on an identity going inactive", "fields" : [ { "isRequired" : false, "transform" : { "type" : "rule", "attributes" : { "name" : "Create Unique LDAP Attribute" } }, "isMultiValued" : false, "name" : "userName", "attributes" : { "template" : "${firstname}.${lastname}${uniqueCounter}", "cloudMaxUniqueChecks" : "50", "cloudMaxSize" : "20", "cloudRequired" : "true" }, "type" : "string" }, { "isRequired" : false, "transform" : { "type" : "rule", "attributes" : { "name" : "Create Unique LDAP Attribute" } }, "isMultiValued" : false, "name" : "userName", "attributes" : { "template" : "${firstname}.${lastname}${uniqueCounter}", "cloudMaxUniqueChecks" : "50", "cloudMaxSize" : "20", "cloudRequired" : "true" }, "type" : "string" } ], "usageType" : "CREATE" } "@ # Create provisioning policy try { $Result = ConvertFrom-JsonToProvisioningPolicyDto -Json $ProvisioningPolicyDto New-ProvisioningPolicy -SourceId $SourceId -ProvisioningPolicyDto $Result # Below is a request that includes all optional parameters # New-ProvisioningPolicy -SourceId $SourceId -ProvisioningPolicyDto $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-ProvisioningPolicy" Write-Host $_.ErrorDetails } - path: /sources method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#create-source source: | $Source = @" { "cluster" : { "name" : "Corporate Cluster", "id" : "2c9180866166b5b0016167c32ef31a66", "type" : "CLUSTER" }, "deleteThreshold" : 10, "connectorId" : "active-directory", "description" : "This is the corporate directory.", "type" : "OpenLDAP - Direct", "connectorClass" : "sailpoint.connector.LDAPConnector", "connectionType" : "file", "features" : [ "PROVISIONING", "NO_PERMISSIONS_PROVISIONING", "GROUPS_HAVE_MEMBERS" ], "passwordPolicies" : [ { "type" : "PASSWORD_POLICY", "id" : "2c9180855d191c59015d291ceb053980", "name" : "Corporate Password Policy" }, { "type" : "PASSWORD_POLICY", "id" : "2c9180855d191c59015d291ceb057777", "name" : "Vendor Password Policy" } ], "modified" : "2024-01-23T18:08:50.897Z", "id" : "2c91808568c529c60168cca6f90c1324", "connectorImplementationId" : "delimited-file", "managerCorrelationRule" : { "name" : "Example Rule", "id" : "2c918085708c274401708c2a8a760001", "type" : "RULE" }, "owner" : { "name" : "MyName", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" }, "managementWorkgroup" : { "name" : "My Management Workgroup", "id" : "2c91808568c529c60168cca6f90c2222", "type" : "GOVERNANCE_GROUP" }, "accountCorrelationRule" : { "name" : "Example Rule", "id" : "2c918085708c274401708c2a8a760001", "type" : "RULE" }, "authoritative" : false, "connectorAttributes" : { "healthCheckTimeout" : 30, "authSearchAttributes" : [ "cn", "uid", "mail" ] }, "created" : "2022-02-08T14:50:03.827Z", "managerCorrelationMapping" : { "accountAttributeName" : "manager", "identityAttributeName" : "manager" }, "credentialProviderEnabled" : false, "accountCorrelationConfig" : { "name" : "Directory [source-62867] Account Correlation", "id" : "2c9180855d191c59015d28583727245a", "type" : "ACCOUNT_CORRELATION_CONFIG" }, "connector" : "active-directory", "healthy" : true, "schemas" : [ { "type" : "CONNECTOR_SCHEMA", "id" : "2c9180835d191a86015d28455b4b232a", "name" : "account" }, { "type" : "CONNECTOR_SCHEMA", "id" : "2c9180835d191a86015d28455b4b232b", "name" : "group" } ], "name" : "My Source", "connectorName" : "Active Directory", "category" : "CredentialProvider", "beforeProvisioningRule" : { "name" : "Example Rule", "id" : "2c918085708c274401708c2a8a760001", "type" : "RULE" }, "status" : "SOURCE_STATE_HEALTHY", "since" : "2021-09-28T15:48:29.3801666300Z" } "@ $ProvisionAsCsv = $false # Boolean | If this parameter is `true`, it configures the source as a Delimited File (CSV) source. Setting this to `true` will automatically set the `type` of the source to `DelimitedFile`. You must use this query parameter to create a Delimited File source as you would in the UI. If you don't set this query parameter and you attempt to set the `type` attribute directly, the request won't correctly generate the source. (optional) # Creates a source in identitynow. try { $Result = ConvertFrom-JsonToSource -Json $Source New-Source -Source $Result # Below is a request that includes all optional parameters # New-Source -Source $Result -ProvisionAsCsv $ProvisionAsCsv } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-Source" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/schemas method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#create-source-schema source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | Source ID. $Schema = @" { "features" : [ "PROVISIONING", "NO_PERMISSIONS_PROVISIONING", "GROUPS_HAVE_MEMBERS" ], "nativeObjectType" : "User", "configuration" : { "groupMemberAttribute" : "member" }, "created" : "2019-12-24T22:32:58.104Z", "includePermissions" : false, "name" : "account", "hierarchyAttribute" : "memberOf", "modified" : "2019-12-31T20:22:28.104Z", "attributes" : [ { "name" : "sAMAccountName", "type" : "STRING", "isMultiValued" : false, "isEntitlement" : false, "isGroup" : false }, { "name" : "memberOf", "type" : "STRING", "schema" : { "type" : "CONNECTOR_SCHEMA", "id" : "2c9180887671ff8c01767b4671fc7d60", "name" : "group" }, "description" : "Group membership", "isMultiValued" : true, "isEntitlement" : true, "isGroup" : true } ], "id" : "2c9180835d191a86015d28455b4a2329", "displayAttribute" : "distinguishedName", "identityAttribute" : "sAMAccountName" } "@ # Create schema on source try { $Result = ConvertFrom-JsonToSchema -Json $Schema New-SourceSchema -SourceId $SourceId -Schema $Result # Below is a request that includes all optional parameters # New-SourceSchema -SourceId $SourceId -Schema $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-SourceSchema" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/provisioning-policies/{usageType} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#delete-provisioning-policy source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source ID. $UsageType = "CREATE" # UsageType | The type of provisioning policy usage. In IdentityNow, a source can support various provisioning operations. For example, when a joiner is added to a source, this may trigger both CREATE and UPDATE provisioning operations. Each usage type is considered a provisioning policy. A source can have any number of these provisioning policies defined. These are the common usage types: CREATE - This usage type relates to 'Create Account Profile', the provisioning template for the account to be created. For example, this would be used for a joiner on a source. UPDATE - This usage type relates to 'Update Account Profile', the provisioning template for the 'Update' connector operations. For example, this would be used for an attribute sync on a source. ENABLE - This usage type relates to 'Enable Account Profile', the provisioning template for the account to be enabled. For example, this could be used for a joiner on a source once the joiner's account is created. DISABLE - This usage type relates to 'Disable Account Profile', the provisioning template for the account to be disabled. For example, this could be used when a leaver is removed temporarily from a source. You can use these four usage types for all your provisioning policy needs. # Delete provisioning policy by usagetype try { Remove-ProvisioningPolicy -SourceId $SourceId -UsageType $UsageType # Below is a request that includes all optional parameters # Remove-ProvisioningPolicy -SourceId $SourceId -UsageType $UsageType } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-ProvisioningPolicy" Write-Host $_.ErrorDetails } - path: /sources/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#delete-source source: | $Id = "2c9180835d191a86015d28455b4a2329" # String | Source ID. # Delete source by id try { Remove-Source -Id $Id # Below is a request that includes all optional parameters # Remove-Source -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-Source" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/schemas/{schemaId} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#delete-source-schema source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source id. $SchemaId = "2c9180835d191a86015d28455b4a2329" # String | The Schema id. # Delete source schema by id try { Remove-SourceSchema -SourceId $SourceId -SchemaId $SchemaId # Below is a request that includes all optional parameters # Remove-SourceSchema -SourceId $SourceId -SchemaId $SchemaId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-SourceSchema" Write-Host $_.ErrorDetails } - path: /sources/{id}/schemas/accounts method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#get-accounts-schema source: | $Id = "8c190e6787aa4ed9a90bd9d5344523fb" # String | The Source id # Downloads source accounts schema template try { Get-AccountsSchema -Id $Id # Below is a request that includes all optional parameters # Get-AccountsSchema -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-AccountsSchema" Write-Host $_.ErrorDetails } - path: /sources/{id}/schemas/entitlements method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#get-entitlements-schema source: | $Id = "8c190e6787aa4ed9a90bd9d5344523fb" # String | The Source id $SchemaName = "?schemaName=group" # String | Name of entitlement schema (optional) # Downloads source entitlements schema template try { Get-EntitlementsSchema -Id $Id # Below is a request that includes all optional parameters # Get-EntitlementsSchema -Id $Id -SchemaName $SchemaName } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-EntitlementsSchema" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/provisioning-policies/{usageType} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#get-provisioning-policy source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source ID. $UsageType = "CREATE" # UsageType | The type of provisioning policy usage. In IdentityNow, a source can support various provisioning operations. For example, when a joiner is added to a source, this may trigger both CREATE and UPDATE provisioning operations. Each usage type is considered a provisioning policy. A source can have any number of these provisioning policies defined. These are the common usage types: CREATE - This usage type relates to 'Create Account Profile', the provisioning template for the account to be created. For example, this would be used for a joiner on a source. UPDATE - This usage type relates to 'Update Account Profile', the provisioning template for the 'Update' connector operations. For example, this would be used for an attribute sync on a source. ENABLE - This usage type relates to 'Enable Account Profile', the provisioning template for the account to be enabled. For example, this could be used for a joiner on a source once the joiner's account is created. DISABLE - This usage type relates to 'Disable Account Profile', the provisioning template for the account to be disabled. For example, this could be used when a leaver is removed temporarily from a source. You can use these four usage types for all your provisioning policy needs. # Get provisioning policy by usagetype try { Get-ProvisioningPolicy -SourceId $SourceId -UsageType $UsageType # Below is a request that includes all optional parameters # Get-ProvisioningPolicy -SourceId $SourceId -UsageType $UsageType } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ProvisioningPolicy" Write-Host $_.ErrorDetails } - path: /sources/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#get-source source: | $Id = "2c9180835d191a86015d28455b4a2329" # String | Source ID. # Get source by id try { Get-Source -Id $Id # Below is a request that includes all optional parameters # Get-Source -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Source" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/connections method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#get-source-connections source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | Source ID. # Get source connections by id try { Get-SourceConnections -SourceId $SourceId # Below is a request that includes all optional parameters # Get-SourceConnections -SourceId $SourceId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-SourceConnections" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/source-health method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#get-source-health source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source id. # Fetches source health by id try { Get-SourceHealth -SourceId $SourceId # Below is a request that includes all optional parameters # Get-SourceHealth -SourceId $SourceId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-SourceHealth" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/schemas/{schemaId} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#get-source-schema source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source id. $SchemaId = "2c9180835d191a86015d28455b4a2329" # String | The Schema id. # Get source schema by id try { Get-SourceSchema -SourceId $SourceId -SchemaId $SchemaId # Below is a request that includes all optional parameters # Get-SourceSchema -SourceId $SourceId -SchemaId $SchemaId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-SourceSchema" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/schemas method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#get-source-schemas source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | Source ID. $IncludeTypes = "group" # String | If set to 'group', then the account schema is filtered and only group schemas are returned. Only a value of 'group' is recognized presently. Note: The API will check whether include-types is group or not, if not, it will list schemas based on include-names, if include-names is not provided, it will list all schemas. (optional) $IncludeNames = "account" # String | A comma-separated list of schema names to filter result. (optional) # List schemas on source try { Get-SourceSchemas -SourceId $SourceId # Below is a request that includes all optional parameters # Get-SourceSchemas -SourceId $SourceId -IncludeTypes $IncludeTypes -IncludeNames $IncludeNames } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-SourceSchemas" Write-Host $_.ErrorDetails } - path: /sources/{id}/schemas/accounts method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#import-accounts-schema source: | $Id = "8c190e6787aa4ed9a90bd9d5344523fb" # String | The Source id $File = # System.IO.FileInfo | (optional) # Uploads source accounts schema template try { Import-AccountsSchema -Id $Id # Below is a request that includes all optional parameters # Import-AccountsSchema -Id $Id -File $File } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Import-AccountsSchema" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/upload-connector-file method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#import-connector-file source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source id. $File = # System.IO.FileInfo | (optional) # Upload connector file to source try { Import-ConnectorFile -SourceId $SourceId # Below is a request that includes all optional parameters # Import-ConnectorFile -SourceId $SourceId -File $File } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Import-ConnectorFile" Write-Host $_.ErrorDetails } - path: /sources/{id}/schemas/entitlements method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#import-entitlements-schema source: | $Id = "8c190e6787aa4ed9a90bd9d5344523fb" # String | The Source id $SchemaName = "?schemaName=group" # String | Name of entitlement schema (optional) $File = # System.IO.FileInfo | (optional) # Uploads source entitlements schema template try { Import-EntitlementsSchema -Id $Id # Below is a request that includes all optional parameters # Import-EntitlementsSchema -Id $Id -SchemaName $SchemaName -File $File } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Import-EntitlementsSchema" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/provisioning-policies method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#list-provisioning-policies source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source id # Lists provisioningpolicies try { Get-ProvisioningPolicies -SourceId $SourceId # Below is a request that includes all optional parameters # Get-ProvisioningPolicies -SourceId $SourceId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-ProvisioningPolicies" Write-Host $_.ErrorDetails } - path: /sources method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#list-sources source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "name eq "Employees"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in, ge, gt, le, lt, ne, isnull, sw* **name**: *co, eq, in, sw, ge, gt, ne, isnull* **type**: *eq, in, ge, gt, ne, isnull, sw* **owner.id**: *eq, in, ge, gt, le, lt, ne, isnull, sw* **features**: *ca, co* **created**: *eq, ge, gt, in, le, lt, ne, isnull, sw* **modified**: *eq, ge, gt, in, le, lt, ne, isnull, sw* **managementWorkgroup.id**: *eq, ge, gt, in, le, lt, ne, isnull, sw* **description**: *eq, sw* **authoritative**: *eq, ne, isnull* **healthy**: *isnull* **status**: *eq, in, ge, gt, le, lt, ne, isnull, sw* **connectionType**: *eq, ge, gt, in, le, lt, ne, isnull, sw* **connectorName**: *eq, ge, gt, in, ne, isnull, sw* **category**: *co, eq, ge, gt, in, le, lt, ne, sw* (optional) $Sorters = "name" # String | Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **type, created, modified, name, owner.name, healthy, status, id, description, owner.id, accountCorrelationConfig.id, accountCorrelationConfig.name, managerCorrelationRule.type, managerCorrelationRule.id, managerCorrelationRule.name, authoritative, managementWorkgroup.id, connectorName, connectionType** (optional) $ForSubadmin = "name" # String | Filter the returned list of sources for the identity specified by the parameter, which is the id of an identity with the role SOURCE_SUBADMIN. By convention, the value **me** indicates the identity id of the current user. Subadmins may only view Sources which they are able to administer; all other Sources will be filtered out when this parameter is set. If the current user is a SOURCE_SUBADMIN but fails to pass a valid value for this parameter, a 403 Forbidden is returned. (optional) $IncludeIDNSource = $true # Boolean | Include the IdentityNow source in the response. (optional) (default to $false) # Lists all sources in identitynow. try { Get-Sources # Below is a request that includes all optional parameters # Get-Sources -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters -ForSubadmin $ForSubadmin -IncludeIDNSource $IncludeIDNSource } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Sources" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/provisioning-policies/{usageType} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#put-provisioning-policy source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source ID. $UsageType = "CREATE" # UsageType | The type of provisioning policy usage. In IdentityNow, a source can support various provisioning operations. For example, when a joiner is added to a source, this may trigger both CREATE and UPDATE provisioning operations. Each usage type is considered a provisioning policy. A source can have any number of these provisioning policies defined. These are the common usage types: CREATE - This usage type relates to 'Create Account Profile', the provisioning template for the account to be created. For example, this would be used for a joiner on a source. UPDATE - This usage type relates to 'Update Account Profile', the provisioning template for the 'Update' connector operations. For example, this would be used for an attribute sync on a source. ENABLE - This usage type relates to 'Enable Account Profile', the provisioning template for the account to be enabled. For example, this could be used for a joiner on a source once the joiner's account is created. DISABLE - This usage type relates to 'Disable Account Profile', the provisioning template for the account to be disabled. For example, this could be used when a leaver is removed temporarily from a source. You can use these four usage types for all your provisioning policy needs. $ProvisioningPolicyDto = @" { "name" : "example provisioning policy for inactive identities", "description" : "this provisioning policy creates access based on an identity going inactive", "fields" : [ { "isRequired" : false, "transform" : { "type" : "rule", "attributes" : { "name" : "Create Unique LDAP Attribute" } }, "isMultiValued" : false, "name" : "userName", "attributes" : { "template" : "${firstname}.${lastname}${uniqueCounter}", "cloudMaxUniqueChecks" : "50", "cloudMaxSize" : "20", "cloudRequired" : "true" }, "type" : "string" }, { "isRequired" : false, "transform" : { "type" : "rule", "attributes" : { "name" : "Create Unique LDAP Attribute" } }, "isMultiValued" : false, "name" : "userName", "attributes" : { "template" : "${firstname}.${lastname}${uniqueCounter}", "cloudMaxUniqueChecks" : "50", "cloudMaxSize" : "20", "cloudRequired" : "true" }, "type" : "string" } ], "usageType" : "CREATE" } "@ # Update provisioning policy by usagetype try { $Result = ConvertFrom-JsonToProvisioningPolicyDto -Json $ProvisioningPolicyDto Send-ProvisioningPolicy -SourceId $SourceId -UsageType $UsageType -ProvisioningPolicyDto $Result # Below is a request that includes all optional parameters # Send-ProvisioningPolicy -SourceId $SourceId -UsageType $UsageType -ProvisioningPolicyDto $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-ProvisioningPolicy" Write-Host $_.ErrorDetails } - path: /sources/{id} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#put-source source: | $Id = "2c9180835d191a86015d28455b4a2329" # String | Source ID. $Source = @" { "cluster" : { "name" : "Corporate Cluster", "id" : "2c9180866166b5b0016167c32ef31a66", "type" : "CLUSTER" }, "deleteThreshold" : 10, "connectorId" : "active-directory", "description" : "This is the corporate directory.", "type" : "OpenLDAP - Direct", "connectorClass" : "sailpoint.connector.LDAPConnector", "connectionType" : "file", "features" : [ "PROVISIONING", "NO_PERMISSIONS_PROVISIONING", "GROUPS_HAVE_MEMBERS" ], "passwordPolicies" : [ { "type" : "PASSWORD_POLICY", "id" : "2c9180855d191c59015d291ceb053980", "name" : "Corporate Password Policy" }, { "type" : "PASSWORD_POLICY", "id" : "2c9180855d191c59015d291ceb057777", "name" : "Vendor Password Policy" } ], "modified" : "2024-01-23T18:08:50.897Z", "id" : "2c91808568c529c60168cca6f90c1324", "connectorImplementationId" : "delimited-file", "managerCorrelationRule" : { "name" : "Example Rule", "id" : "2c918085708c274401708c2a8a760001", "type" : "RULE" }, "owner" : { "name" : "MyName", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" }, "managementWorkgroup" : { "name" : "My Management Workgroup", "id" : "2c91808568c529c60168cca6f90c2222", "type" : "GOVERNANCE_GROUP" }, "accountCorrelationRule" : { "name" : "Example Rule", "id" : "2c918085708c274401708c2a8a760001", "type" : "RULE" }, "authoritative" : false, "connectorAttributes" : { "healthCheckTimeout" : 30, "authSearchAttributes" : [ "cn", "uid", "mail" ] }, "created" : "2022-02-08T14:50:03.827Z", "managerCorrelationMapping" : { "accountAttributeName" : "manager", "identityAttributeName" : "manager" }, "credentialProviderEnabled" : false, "accountCorrelationConfig" : { "name" : "Directory [source-62867] Account Correlation", "id" : "2c9180855d191c59015d28583727245a", "type" : "ACCOUNT_CORRELATION_CONFIG" }, "connector" : "active-directory", "healthy" : true, "schemas" : [ { "type" : "CONNECTOR_SCHEMA", "id" : "2c9180835d191a86015d28455b4b232a", "name" : "account" }, { "type" : "CONNECTOR_SCHEMA", "id" : "2c9180835d191a86015d28455b4b232b", "name" : "group" } ], "name" : "My Source", "connectorName" : "Active Directory", "category" : "CredentialProvider", "beforeProvisioningRule" : { "name" : "Example Rule", "id" : "2c918085708c274401708c2a8a760001", "type" : "RULE" }, "status" : "SOURCE_STATE_HEALTHY", "since" : "2021-09-28T15:48:29.3801666300Z" } "@ # Update source (full) try { $Result = ConvertFrom-JsonToSource -Json $Source Send-Source -Id $Id -Source $Result # Below is a request that includes all optional parameters # Send-Source -Id $Id -Source $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-Source" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/schemas/{schemaId} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#put-source-schema source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source id. $SchemaId = "2c9180835d191a86015d28455b4a2329" # String | The Schema id. $Schema = @" { "features" : [ "PROVISIONING", "NO_PERMISSIONS_PROVISIONING", "GROUPS_HAVE_MEMBERS" ], "nativeObjectType" : "User", "configuration" : { "groupMemberAttribute" : "member" }, "created" : "2019-12-24T22:32:58.104Z", "includePermissions" : false, "name" : "account", "hierarchyAttribute" : "memberOf", "modified" : "2019-12-31T20:22:28.104Z", "attributes" : [ { "name" : "sAMAccountName", "type" : "STRING", "isMultiValued" : false, "isEntitlement" : false, "isGroup" : false }, { "name" : "memberOf", "type" : "STRING", "schema" : { "type" : "CONNECTOR_SCHEMA", "id" : "2c9180887671ff8c01767b4671fc7d60", "name" : "group" }, "description" : "Group membership", "isMultiValued" : true, "isEntitlement" : true, "isGroup" : true } ], "id" : "2c9180835d191a86015d28455b4a2329", "displayAttribute" : "distinguishedName", "identityAttribute" : "sAMAccountName" } "@ # Update source schema (full) try { $Result = ConvertFrom-JsonToSchema -Json $Schema Send-SourceSchema -SourceId $SourceId -SchemaId $SchemaId -Schema $Result # Below is a request that includes all optional parameters # Send-SourceSchema -SourceId $SourceId -SchemaId $SchemaId -Schema $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-SourceSchema" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/provisioning-policies/bulk-update method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#update-provisioning-policies-in-bulk source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source id. $ProvisioningPolicyDto = @"{ "name" : "example provisioning policy for inactive identities", "description" : "this provisioning policy creates access based on an identity going inactive", "fields" : [ { "isRequired" : false, "transform" : { "type" : "rule", "attributes" : { "name" : "Create Unique LDAP Attribute" } }, "isMultiValued" : false, "name" : "userName", "attributes" : { "template" : "${firstname}.${lastname}${uniqueCounter}", "cloudMaxUniqueChecks" : "50", "cloudMaxSize" : "20", "cloudRequired" : "true" }, "type" : "string" }, { "isRequired" : false, "transform" : { "type" : "rule", "attributes" : { "name" : "Create Unique LDAP Attribute" } }, "isMultiValued" : false, "name" : "userName", "attributes" : { "template" : "${firstname}.${lastname}${uniqueCounter}", "cloudMaxUniqueChecks" : "50", "cloudMaxSize" : "20", "cloudRequired" : "true" }, "type" : "string" } ], "usageType" : "CREATE" }"@ # Bulk update provisioning policies try { $Result = ConvertFrom-JsonToProvisioningPolicyDto -Json $ProvisioningPolicyDto Update-ProvisioningPoliciesInBulk -SourceId $SourceId -ProvisioningPolicyDto $Result # Below is a request that includes all optional parameters # Update-ProvisioningPoliciesInBulk -SourceId $SourceId -ProvisioningPolicyDto $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-ProvisioningPoliciesInBulk" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/provisioning-policies/{usageType} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#update-provisioning-policy source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source id. $UsageType = "CREATE" # UsageType | The type of provisioning policy usage. In IdentityNow, a source can support various provisioning operations. For example, when a joiner is added to a source, this may trigger both CREATE and UPDATE provisioning operations. Each usage type is considered a provisioning policy. A source can have any number of these provisioning policies defined. These are the common usage types: CREATE - This usage type relates to 'Create Account Profile', the provisioning template for the account to be created. For example, this would be used for a joiner on a source. UPDATE - This usage type relates to 'Update Account Profile', the provisioning template for the 'Update' connector operations. For example, this would be used for an attribute sync on a source. ENABLE - This usage type relates to 'Enable Account Profile', the provisioning template for the account to be enabled. For example, this could be used for a joiner on a source once the joiner's account is created. DISABLE - This usage type relates to 'Disable Account Profile', the provisioning template for the account to be disabled. For example, this could be used when a leaver is removed temporarily from a source. You can use these four usage types for all your provisioning policy needs. $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Partial update of provisioning policy try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-ProvisioningPolicy -SourceId $SourceId -UsageType $UsageType -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-ProvisioningPolicy -SourceId $SourceId -UsageType $UsageType -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-ProvisioningPolicy" Write-Host $_.ErrorDetails } - path: /sources/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#update-source source: | $Id = "2c9180835d191a86015d28455b4a2329" # String | Source ID. $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Update source (partial) try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-Source -Id $Id -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-Source -Id $Id -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-Source" Write-Host $_.ErrorDetails } - path: /sources/{sourceId}/schemas/{schemaId} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/sources#update-source-schema source: | $SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source id. $SchemaId = "2c9180835d191a86015d28455b4a2329" # String | The Schema id. $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Update source schema (partial) try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-SourceSchema -SourceId $SourceId -SchemaId $SchemaId -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-SourceSchema -SourceId $SourceId -SchemaId $SchemaId -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-SourceSchema" Write-Host $_.ErrorDetails } - path: /tagged-objects/{type}/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/tagged-objects#delete-tagged-object source: | $Type = "ACCESS_PROFILE" # String | The type of object to delete tags from. $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the object to delete tags from. # Delete object tags try { Remove-TaggedObject -Type $Type -Id $Id # Below is a request that includes all optional parameters # Remove-TaggedObject -Type $Type -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-TaggedObject" Write-Host $_.ErrorDetails } - path: /tagged-objects/bulk-remove method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/tagged-objects#delete-tags-to-many-object source: | $BulkRemoveTaggedObject = @" { "objectRefs" : [ { "name" : "William Wilson", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" }, { "name" : "William Wilson", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" } ], "tags" : [ "BU_FINANCE", "PCI" ] } "@ # Remove tags from multiple objects try { $Result = ConvertFrom-JsonToBulkRemoveTaggedObject -Json $BulkRemoveTaggedObject Remove-TagsToManyObject -BulkRemoveTaggedObject $Result # Below is a request that includes all optional parameters # Remove-TagsToManyObject -BulkRemoveTaggedObject $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-TagsToManyObject" Write-Host $_.ErrorDetails } - path: /tagged-objects/{type}/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/tagged-objects#get-tagged-object source: | $Type = "ACCESS_PROFILE" # String | The type of tagged object to retrieve. $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the object reference to retrieve. # Get tagged object try { Get-TaggedObject -Type $Type -Id $Id # Below is a request that includes all optional parameters # Get-TaggedObject -Type $Type -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-TaggedObject" Write-Host $_.ErrorDetails } - path: /tagged-objects method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/tagged-objects#list-tagged-objects source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "tagName eq "BU_FINANCE"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **objectRef.id**: *eq, in* **objectRef.type**: *eq, in* **tagName**: *eq, in* (optional) # List tagged objects try { Get-TaggedObjects # Below is a request that includes all optional parameters # Get-TaggedObjects -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-TaggedObjects" Write-Host $_.ErrorDetails } - path: /tagged-objects/{type} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/tagged-objects#list-tagged-objects-by-type source: | $Type = "ACCESS_PROFILE" # String | The type of tagged object to retrieve. $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "objectRef.id eq "2c91808568c529c60168cca6f90c1313"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **objectRef.id**: *eq* **objectRef.type**: *eq* (optional) # List tagged objects by type try { Get-TaggedObjectsByType -Type $Type # Below is a request that includes all optional parameters # Get-TaggedObjectsByType -Type $Type -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-TaggedObjectsByType" Write-Host $_.ErrorDetails } - path: /tagged-objects/{type}/{id} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/tagged-objects#put-tagged-object source: | $Type = "ACCESS_PROFILE" # String | The type of tagged object to update. $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the object reference to update. $TaggedObject = @" { "objectRef" : { "name" : "William Wilson", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" }, "tags" : [ "BU_FINANCE", "PCI" ] } "@ # Update tagged object try { $Result = ConvertFrom-JsonToTaggedObject -Json $TaggedObject Send-TaggedObject -Type $Type -Id $Id -TaggedObject $Result # Below is a request that includes all optional parameters # Send-TaggedObject -Type $Type -Id $Id -TaggedObject $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-TaggedObject" Write-Host $_.ErrorDetails } - path: /tagged-objects method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/tagged-objects#set-tag-to-object source: | $TaggedObject = @" { "objectRef" : { "name" : "William Wilson", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" }, "tags" : [ "BU_FINANCE", "PCI" ] } "@ # Add tag to object try { $Result = ConvertFrom-JsonToTaggedObject -Json $TaggedObject Set-TagToObject -TaggedObject $Result # Below is a request that includes all optional parameters # Set-TagToObject -TaggedObject $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Set-TagToObject" Write-Host $_.ErrorDetails } - path: /tagged-objects/bulk-add method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/tagged-objects#set-tags-to-many-objects source: | $BulkAddTaggedObject = @" { "objectRefs" : [ { "name" : "William Wilson", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" }, { "name" : "William Wilson", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" } ], "operation" : "MERGE", "tags" : [ "BU_FINANCE", "PCI" ] } "@ # Tag multiple objects try { $Result = ConvertFrom-JsonToBulkAddTaggedObject -Json $BulkAddTaggedObject Set-TagsToManyObjects -BulkAddTaggedObject $Result # Below is a request that includes all optional parameters # Set-TagsToManyObjects -BulkAddTaggedObject $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Set-TagsToManyObjects" Write-Host $_.ErrorDetails } - path: /transforms method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/transforms#create-transform source: | $Transform = @" { "name" : "Timestamp To Date", "attributes" : { "input" : { "type" : "accountAttribute", "attributes" : { "attributeName" : "first_name", "sourceName" : "Source" } }, "accountSortAttribute" : "created", "accountReturnFirstLink" : false, "requiresPeriodicRefresh" : false, "accountPropertyFilter" : "(groups.containsAll({'Admin'}) || location == 'Austin')", "attributeName" : "DEPARTMENT", "accountSortDescending" : false, "sourceName" : "Workday", "accountFilter" : "!(nativeIdentity.startsWith(\"*DELETED*\"))" }, "type" : "dateFormat" } "@ # Create transform try { $Result = ConvertFrom-JsonToTransform -Json $Transform New-Transform -Transform $Result # Below is a request that includes all optional parameters # New-Transform -Transform $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-Transform" Write-Host $_.ErrorDetails } - path: /transforms/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/transforms#delete-transform source: | $Id = "2cd78adghjkja34jh2b1hkjhasuecd" # String | ID of the transform to delete # Delete a transform try { Remove-Transform -Id $Id # Below is a request that includes all optional parameters # Remove-Transform -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-Transform" Write-Host $_.ErrorDetails } - path: /transforms/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/transforms#get-transform source: | $Id = "2cd78adghjkja34jh2b1hkjhasuecd" # String | ID of the transform to retrieve # Transform by id try { Get-Transform -Id $Id # Below is a request that includes all optional parameters # Get-Transform -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Transform" Write-Host $_.ErrorDetails } - path: /transforms method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/transforms#list-transforms source: | $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Name = "ExampleTransformName123" # String | Name of the transform to retrieve from the list. (optional) $Filters = "name eq "Uppercase"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **internal**: *eq* **name**: *eq, sw* (optional) # List transforms try { Get-Transforms # Below is a request that includes all optional parameters # Get-Transforms -Offset $Offset -Limit $Limit -Count $Count -Name $Name -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Transforms" Write-Host $_.ErrorDetails } - path: /transforms/{id} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/transforms#update-transform source: | $Id = "2cd78adghjkja34jh2b1hkjhasuecd" # String | ID of the transform to update $Transform = @" { "name" : "Timestamp To Date", "attributes" : { "input" : { "type" : "accountAttribute", "attributes" : { "attributeName" : "first_name", "sourceName" : "Source" } }, "accountSortAttribute" : "created", "accountReturnFirstLink" : false, "requiresPeriodicRefresh" : false, "accountPropertyFilter" : "(groups.containsAll({'Admin'}) || location == 'Austin')", "attributeName" : "DEPARTMENT", "accountSortDescending" : false, "sourceName" : "Workday", "accountFilter" : "!(nativeIdentity.startsWith(\"*DELETED*\"))" }, "type" : "dateFormat" } "@ # Update a transform try { Update-Transform -Id $Id # Below is a request that includes all optional parameters # Update-Transform -Id $Id -Transform $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-Transform" Write-Host $_.ErrorDetails } - path: /vendor-connector-mappings method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/vendor-connector-mappings#create-vendor-connector-mapping source: | $VendorConnectorMapping = @" { "createdAt" : "2024-03-13T12:56:19.391294Z", "deletedAt" : { "Valid" : false, "Time" : "0001-01-01T00:00:00Z" }, "updatedBy" : { "Valid" : true, "String" : "user-67891" }, "connector" : "Example connector", "createdBy" : "admin", "vendor" : "Example vendor", "id" : "78733556-9ea3-4f59-bf69-e5cd92b011b4", "deletedBy" : { "Valid" : false, "String" : "" }, "updatedAt" : { "Valid" : true, "Time" : "2024-03-14T12:56:19.391294Z" } } "@ # Create vendor connector mapping try { $Result = ConvertFrom-JsonToVendorConnectorMapping -Json $VendorConnectorMapping New-VendorConnectorMapping -VendorConnectorMapping $Result # Below is a request that includes all optional parameters # New-VendorConnectorMapping -VendorConnectorMapping $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-VendorConnectorMapping" Write-Host $_.ErrorDetails } - path: /vendor-connector-mappings method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/vendor-connector-mappings#delete-vendor-connector-mapping source: | $VendorConnectorMapping = @" { "createdAt" : "2024-03-13T12:56:19.391294Z", "deletedAt" : { "Valid" : false, "Time" : "0001-01-01T00:00:00Z" }, "updatedBy" : { "Valid" : true, "String" : "user-67891" }, "connector" : "Example connector", "createdBy" : "admin", "vendor" : "Example vendor", "id" : "78733556-9ea3-4f59-bf69-e5cd92b011b4", "deletedBy" : { "Valid" : false, "String" : "" }, "updatedAt" : { "Valid" : true, "Time" : "2024-03-14T12:56:19.391294Z" } } "@ # Delete vendor connector mapping try { $Result = ConvertFrom-JsonToVendorConnectorMapping -Json $VendorConnectorMapping Remove-VendorConnectorMapping -VendorConnectorMapping $Result # Below is a request that includes all optional parameters # Remove-VendorConnectorMapping -VendorConnectorMapping $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-VendorConnectorMapping" Write-Host $_.ErrorDetails } - path: /vendor-connector-mappings method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/vendor-connector-mappings#get-vendor-connector-mappings source: | # List vendor connector mappings try { Get-VendorConnectorMappings # Below is a request that includes all optional parameters # Get-VendorConnectorMappings } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-VendorConnectorMappings" Write-Host $_.ErrorDetails } - path: /work-items/{id}/approve/{approvalItemId} method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/work-items#approve-approval-item source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the work item $ApprovalItemId = "1211bcaa32112bcef6122adb21cef1ac" # String | The ID of the approval item. # Approve an approval item try { Approve-ApprovalItem -Id $Id -ApprovalItemId $ApprovalItemId # Below is a request that includes all optional parameters # Approve-ApprovalItem -Id $Id -ApprovalItemId $ApprovalItemId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Approve-ApprovalItem" Write-Host $_.ErrorDetails } - path: /work-items/bulk-approve/{id} method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/work-items#approve-approval-items-in-bulk source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the work item # Bulk approve approval items try { Approve-ApprovalItemsInBulk -Id $Id # Below is a request that includes all optional parameters # Approve-ApprovalItemsInBulk -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Approve-ApprovalItemsInBulk" Write-Host $_.ErrorDetails } - path: /work-items/{id} method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/work-items#complete-work-item source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the work item $Body = "MyBody" # String | Body is the request payload to create form definition request (optional) # Complete a work item try { Complete-WorkItem -Id $Id # Below is a request that includes all optional parameters # Complete-WorkItem -Id $Id -Body $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Complete-WorkItem" Write-Host $_.ErrorDetails } - path: /work-items/completed method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/work-items#get-completed-work-items source: | $OwnerId = "1211bcaa32112bcef6122adb21cef1ac" # String | The id of the owner of the work item list being requested. Either an admin, or the owning/current user must make this request. (optional) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) # Completed work items try { Get-CompletedWorkItems # Below is a request that includes all optional parameters # Get-CompletedWorkItems -OwnerId $OwnerId -Limit $Limit -Offset $Offset -Count $Count } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CompletedWorkItems" Write-Host $_.ErrorDetails } - path: /work-items/completed/count method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/work-items#get-count-completed-work-items source: | $OwnerId = "1211bcaa32112bcef6122adb21cef1ac" # String | ID of the work item owner. (optional) # Count completed work items try { Get-CountCompletedWorkItems # Below is a request that includes all optional parameters # Get-CountCompletedWorkItems -OwnerId $OwnerId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CountCompletedWorkItems" Write-Host $_.ErrorDetails } - path: /work-items/count method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/work-items#get-count-work-items source: | $OwnerId = "ef38f94347e94562b5bb8424a56397d8" # String | ID of the work item owner. (optional) # Count work items try { Get-CountWorkItems # Below is a request that includes all optional parameters # Get-CountWorkItems -OwnerId $OwnerId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CountWorkItems" Write-Host $_.ErrorDetails } - path: /work-items/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/work-items#get-work-item source: | $Id = "2c9180835d191a86015d28455b4a2329" # String | ID of the work item. # Get a work item try { Get-WorkItem -Id $Id # Below is a request that includes all optional parameters # Get-WorkItem -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-WorkItem" Write-Host $_.ErrorDetails } - path: /work-items/summary method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/work-items#get-work-items-summary source: | $OwnerId = "1211bcaa32112bcef6122adb21cef1ac" # String | ID of the work item owner. (optional) # Work items summary try { Get-WorkItemsSummary # Below is a request that includes all optional parameters # Get-WorkItemsSummary -OwnerId $OwnerId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-WorkItemsSummary" Write-Host $_.ErrorDetails } - path: /work-items method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/work-items#list-work-items source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $OwnerId = "1211bcaa32112bcef6122adb21cef1ac" # String | ID of the work item owner. (optional) # List work items try { Get-WorkItems # Below is a request that includes all optional parameters # Get-WorkItems -Limit $Limit -Offset $Offset -Count $Count -OwnerId $OwnerId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-WorkItems" Write-Host $_.ErrorDetails } - path: /work-items/{id}/reject/{approvalItemId} method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/work-items#reject-approval-item source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the work item $ApprovalItemId = "1211bcaa32112bcef6122adb21cef1ac" # String | The ID of the approval item. # Reject an approval item try { Deny-ApprovalItem -Id $Id -ApprovalItemId $ApprovalItemId # Below is a request that includes all optional parameters # Deny-ApprovalItem -Id $Id -ApprovalItemId $ApprovalItemId } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Deny-ApprovalItem" Write-Host $_.ErrorDetails } - path: /work-items/bulk-reject/{id} method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/work-items#reject-approval-items-in-bulk source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the work item # Bulk reject approval items try { Deny-ApprovalItemsInBulk -Id $Id # Below is a request that includes all optional parameters # Deny-ApprovalItemsInBulk -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Deny-ApprovalItemsInBulk" Write-Host $_.ErrorDetails } - path: /work-items/{id}/forward method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/work-items#send-work-item-forward source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the work item $WorkItemForward = @" { "targetOwnerId" : "2c9180835d2e5168015d32f890ca1581", "comment" : "I'm going on vacation.", "sendNotifications" : true } "@ # Forward a work item try { $Result = ConvertFrom-JsonToWorkItemForward -Json $WorkItemForward Send-WorkItemForward -Id $Id -WorkItemForward $Result # Below is a request that includes all optional parameters # Send-WorkItemForward -Id $Id -WorkItemForward $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-WorkItemForward" Write-Host $_.ErrorDetails } - path: /work-items/{id}/submit-account-selection method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/work-items#submit-account-selection source: | $Id = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the work item $RequestBody = @{ key_example = } # System.Collections.Hashtable | Account Selection Data map, keyed on fieldName # Submit account selections try { $Result = ConvertFrom-JsonToRequestBody -Json $RequestBody Submit-AccountSelection -Id $Id -RequestBody $Result # Below is a request that includes all optional parameters # Submit-AccountSelection -Id $Id -RequestBody $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Submit-AccountSelection" Write-Host $_.ErrorDetails } - path: /workflow-executions/{id}/cancel method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#cancel-workflow-execution source: | $Id = "c17bea3a-574d-453c-9e04-4365fbf5af0b" # String | The workflow execution ID # Cancel workflow execution by id try { Suspend-WorkflowExecution -Id $Id # Below is a request that includes all optional parameters # Suspend-WorkflowExecution -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Suspend-WorkflowExecution" Write-Host $_.ErrorDetails } - path: /workflows/execute/external/{id} method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#create-external-execute-workflow source: | $Id = "c17bea3a-574d-453c-9e04-4365fbf5af0b" # String | Id of the workflow $CreateExternalExecuteWorkflowRequest = @" "@ # Execute workflow via external trigger try { New-ExternalExecuteWorkflow -Id $Id # Below is a request that includes all optional parameters # New-ExternalExecuteWorkflow -Id $Id -CreateExternalExecuteWorkflowRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-ExternalExecuteWorkflow" Write-Host $_.ErrorDetails } - path: /workflows method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#create-workflow source: | $CreateWorkflowRequest = @" {name=Send Email, owner={type=IDENTITY, id=2c91808568c529c60168cca6f90c1313, name=William Wilson}, description=Send an email to the identity who's attributes changed., definition={start=Send Email Test, steps={Send Email={actionId=sp:send-email, attributes={body=This is a test, from=sailpoint@sailpoint.com, recipientId.$=$.identity.id, subject=test}, nextStep=success, selectResult=null, type=action}, success={type=success}}}, enabled=false, trigger={type=EVENT, attributes={id=idn:identity-attributes-changed, filter=$.changes[?(@.attribute == 'manager')]}}} "@ # Create workflow try { $Result = ConvertFrom-JsonToCreateWorkflowRequest -Json $CreateWorkflowRequest New-Workflow -CreateWorkflowRequest $Result # Below is a request that includes all optional parameters # New-Workflow -CreateWorkflowRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-Workflow" Write-Host $_.ErrorDetails } - path: /workflows/{id}/external/oauth-clients method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#create-workflow-external-trigger source: | $Id = "c17bea3a-574d-453c-9e04-4365fbf5af0b" # String | Id of the workflow # Generate external trigger oauth client try { New-WorkflowExternalTrigger -Id $Id # Below is a request that includes all optional parameters # New-WorkflowExternalTrigger -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-WorkflowExternalTrigger" Write-Host $_.ErrorDetails } - path: /workflows/{id} method: DELETE xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#delete-workflow source: | $Id = "c17bea3a-574d-453c-9e04-4365fbf5af0b" # String | Id of the Workflow # Delete workflow by id try { Remove-Workflow -Id $Id # Below is a request that includes all optional parameters # Remove-Workflow -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-Workflow" Write-Host $_.ErrorDetails } - path: /workflows/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#get-workflow source: | $Id = "c17bea3a-574d-453c-9e04-4365fbf5af0b" # String | Id of the workflow $WorkflowMetrics = $false # Boolean | disable workflow metrics (optional) (default to $true) # Get workflow by id try { Get-Workflow -Id $Id # Below is a request that includes all optional parameters # Get-Workflow -Id $Id -WorkflowMetrics $WorkflowMetrics } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Workflow" Write-Host $_.ErrorDetails } - path: /workflow-executions/{id} method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#get-workflow-execution source: | $Id = "c17bea3a-574d-453c-9e04-4365fbf5af0b" # String | Workflow execution ID. # Get workflow execution try { Get-WorkflowExecution -Id $Id # Below is a request that includes all optional parameters # Get-WorkflowExecution -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-WorkflowExecution" Write-Host $_.ErrorDetails } - path: /workflow-executions/{id}/history method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#get-workflow-execution-history source: | $Id = "c17bea3a-574d-453c-9e04-4365fbf5af0b" # String | Id of the workflow execution # Get workflow execution history try { Get-WorkflowExecutionHistory -Id $Id # Below is a request that includes all optional parameters # Get-WorkflowExecutionHistory -Id $Id } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-WorkflowExecutionHistory" Write-Host $_.ErrorDetails } - path: /workflows/{id}/executions method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#get-workflow-executions source: | $Id = "c17bea3a-574d-453c-9e04-4365fbf5af0b" # String | Workflow ID. $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Count = $true # Boolean | If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to $false) $Filters = "status eq "Failed"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **start_time**: *eq, lt, le, gt, ge* **status**: *eq* (optional) # List workflow executions try { Get-WorkflowExecutions -Id $Id # Below is a request that includes all optional parameters # Get-WorkflowExecutions -Id $Id -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-WorkflowExecutions" Write-Host $_.ErrorDetails } - path: /workflow-library method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#list-complete-workflow-library source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) # List complete workflow library try { Get-CompleteWorkflowLibrary # Below is a request that includes all optional parameters # Get-CompleteWorkflowLibrary -Limit $Limit -Offset $Offset } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-CompleteWorkflowLibrary" Write-Host $_.ErrorDetails } - path: /workflow-library/actions method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#list-workflow-library-actions source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Filters = "id eq "sp:create-campaign"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq* (optional) # List workflow library actions try { Get-WorkflowLibraryActions # Below is a request that includes all optional parameters # Get-WorkflowLibraryActions -Limit $Limit -Offset $Offset -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-WorkflowLibraryActions" Write-Host $_.ErrorDetails } - path: /workflow-library/operators method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#list-workflow-library-operators source: | # List workflow library operators try { Get-WorkflowLibraryOperators # Below is a request that includes all optional parameters # Get-WorkflowLibraryOperators } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-WorkflowLibraryOperators" Write-Host $_.ErrorDetails } - path: /workflow-library/triggers method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#list-workflow-library-triggers source: | $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) $Filters = "id eq "idn:identity-attributes-changed"" # String | Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq* (optional) # List workflow library triggers try { Get-WorkflowLibraryTriggers # Below is a request that includes all optional parameters # Get-WorkflowLibraryTriggers -Limit $Limit -Offset $Offset -Filters $Filters } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-WorkflowLibraryTriggers" Write-Host $_.ErrorDetails } - path: /workflows method: GET xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#list-workflows source: | $TriggerId = "idn:identity-created" # String | Trigger ID (optional) $ConnectorInstanceId = "28541fec-bb81-4ad4-88ef-0f7d213adcad" # String | Connector Instance ID (optional) $Limit = 250 # Int32 | Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 250) $Offset = 0 # Int32 | Offset into the full result set. Usually specified with *limit* to paginate through the results. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. (optional) (default to 0) # List workflows try { Get-Workflows # Below is a request that includes all optional parameters # Get-Workflows -TriggerId $TriggerId -ConnectorInstanceId $ConnectorInstanceId -Limit $Limit -Offset $Offset } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-Workflows" Write-Host $_.ErrorDetails } - path: /workflows/{id} method: PATCH xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#patch-workflow source: | $Id = "c17bea3a-574d-453c-9e04-4365fbf5af0b" # String | Id of the Workflow $JsonPatchOperation = @"{ "op" : "replace", "path" : "/description", "value" : "New description" }"@ # Patch workflow try { $Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation Update-Workflow -Id $Id -JsonPatchOperation $Result # Below is a request that includes all optional parameters # Update-Workflow -Id $Id -JsonPatchOperation $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-Workflow" Write-Host $_.ErrorDetails } - path: /workflows/{id} method: PUT xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#put-workflow source: | $Id = "c17bea3a-574d-453c-9e04-4365fbf5af0b" # String | Id of the Workflow $WorkflowBody = @" { "owner" : { "name" : "William Wilson", "id" : "2c91808568c529c60168cca6f90c1313", "type" : "IDENTITY" }, "name" : "Send Email", "description" : "Send an email to the identity who's attributes changed.", "definition" : { "start" : "Send Email Test", "steps" : { "Send Email" : { "actionId" : "sp:send-email", "attributes" : { "body" : "This is a test", "from" : "sailpoint@sailpoint.com", "recipientId.$" : "$.identity.id", "subject" : "test" }, "nextStep" : "success", "type" : "ACTION" }, "success" : { "type" : "success" } } }, "trigger" : { "displayName" : "displayName", "attributes" : { "description" : "Triggered when an identity's manager attribute changes", "formDefinitionId" : "Admin_Access_Request_Form", "attributeToFilter" : "LifecycleState", "id" : "idn:identity-attributes-changed", "filter.$" : "$.changes[?(@.attribute == 'manager')]" }, "type" : "EVENT" }, "enabled" : false } "@ # Update workflow try { $Result = ConvertFrom-JsonToWorkflowBody -Json $WorkflowBody Send-Workflow -Id $Id -WorkflowBody $Result # Below is a request that includes all optional parameters # Send-Workflow -Id $Id -WorkflowBody $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-Workflow" Write-Host $_.ErrorDetails } - path: /workflows/execute/external/{id}/test method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#test-external-execute-workflow source: | $Id = "c17bea3a-574d-453c-9e04-4365fbf5af0b" # String | Id of the workflow $TestExternalExecuteWorkflowRequest = @" "@ # Test workflow via external trigger try { Test-ExternalExecuteWorkflow -Id $Id # Below is a request that includes all optional parameters # Test-ExternalExecuteWorkflow -Id $Id -TestExternalExecuteWorkflowRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Test-ExternalExecuteWorkflow" Write-Host $_.ErrorDetails } - path: /workflows/{id}/test method: POST xCodeSample: - lang: PowerShell label: SDK_tools/sdk/powershell/v3/methods/workflows#test-workflow source: | $Id = "c17bea3a-574d-453c-9e04-4365fbf5af0b" # String | Id of the workflow $TestWorkflowRequest = @" {input={identity={id=ee769173319b41d19ccec6cea52f237b, name=john.doe, type=IDENTITY}, changes=[{attribute=department, oldValue=sales, newValue=marketing}, {attribute=manager, oldValue={id=ee769173319b41d19ccec6c235423237b, name=nice.guy, type=IDENTITY}, newValue={id=ee769173319b41d19ccec6c235423236c, name=mean.guy, type=IDENTITY}}, {attribute=email, oldValue=john.doe@hotmail.com, newValue=john.doe@gmail.com}]}} "@ # Test workflow by id try { $Result = ConvertFrom-JsonToTestWorkflowRequest -Json $TestWorkflowRequest Test-Workflow -Id $Id -TestWorkflowRequest $Result # Below is a request that includes all optional parameters # Test-Workflow -Id $Id -TestWorkflowRequest $Result } catch { Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Test-Workflow" Write-Host $_.ErrorDetails }