mirror of
https://github.com/LukeHagar/developer.sailpoint.com.git
synced 2025-12-08 12:27:47 +00:00
10468 lines
454 KiB
YAML
10468 lines
454 KiB
YAML
- path: /access-profiles
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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,
|
|
"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 $AccessProfile
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $AccessProfileBulkDeleteRequest
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$ForSubadmin = "8c190e6787aa4ed9a90bd9d5344523fb" # String | If provided, 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. 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 = "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, lt, ge, le* **modified**: *gt, lt, ge, le* **owner.id**: *eq, in* **requestable**: *eq* **source.id**: *eq, in* Composite operators supported: *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 | If present and not empty, additionally filters access profiles 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 | 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: PowerShell SDK
|
|
source: |
|
|
$Id = "2c91808a7813090a017814121919ecca" # String | ID of the Access Profile to patch
|
|
# JsonPatchOperation[] |
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
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 $CommentDto
|
|
} 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: PowerShell SDK
|
|
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 $ForwardApprovalDto
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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* (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: PowerShell SDK
|
|
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 $CommentDto
|
|
} 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: PowerShell SDK
|
|
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 $CancelAccessRequest
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
$AccessRequest = @"
|
|
{
|
|
"requestedFor" : [ "2c918084660f45d6016617daa9210584", "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"
|
|
}, {
|
|
"clientMetadata" : {
|
|
"requestedAppName" : "test-app",
|
|
"requestedAppId" : "2c91808f7892918f0178b78da4a305a1"
|
|
},
|
|
"removeDate" : "2020-07-11T21:23:15Z",
|
|
"comment" : "Requesting access profile for John Doe",
|
|
"id" : "2c9180835d2e5168015d32f890ca1581",
|
|
"type" : "ACCESS_PROFILE"
|
|
}, {
|
|
"clientMetadata" : {
|
|
"requestedAppName" : "test-app",
|
|
"requestedAppId" : "2c91808f7892918f0178b78da4a305a1"
|
|
},
|
|
"removeDate" : "2020-07-11T21:23:15Z",
|
|
"comment" : "Requesting access profile for John Doe",
|
|
"id" : "2c9180835d2e5168015d32f890ca1581",
|
|
"type" : "ACCESS_PROFILE"
|
|
}, {
|
|
"clientMetadata" : {
|
|
"requestedAppName" : "test-app",
|
|
"requestedAppId" : "2c91808f7892918f0178b78da4a305a1"
|
|
},
|
|
"removeDate" : "2020-07-11T21:23:15Z",
|
|
"comment" : "Requesting access profile for John Doe",
|
|
"id" : "2c9180835d2e5168015d32f890ca1581",
|
|
"type" : "ACCESS_PROFILE"
|
|
}, {
|
|
"clientMetadata" : {
|
|
"requestedAppName" : "test-app",
|
|
"requestedAppId" : "2c91808f7892918f0178b78da4a305a1"
|
|
},
|
|
"removeDate" : "2020-07-11T21:23:15Z",
|
|
"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 $AccessRequest
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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**: *in* **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: PowerShell SDK
|
|
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 $AccessRequestConfig
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: /accounts
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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 $AccountAttributesCreate
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $AccountToggleRequest
|
|
} 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: PowerShell SDK
|
|
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 $AccountToggleRequest
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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* **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* (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, identity.id, 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: PowerShell SDK
|
|
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 $AccountAttributes
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $AccountUnlockRequest
|
|
} 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: PowerShell SDK
|
|
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 $RequestBody
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-Account"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /account-usages/{accountId}/summaries
|
|
method: GET
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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: /discovered-applications
|
|
method: GET
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$Id = "ef38f94347e94562b5bb8424a56397d8" # String | Identity ID
|
|
# JsonPatchOperation[] | A list of auth user update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard.
|
|
$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 $JsonPatchOperation
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-AuthUser"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /brandings
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $CampaignFilterDetails
|
|
} 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: PowerShell SDK
|
|
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 $RequestBody
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $CampaignFilterDetails
|
|
} 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: PowerShell SDK
|
|
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 $CampaignCompleteOptions
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Complete-Campaign"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /campaigns
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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 $Campaign
|
|
} 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: PowerShell SDK
|
|
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 $CampaignTemplate
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $CampaignsDeleteRequest
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-Campaigns"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /campaigns
|
|
method: GET
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $AdminReviewReassign
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
$Id = "2c9180835d191a86015d28455b4a2329" # String | ID of the campaign template being modified.
|
|
# JsonPatchOperation[] | A list of campaign update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * name * description * deadlineDuration * campaign (all fields that are allowed during create)
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
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 $CampaignReportsConfig
|
|
} 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: PowerShell SDK
|
|
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 $Schedule
|
|
} 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: PowerShell SDK
|
|
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 $ActivateCampaignOptions
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$Id = "2c91808571bcfcf80171c23e4b4221fc" # String | ID of the campaign template being modified.
|
|
# JsonPatchOperation[] | A list of campaign update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The fields that can be patched differ based on the status of the campaign. When the campaign is in the *STAGED* status, you can patch these fields: * name * description * recommendationsEnabled * deadline * emailNotificationEnabled * autoRevokeAllowed When the campaign is in the *ACTIVE* status, you can patch these fields: * deadline
|
|
$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 $JsonPatchOperation
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-Campaign"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /certification-tasks/{id}
|
|
method: GET
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$Id = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the identity campaign certification on which to make decisions
|
|
# ReviewDecision[] | A non-empty array of decisions to be made.
|
|
$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 $ReviewDecision
|
|
} 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: PowerShell SDK
|
|
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 $ReviewReassign
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $ReviewReassign
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Submit-ReassignCertsAsync"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /certifications/{id}/access-summaries/{type}
|
|
method: GET
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: /configuration-hub/object-mappings/{sourceOrg}
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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 $ObjectMappingRequest
|
|
} 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: PowerShell SDK
|
|
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 $ObjectMappingBulkCreateRequest
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $ObjectMappingBulkPatchRequest
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-ObjectMappings"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /connectors
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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 $V3CreateConnectorDto
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$ScriptName = "aScriptName" # String | The scriptName value of the connector. ScriptName is the unique id generated at connector creation.
|
|
# JsonPatchOperation[] | A list of connector detail update operations
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
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 $NetworkConfiguration
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
# JsonPatchOperation[] | A list of auth org lockout configuration update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. Ensures that the patched Lockout Config conforms to certain logical guidelines, which are: `1. maximumAttempts >= 1 && maximumAttempts <= 15 2. lockoutDuration >= 5 && lockoutDuration <= 60 3. lockoutWindow >= 5 && lockoutDuration <= 60`
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
# JsonPatchOperation[] | A list of auth org network configuration update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. Ensures that the patched Network Config conforms to certain logical guidelines, which are: 1. Each string element in the range array must be a valid ip address or ip subnet mask. 2. Each string element in the geolocation array must be 2 characters, and they can only be uppercase letters.
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
# JsonPatchOperation[] | A list of auth org service provider configuration update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. Note: /federationProtocolDetails/0 is IdpDetails /federationProtocolDetails/1 is SpDetails Ensures that the patched ServiceProviderConfig conforms to certain logical guidelines, which are: 1. Do not add or remove any elements in the federation protocol details in the service provider configuration. 2. Do not modify, add, or delete the service provider details element in the federation protocol details. 3. If this is the first time the patched ServiceProviderConfig enables Remote IDP sign-in, it must also include IDPDetails. 4. If the patch enables Remote IDP sign in, the entityID in the IDPDetails cannot be null. IDPDetails must include an entityID. 5. Any JIT configuration update must be valid. Just in time configuration update must be valid when enabled. This includes: - A Source ID - Source attribute mappings - Source attribute maps have all the required key values (firstName, lastName, email)
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
# JsonPatchOperation[] | A list of auth org session configuration update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. Ensures that the patched Session Config conforms to certain logical guidelines, which are: `1. maxSessionTime >= 1 && maxSessionTime <= 10080 (1 week) 2. maxIdleTime >= 1 && maxIdleTime <= 1440 (1 day) 3. maxSessionTime must have a greater duration than maxIdleTime.`
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
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 an Identity Profile
|
|
|
|
try {
|
|
$Result = ConvertFrom-JsonToIdentityProfile -Json $IdentityProfile
|
|
New-IdentityProfile-IdentityProfile $Result
|
|
|
|
# Below is a request that includes all optional parameters
|
|
# New-IdentityProfile -IdentityProfile $IdentityProfile
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
$IdentityProfileId = "ef38f94347e94562b5bb8424a56397d8" # String | The Identity Profile ID.
|
|
|
|
# Delete an 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: PowerShell SDK
|
|
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 $RequestBody
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$IdentityProfileId = "2b838de9-db9b-abcf-e646-d4f274ad4238" # String | The Identity Profile ID.
|
|
|
|
# Get single 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: PowerShell SDK
|
|
source: |
|
|
# IdentityProfileExportedObject[] | Previously exported Identity Profiles.
|
|
$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 $IdentityProfileExportedObject
|
|
} 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: PowerShell SDK
|
|
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, lt, isnull, sw* **name**: *eq, ne, ge, gt, in, le, lt, isnull, 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)
|
|
|
|
# Identity Profiles List
|
|
|
|
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: PowerShell SDK
|
|
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 $IdentityPreviewRequest
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$IdentityProfileId = "ef38f94347e94562b5bb8424a56397d8" # String | The Identity Profile ID
|
|
# JsonPatchOperation[] | A list of Identity Profile update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard.
|
|
$JsonPatchOperation = @"{
|
|
"op" : "replace",
|
|
"path" : "/description",
|
|
"value" : "New description"
|
|
}"@
|
|
|
|
|
|
# Update the 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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
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 $LifecycleState
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $SetLifecycleStateRequest
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
$IdentityProfileId = "2b838de9-db9b-abcf-e646-d4f274ad4238" # String | Identity profile ID.
|
|
$LifecycleStateId = "ef38f94347e94562b5bb8424a56397d8" # String | Lifecycle state ID.
|
|
# JsonPatchOperation[] | A list of lifecycle state update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields can be updated: * enabled * description * accountActions * accessProfileIds * emailNotificationOption
|
|
$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 $JsonPatchOperation
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-LifecycleStates"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /managed-clients
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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 $ManagedClientRequest
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$Id = "4440278c-0ce2-41ee-a0a9-f5cfd5e8d3b7" # String | Managed client ID.
|
|
# JsonPatchOperation[] | JSONPatch payload used to update the object.
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
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 $ManagedClusterRequest
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $PutClientLogConfigurationRequest
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
$Id = "2c9180897de347a2017de8859e8c5039" # String | Managed cluster ID.
|
|
# JsonPatchOperation[] | JSONPatch payload used to update the object.
|
|
$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 $JsonPatchOperation
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-ManagedCluster"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /mfa/{method}/delete
|
|
method: DELETE
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $MfaDuoConfig
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
# KbaAnswerRequestItem[] |
|
|
$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 $KbaAnswerRequestItem
|
|
} 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: PowerShell SDK
|
|
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 $MfaOktaConfig
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $SendTokenRequest
|
|
} 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: PowerShell SDK
|
|
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 $VerificationPollRequest
|
|
} 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: PowerShell SDK
|
|
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 $DuoVerificationRequest
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
# KbaAnswerRequestItem[] |
|
|
$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 $KbaAnswerRequestItem
|
|
} 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: PowerShell SDK
|
|
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 $OktaVerificationRequest
|
|
} 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: PowerShell SDK
|
|
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 $TokenAuthRequest
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Send-TokenAuthRequest"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /non-employee-approvals/{id}/approve
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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 $NonEmployeeApprovalDecision
|
|
} 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: PowerShell SDK
|
|
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 $NonEmployeeRequestBody
|
|
} 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: PowerShell SDK
|
|
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 $NonEmployeeRequestBody
|
|
} 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: PowerShell SDK
|
|
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 $NonEmployeeSourceRequestBody
|
|
} 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: PowerShell SDK
|
|
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 $NonEmployeeSchemaAttributeBody
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $DeleteNonEmployeeRecordsInBulkRequest
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$RequestedFor = "me" # 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)
|
|
$NonEmployeeCount = $true # Boolean | The flag to determine whether return a non-employee count associate with source. (optional)
|
|
$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-RequestedFor $RequestedFor
|
|
|
|
# Below is a request that includes all optional parameters
|
|
# Get-NonEmployeeSources -RequestedFor $RequestedFor -Limit $Limit -Offset $Offset -Count $Count -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: PowerShell SDK
|
|
source: |
|
|
$Id = "ef38f94347e94562b5bb8424a56397d8" # String | Non-employee record id (UUID)
|
|
# JsonPatchOperation[] | A list of non-employee update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. Attributes are restricted by user type. Owner of source can update end date. Organization admins can update all available fields.
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
$AttributeId = "ef38f94347e94562b5bb8424a56397d8" # String | The Schema Attribute Id (UUID)
|
|
$SourceId = "ef38f94347e94562b5bb8424a56397d8" # String | The Source id
|
|
# JsonPatchOperation[] | A list of schema attribute update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following properties are allowed for update ':' 'label', 'helpText', 'placeholder', 'required'.
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
$SourceId = "e136567de87e4d029e60b3c3c55db56d" # String | Source Id
|
|
# JsonPatchOperation[] | A list of non-employee source update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard.
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
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 $NonEmployeeRejectApprovalDecision
|
|
} 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: PowerShell SDK
|
|
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 $NonEmployeeRequestBody
|
|
} 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: PowerShell SDK
|
|
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 $CreateOAuthClientRequest
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$Id = "ef38f94347e94562b5bb8424a56397d8" # String | The OAuth client id
|
|
# JsonPatchOperation[] | A list of OAuth client update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * tenant * businessName * homepageUrl * name * description * accessTokenValiditySeconds * refreshTokenValiditySeconds * redirectUris * grantTypes * accessType * enabled * strongAuthSupported * claimsSupported
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
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 $PasswordOrgConfig
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $PasswordOrgConfig
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $PasswordInfoQueryDTO
|
|
} 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: PowerShell SDK
|
|
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 $PasswordChangeRequest
|
|
} 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: PowerShell SDK
|
|
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 $PasswordPolicyV3Dto
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $PasswordPolicyV3Dto
|
|
} 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: PowerShell SDK
|
|
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 $PasswordSyncGroup
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $PasswordSyncGroup
|
|
} 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: PowerShell SDK
|
|
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 $CreatePersonalAccessTokenRequest
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$Id = "ef38f94347e94562b5bb8424a56397d8" # String | The Personal Access Token id
|
|
# JsonPatchOperation[] | A list of OAuth client update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * name * scope
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $PublicIdentityConfig
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $ReportDetails
|
|
} 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: PowerShell SDK
|
|
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" # RequestableObjectType[] | Filters the results to the specified type/types, where each type is one of ROLE or ACCESS_PROFILE. If absent, all types are returned. Support for additional types may be added in the future without notice. (optional)
|
|
|
|
$Types = @"ROLE,ACCESS_PROFILE"@
|
|
$Term = "Finance Role" # String | It allows searching requestable access items with a partial match on the name or description. If term is provided, then the *filter* query parameter will be ignored. (optional)
|
|
$Statuses = "AVAILABLE" # RequestableObjectRequestStatus[] | Filters the result to the specified status/statuses, where each status is one of AVAILABLE, ASSIGNED, or PENDING. It is an error to specify this parameter without also specifying an *identity-id* parameter. Additional statuses may be added 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: PowerShell SDK
|
|
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,
|
|
"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 $Role
|
|
} 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: PowerShell SDK
|
|
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 $RoleBulkDeleteRequest
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
$Id = "2c91808a7813090a017814121e121518" # String | ID of the Role
|
|
|
|
# Delete a 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: PowerShell SDK
|
|
source: |
|
|
$Id = "2c91808a7813090a017814121e121518" # String | ID of the Role
|
|
|
|
# Get a 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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, lt, ge, le* **modified**: *gt, lt, ge, le* **owner.id**: *eq, in* **requestable**: *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: PowerShell SDK
|
|
source: |
|
|
$Id = "2c91808a7813090a017814121e121518" # String | ID of the Role to patch
|
|
# JsonPatchOperation[] |
|
|
$JsonPatchOperation = @"{
|
|
"op" : "replace",
|
|
"path" : "/description",
|
|
"value" : "New description"
|
|
}"@
|
|
|
|
|
|
# Patch a specified 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 $JsonPatchOperation
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-Role"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /saved-searches
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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 $CreateSavedSearchRequest
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $SearchArguments
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $SavedSearch
|
|
} 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: PowerShell SDK
|
|
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 $CreateScheduledSearchRequest
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $TypedReference
|
|
} 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: PowerShell SDK
|
|
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 $ScheduledSearch
|
|
} 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: PowerShell SDK
|
|
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 $Search -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: PowerShell SDK
|
|
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 $Search
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $Search -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: PowerShell SDK
|
|
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 $SearchAttributeConfig
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
|
|
# List Extended Search Attributes
|
|
|
|
try {
|
|
Get-SearchAttributeConfig
|
|
|
|
# Below is a request that includes all optional parameters
|
|
# Get-SearchAttributeConfig
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$Name = "promotedMailAttribute" # String | Name of the search attribute configuration to patch.
|
|
# JsonPatchOperation[] |
|
|
$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 $JsonPatchOperation
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-SearchAttributeConfig"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /segments
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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 $Segment
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $RequestBody
|
|
} 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: PowerShell SDK
|
|
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" : "<?xml version='1.0' encoding='UTF-8'?>\\r\\n<!DOCTYPE Rule PUBLIC \\\"sailpoint.dtd\\\" \\\"sailpoint.dtd\\\">\\r\\n<Rule name=\\\"Example Rule\\\" type=\\\"BeforeProvisioning\\\">\\r\\n <Description>Before Provisioning Rule which changes disables and enables to a modify.</Description>\\r\\n <Source><![CDATA[\\r\\nimport sailpoint.object.*;\\r\\nimport sailpoint.object.ProvisioningPlan.AccountRequest;\\r\\nimport sailpoint.object.ProvisioningPlan.AccountRequest.Operation;\\r\\nimport sailpoint.object.ProvisioningPlan.AttributeRequest;\\r\\nimport sailpoint.object.ProvisioningPlan;\\r\\nimport sailpoint.object.ProvisioningPlan.Operation;\\r\\n\\r\\nfor ( AccountRequest accountRequest : plan.getAccountRequests() ) {\\r\\n if ( accountRequest.getOp().equals( ProvisioningPlan.ObjectOperation.Disable ) ) {\\r\\n accountRequest.setOp( ProvisioningPlan.ObjectOperation.Modify );\\r\\n }\\r\\n if ( accountRequest.getOp().equals( ProvisioningPlan.ObjectOperation.Enable ) ) {\\r\\n accountRequest.setOp( ProvisioningPlan.ObjectOperation.Modify );\\r\\n }\\r\\n}\\r\\n\\r\\n ]]></Source>\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 $ServiceDeskIntegrationDto
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$Id = "anId" # String | ID of the Service Desk integration to update
|
|
$PatchServiceDeskIntegrationRequest = @"
|
|
|
|
"@
|
|
|
|
# Patch a Service Desk Integration
|
|
|
|
try {
|
|
$Result = ConvertFrom-JsonToPatchServiceDeskIntegrationRequest -Json $PatchServiceDeskIntegrationRequest
|
|
Update-ServiceDeskIntegration-Id $Id -PatchServiceDeskIntegrationRequest $Result
|
|
|
|
# Below is a request that includes all optional parameters
|
|
# Update-ServiceDeskIntegration -Id $Id -PatchServiceDeskIntegrationRequest $PatchServiceDeskIntegrationRequest
|
|
} 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: PowerShell SDK
|
|
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" : "<?xml version='1.0' encoding='UTF-8'?>\\r\\n<!DOCTYPE Rule PUBLIC \\\"sailpoint.dtd\\\" \\\"sailpoint.dtd\\\">\\r\\n<Rule name=\\\"Example Rule\\\" type=\\\"BeforeProvisioning\\\">\\r\\n <Description>Before Provisioning Rule which changes disables and enables to a modify.</Description>\\r\\n <Source><![CDATA[\\r\\nimport sailpoint.object.*;\\r\\nimport sailpoint.object.ProvisioningPlan.AccountRequest;\\r\\nimport sailpoint.object.ProvisioningPlan.AccountRequest.Operation;\\r\\nimport sailpoint.object.ProvisioningPlan.AttributeRequest;\\r\\nimport sailpoint.object.ProvisioningPlan;\\r\\nimport sailpoint.object.ProvisioningPlan.Operation;\\r\\n\\r\\nfor ( AccountRequest accountRequest : plan.getAccountRequests() ) {\\r\\n if ( accountRequest.getOp().equals( ProvisioningPlan.ObjectOperation.Disable ) ) {\\r\\n accountRequest.setOp( ProvisioningPlan.ObjectOperation.Modify );\\r\\n }\\r\\n if ( accountRequest.getOp().equals( ProvisioningPlan.ObjectOperation.Enable ) ) {\\r\\n accountRequest.setOp( ProvisioningPlan.ObjectOperation.Modify );\\r\\n }\\r\\n}\\r\\n\\r\\n ]]></Source>\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 $ServiceDeskIntegrationDto
|
|
} 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: PowerShell SDK
|
|
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 $QueuedCheckConfigDetails
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-StatusCheckDetails"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /sod-policies
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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 $SodPolicy
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$Id = "2c918083-5d19-1a86-015d-28455b4a2329" # String | The ID of the SOD policy being modified.
|
|
# JsonPatchOperation[] | A list of SOD Policy update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * name * description * ownerRef * externalPolicyReference * compensatingControls * correctionAdvice * state * tags * violationOwnerAssignmentConfig * scheduled * conflictingAccessCriteria
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
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 $SodPolicySchedule
|
|
} 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: PowerShell SDK
|
|
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 $SodPolicy
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $MultiPolicyRequest
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $IdentityWithNewAccess
|
|
} 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: PowerShell SDK
|
|
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 $IdentityWithNewAccess1
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Start-ViolationCheck"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /sources/{sourceId}/provisioning-policies
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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 $ProvisioningPolicyDto
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-ProvisioningPolicy"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /sources
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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 $Source -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: PowerShell SDK
|
|
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 $Schema
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$Id = "2c9180835d191a86015d28455b4a2329" # String | Source ID.
|
|
|
|
# Get Source Connections by ID
|
|
|
|
try {
|
|
Get-SourceConnections-Id $Id
|
|
|
|
# Below is a request that includes all optional parameters
|
|
# Get-SourceConnections -Id $Id
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $ProvisioningPolicyDto
|
|
} 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: PowerShell SDK
|
|
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 $Source
|
|
} 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: PowerShell SDK
|
|
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 $Schema
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
$SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source id.
|
|
# ProvisioningPolicyDto[] |
|
|
$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 $ProvisioningPolicyDto
|
|
} 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: PowerShell SDK
|
|
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[] | The JSONPatch payload used to update the schema.
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
$Id = "2c9180835d191a86015d28455b4a2329" # String | Source ID.
|
|
# JsonPatchOperation[] | A list of account update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. Any password changes are submitted as plain-text and encrypted upon receipt in Identity Security Cloud (ISC).
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
$SourceId = "2c9180835d191a86015d28455b4a2329" # String | The Source id.
|
|
$SchemaId = "2c9180835d191a86015d28455b4a2329" # String | The Schema id.
|
|
# JsonPatchOperation[] | The JSONPatch payload used to update the schema.
|
|
$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 $JsonPatchOperation
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-SourceSchema"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /source-usages/{sourceId}/status
|
|
method: GET
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: /tagged-objects/{type}/{id}
|
|
method: DELETE
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $BulkRemoveTaggedObject
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $TaggedObject
|
|
} 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: PowerShell SDK
|
|
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 $TaggedObject
|
|
} 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: PowerShell SDK
|
|
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 $BulkAddTaggedObject
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Set-TagsToManyObjects"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /transforms
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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 $Transform
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $Transform
|
|
} 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: PowerShell SDK
|
|
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 $VendorConnectorMapping
|
|
} 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: PowerShell SDK
|
|
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 $VendorConnectorMapping
|
|
} 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: PowerShell SDK
|
|
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: /workflow-executions/{id}/cancel
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $CreateExternalExecuteWorkflowRequest
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-ExternalExecuteWorkflow"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /workflows
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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 $CreateWorkflowRequest
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$Id = "c17bea3a-574d-453c-9e04-4365fbf5af0b" # String | Id of the workflow
|
|
|
|
# Get Workflow By Id
|
|
|
|
try {
|
|
Get-Workflow-Id $Id
|
|
|
|
# Below is a request that includes all optional parameters
|
|
# Get-Workflow -Id $Id
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
|
|
# List Workflows
|
|
|
|
try {
|
|
Get-Workflows
|
|
|
|
# Below is a request that includes all optional parameters
|
|
# Get-Workflows
|
|
} 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: PowerShell SDK
|
|
source: |
|
|
$Id = "c17bea3a-574d-453c-9e04-4365fbf5af0b" # String | Id of the Workflow
|
|
# JsonPatchOperation[] |
|
|
$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 $JsonPatchOperation
|
|
} 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: PowerShell SDK
|
|
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",
|
|
"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 $WorkflowBody
|
|
} 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: PowerShell SDK
|
|
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 $TestExternalExecuteWorkflowRequest
|
|
} 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: PowerShell SDK
|
|
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 $TestWorkflowRequest
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Test-Workflow"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|
|
- path: /work-items/{id}/approve/{approvalItemId}
|
|
method: POST
|
|
xCodeSample:
|
|
- lang: PowerShell
|
|
label: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
source: |
|
|
$Id = "ef38f94347e94562b5bb8424a56397d8" # String | The ID of the work item
|
|
|
|
# Complete a Work Item
|
|
|
|
try {
|
|
Complete-WorkItem-Id $Id
|
|
|
|
# Below is a request that includes all optional parameters
|
|
# Complete-WorkItem -Id $Id
|
|
} 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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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: PowerShell SDK
|
|
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 $WorkItemForward
|
|
} 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: PowerShell SDK
|
|
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 $RequestBody
|
|
} catch {
|
|
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Submit-AccountSelection"
|
|
Write-Host $_.ErrorDetails
|
|
}
|
|
|