Skip to main content

MachineAccounts

All URIs are relative to https://sailpoint.api.identitynow.com

MethodHTTP requestDescription
New-MachineAccountSubtypeV1POST /sources/v1/{sourceId}/subtypesCreate subtype
Remove-MachineAccountAsyncV1POST /machine-accounts/v1/{id}/removeRemove machine account
Remove-MachineAccountSubtypeByTechnicalNameV1DELETE /sources/v1/{sourceId}/subtypes/{technicalName}Delete subtype
Remove-MachineAccountV1POST /machine-accounts/v1/{id}/deleteDelete machine account
Disable-MachineAccountV1POST /machine-accounts/v1/{id}/disableDisable machine account
Disable-MachineAccountsInBulkV1POST /machine-accounts/v1/bulk-disableDisable machine accounts in bulk
Enable-MachineAccountV1POST /machine-accounts/v1/{id}/enableEnable machine account
Enable-MachineAccountsInBulkV1POST /machine-accounts/v1/bulk-enableEnable machine accounts in bulk
Get-MachineAccountEntitlementsV1GET /machine-accounts/v1/{id}/entitlementsList machine account entitlements
Get-MachineAccountSubtypeByIdV1GET /sources/v1/subtypes/{subtypeId}Retrieve subtype by subtype id
Get-MachineAccountSubtypeByTechnicalNameV1GET /sources/v1/{sourceId}/subtypes/{technicalName}Retrieve subtype by source and technicalName
Get-MachineAccountV1GET /machine-accounts/v1/{id}Get machine account details
Get-MachineAccountV2GET /machine-accounts/v2/{id}Get machine account details
Get-MachineAccountsSummaryV1GET /machine-accounts/v1/machine-accounts-summaryGet machine account candidate summary
Get-MachineAccountMachineIdentitiesV1GET /machine-accounts/v1/{id}/machine-identitiesList linked machine identities
Get-MachineAccountSubtypesV1GET /sources/v1/{sourceId}/subtypesRetrieve all subtypes by source
Get-MachineAccountsV1GET /machine-accounts/v1List machine accounts
Get-MachineAccountsV2GET /machine-accounts/v2List machine accounts
Update-MachineAccountSubtypeByTechnicalNameV1PATCH /sources/v1/{sourceId}/subtypes/{technicalName}Patch subtype
Invoke-ReloadMachineAccountV1POST /machine-accounts/v1/{id}/reloadReload machine account
Invoke-ReloadMachineAccountsInBulkAsyncV1POST /machine-accounts/v1/bulk-reload-asyncBulk reload machine accounts asynchronously
Invoke-ReloadMachineAccountsInBulkV1POST /machine-accounts/v1/bulk-reloadReload machine accounts in bulk
Unlock-MachineAccountV1POST /machine-accounts/v1/{id}/unlockUnlock machine account
Update-MachineAccountV1PATCH /machine-accounts/v1/{id}Update machine account details
Update-MachineAccountV2PATCH /machine-accounts/v2/{id}Update machine account details
Update-MachineAccountsInBulkV1POST /machine-accounts/v1/bulk-updateUpdate machine accounts in bulk

create-machine-account-subtype-v1​

deprecated

This endpoint has been deprecated and may be replaced or removed in future versions of the API.

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Create a new machine account subtype for a source.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathSourceIdStringTrueThe ID of the source.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
BodyCreateMachineAccountSubtypeV1RequestCreateMachineAccountSubtypeV1RequestTrue

Return type​

SourceSubtype

Responses​

CodeDescriptionData Type
201Created machine account subtype.SourceSubtype
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: application/json
  • Accept: application/json

Example​

$SourceId = "6d0458373bec4b4b80460992b76016da" # String | The ID of the source.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$CreateMachineAccountSubtypeV1Request = @"{"technicalName":"foo","displayName":"Mr Foo","description":"fighters","type":"MACHINE"}"@

# Create subtype

try {
$Result = ConvertFrom-JsonToCreateMachineAccountSubtypeV1Request -Json $CreateMachineAccountSubtypeV1Request
New-MachineAccountSubtypeV1 -SourceId $SourceId -XSailPointExperimental $XSailPointExperimental -CreateMachineAccountSubtypeV1Request $Result

# Below is a request that includes all optional parameters
# New-MachineAccountSubtypeV1 -SourceId $SourceId -XSailPointExperimental $XSailPointExperimental -CreateMachineAccountSubtypeV1Request $Result
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling New-MachineAccountSubtypeV1"
Write-Host $_.ErrorDetails
}

[Back to top]

delete-machine-account-async-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to remove a machine account from SailPoint Identity Security. The source account is left unchanged, and a removed machine account can be re-created during the next aggregation. The response returns the task ID.

This endpoint is intended for:

  • Removing machine accounts that no longer exist on the source.

  • Removing machine accounts that will not be aggregated after a source configuration change.

  • Forcing machine accounts to be re-created on the next aggregation so account processing can run again.

A caller who owns the machine account can remove it. Other callers need the idn:mis-account:remove right.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathIdStringTrueMachine Account ID.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.

Return type​

MachineAccountsAsyncResult

Responses​

CodeDescriptionData Type
202Async task details.MachineAccountsAsyncResult
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$Id = "ef38f94347e94562b5bb8424a56397d8" # String | Machine Account ID.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")

# Remove machine account

try {
Remove-MachineAccountAsyncV1 -Id $Id -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Remove-MachineAccountAsyncV1 -Id $Id -XSailPointExperimental $XSailPointExperimental
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-MachineAccountAsyncV1"
Write-Host $_.ErrorDetails
}

[Back to top]

delete-machine-account-subtype-by-technical-name-v1​

deprecated

This endpoint has been deprecated and may be replaced or removed in future versions of the API.

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Delete a machine account subtype by source ID and technical name.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathSourceIdStringTrueThe ID of the source.
PathTechnicalNameStringTrueThe technical name of the subtype.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.

Return type​

(empty response body)

Responses​

CodeDescriptionData Type
204Subtype deleted successfully.
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$SourceId = "6d0458373bec4b4b80460992b76016da" # String | The ID of the source.
$TechnicalName = "foo" # String | The technical name of the subtype.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")

# Delete subtype

try {
Remove-MachineAccountSubtypeByTechnicalNameV1 -SourceId $SourceId -TechnicalName $TechnicalName -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Remove-MachineAccountSubtypeByTechnicalNameV1 -SourceId $SourceId -TechnicalName $TechnicalName -XSailPointExperimental $XSailPointExperimental
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-MachineAccountSubtypeByTechnicalNameV1"
Write-Host $_.ErrorDetails
}

[Back to top]

delete-machine-account-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to submit a request to delete a machine account from its source. Depending on the tenant's account deletion approval settings, the request can need approval before the account is deleted. The response returns the ID of the account request.

The machine account must be linked to a machine identity; otherwise this API returns 404. Machine accounts aggregated from a dataset can be rejected with 400.

A caller who owns the machine account can delete it. Other callers need the idn:mis-account:delete right.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathIdStringTrueMachine Account ID.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
BodyMachineAccountDeleteRequestMachineAccountDeleteRequestTrue

Return type​

MachineAccountRequestAsyncResult

Responses​

CodeDescriptionData Type
202The deletion request was accepted.MachineAccountRequestAsyncResult
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: application/json
  • Accept: application/json

Example​

$Id = "ef38f94347e94562b5bb8424a56397d8" # String | Machine Account ID.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$MachineAccountDeleteRequest = @"{
"comments" : "This machine account is no longer used."
}"@

# Delete machine account

try {
$Result = ConvertFrom-JsonToMachineAccountDeleteRequest -Json $MachineAccountDeleteRequest
Remove-MachineAccountV1 -Id $Id -XSailPointExperimental $XSailPointExperimental -MachineAccountDeleteRequest $Result

# Below is a request that includes all optional parameters
# Remove-MachineAccountV1 -Id $Id -XSailPointExperimental $XSailPointExperimental -MachineAccountDeleteRequest $Result
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Remove-MachineAccountV1"
Write-Host $_.ErrorDetails
}

[Back to top]

disable-machine-account-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

This API submits a task to disable a machine account and returns the task ID.

A caller who owns the machine account can disable it. Other callers need the idn:mis-account:disable right.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathIdStringTrueMachine Account ID.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.

Return type​

MachineAccountsAsyncResult

Responses​

CodeDescriptionData Type
202Async task details.MachineAccountsAsyncResult
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$Id = "ef38f94347e94562b5bb8424a56397d8" # String | Machine Account ID.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")

# Disable machine account

try {
Disable-MachineAccountV1 -Id $Id -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Disable-MachineAccountV1 -Id $Id -XSailPointExperimental $XSailPointExperimental
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Disable-MachineAccountV1"
Write-Host $_.ErrorDetails
}

[Back to top]

disable-machine-accounts-in-bulk-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to submit one task that disables up to 100 machine accounts, and get the task ID. Machine accounts that are already disabled or that can't be disabled are skipped. When none of the machine accounts can be disabled, the task completes with an error.

The request fails with 400 when ids is empty or has more than 100 entries.

A caller who owns the machine accounts can disable them. Other callers need the idn:mis-account:disable right. For a caller without the right, machine accounts they do not own are skipped.

When this capability is not enabled for the tenant, this API returns 403.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
BodyMachineAccountBulkRequestMachineAccountBulkRequestTrue

Return type​

MachineAccountRequestAsyncResult

Responses​

CodeDescriptionData Type
202Async task details.MachineAccountRequestAsyncResult
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: application/json
  • Accept: application/json

Example​

$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$MachineAccountBulkRequest = @"{
"ids" : [ "ef38f94347e94562b5bb8424a56397d8", "2c9180835d2e5168015d32f890ca1581" ]
}"@

# Disable machine accounts in bulk

try {
$Result = ConvertFrom-JsonToMachineAccountBulkRequest -Json $MachineAccountBulkRequest
Disable-MachineAccountsInBulkV1 -XSailPointExperimental $XSailPointExperimental -MachineAccountBulkRequest $Result

# Below is a request that includes all optional parameters
# Disable-MachineAccountsInBulkV1 -XSailPointExperimental $XSailPointExperimental -MachineAccountBulkRequest $Result
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Disable-MachineAccountsInBulkV1"
Write-Host $_.ErrorDetails
}

[Back to top]

enable-machine-account-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

This API submits a task to enable a machine account and returns the task ID.

A caller who owns the machine account can enable it. Other callers need the idn:mis-account:enable right.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathIdStringTrueMachine Account ID.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.

Return type​

MachineAccountsAsyncResult

Responses​

CodeDescriptionData Type
202Async task details.MachineAccountsAsyncResult
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$Id = "ef38f94347e94562b5bb8424a56397d8" # String | Machine Account ID.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")

# Enable machine account

try {
Enable-MachineAccountV1 -Id $Id -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Enable-MachineAccountV1 -Id $Id -XSailPointExperimental $XSailPointExperimental
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Enable-MachineAccountV1"
Write-Host $_.ErrorDetails
}

[Back to top]

enable-machine-accounts-in-bulk-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to submit one task that enables up to 100 machine accounts, and get the task ID. Machine accounts that are already enabled or that can't be enabled are skipped. When none of the machine accounts can be enabled, the task completes with an error.

The request fails with 400 when ids is empty or has more than 100 entries.

A caller who owns the machine accounts can enable them. Other callers need the idn:mis-account:enable right. For a caller without the right, machine accounts they do not own are skipped.

When this capability is not enabled for the tenant, this API returns 403.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
BodyMachineAccountBulkRequestMachineAccountBulkRequestTrue

Return type​

MachineAccountRequestAsyncResult

Responses​

CodeDescriptionData Type
202Async task details.MachineAccountRequestAsyncResult
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: application/json
  • Accept: application/json

Example​

$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$MachineAccountBulkRequest = @"{
"ids" : [ "ef38f94347e94562b5bb8424a56397d8", "2c9180835d2e5168015d32f890ca1581" ]
}"@

# Enable machine accounts in bulk

try {
$Result = ConvertFrom-JsonToMachineAccountBulkRequest -Json $MachineAccountBulkRequest
Enable-MachineAccountsInBulkV1 -XSailPointExperimental $XSailPointExperimental -MachineAccountBulkRequest $Result

# Below is a request that includes all optional parameters
# Enable-MachineAccountsInBulkV1 -XSailPointExperimental $XSailPointExperimental -MachineAccountBulkRequest $Result
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Enable-MachineAccountsInBulkV1"
Write-Host $_.ErrorDetails
}

[Back to top]

get-machine-account-entitlements-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to list the entitlements held by a machine account. Use limit and offset to page through the results.

This API requires the idn:mis-account:read right. Owning the machine account is not enough.

When this capability is not enabled for the tenant, this API returns 403.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathIdStringTrueMachine Account ID.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
QueryLimitInt32(optional) (default to 250)Max number of results to return. See API Standard Collection Parameters for more information.
QueryOffsetInt32(optional) (default to 0)Offset into the full result set. Usually specified with limit to paginate through the results. See API Standard Collection Parameters for more information.

Return type​

MachineAccountEntitlement[]

Responses​

CodeDescriptionData Type
200List of the machine account's entitlements.MachineAccountEntitlement[]
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$Id = "ef38f94347e94562b5bb8424a56397d8" # String | Machine Account ID.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$Limit = 250 # Int32 | Max number of results to return. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/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 [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information. (optional) (default to 0)

# List machine account entitlements

try {
Get-MachineAccountEntitlementsV1 -Id $Id -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Get-MachineAccountEntitlementsV1 -Id $Id -XSailPointExperimental $XSailPointExperimental -Limit $Limit -Offset $Offset
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-MachineAccountEntitlementsV1"
Write-Host $_.ErrorDetails
}

[Back to top]

get-machine-account-subtype-by-id-v1​

deprecated

This endpoint has been deprecated and may be replaced or removed in future versions of the API.

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Get a machine account subtype by its unique ID.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathSubtypeIdStringTrueThe ID of the machine account subtype.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.

Return type​

SourceSubtype

Responses​

CodeDescriptionData Type
200Machine account subtype object.SourceSubtype
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$SubtypeId = "43bdd144-4b17-4fce-a744-17c7fd3e717b" # String | The ID of the machine account subtype.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")

# Retrieve subtype by subtype id

try {
Get-MachineAccountSubtypeByIdV1 -SubtypeId $SubtypeId -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Get-MachineAccountSubtypeByIdV1 -SubtypeId $SubtypeId -XSailPointExperimental $XSailPointExperimental
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-MachineAccountSubtypeByIdV1"
Write-Host $_.ErrorDetails
}

[Back to top]

get-machine-account-subtype-by-technical-name-v1​

deprecated

This endpoint has been deprecated and may be replaced or removed in future versions of the API.

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Get a machine account subtype by source ID and technical name.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathSourceIdStringTrueThe ID of the source.
PathTechnicalNameStringTrueThe technical name of the subtype.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.

Return type​

SourceSubtype

Responses​

CodeDescriptionData Type
200Machine account subtype object.SourceSubtype
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$SourceId = "6d0458373bec4b4b80460992b76016da" # String | The ID of the source.
$TechnicalName = "foo" # String | The technical name of the subtype.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")

# Retrieve subtype by source and technicalName

try {
Get-MachineAccountSubtypeByTechnicalNameV1 -SourceId $SourceId -TechnicalName $TechnicalName -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Get-MachineAccountSubtypeByTechnicalNameV1 -SourceId $SourceId -TechnicalName $TechnicalName -XSailPointExperimental $XSailPointExperimental
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-MachineAccountSubtypeByTechnicalNameV1"
Write-Host $_.ErrorDetails
}

[Back to top]

get-machine-account-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to return the details for a single machine account by its ID.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathIdStringTrueMachine Account ID.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.

Return type​

MachineAccount

Responses​

CodeDescriptionData Type
200Machine Account object.MachineAccount
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$Id = "ef38f94347e94562b5bb8424a56397d8" # String | Machine Account ID.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")

# Get machine account details

try {
Get-MachineAccountV1 -Id $Id -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Get-MachineAccountV1 -Id $Id -XSailPointExperimental $XSailPointExperimental
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-MachineAccountV1"
Write-Host $_.ErrorDetails
}

[Back to top]

get-machine-account-v2​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to get the details of a machine account, including all of its linked machine identities.

A caller who owns the machine account can get it. Other callers need the idn:mis-account:read right.

When this capability is not enabled for the tenant, this API returns 403.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathIdStringTrueMachine Account ID.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.

Return type​

MachineAccountV2

Responses​

CodeDescriptionData Type
200Machine account object.MachineAccountV2
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$Id = "ef38f94347e94562b5bb8424a56397d8" # String | Machine Account ID.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")

# Get machine account details

try {
Get-MachineAccountV2 -Id $Id -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Get-MachineAccountV2 -Id $Id -XSailPointExperimental $XSailPointExperimental
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-MachineAccountV2"
Write-Host $_.ErrorDetails
}

[Back to top]

get-machine-accounts-summary-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to count the machine account candidates that are not yet linked to a machine identity, grouped by the classification method that found them. Candidates that are correlated to a human identity are counted in human; candidates that are not correlated to any identity are counted in uncorrelated.

This API requires the idn:mis-account-list:read right.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
QueryFiltersString(optional)Filter results using the standard syntax described in V3 API Standard Collection Parameters Filtering is supported for the following fields and operators: source.id: eq, in Filtering on any other field returns 400.

Return type​

MachineAccountsSummary

Responses​

CodeDescriptionData Type
200Machine account candidate counts.MachineAccountsSummary
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$Filters = 'source.id eq "8d3e0094e99445de98eef6c75e25jc04"' # 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: **source.id**: *eq, in* Filtering on any other field returns `400`. (optional)

# Get machine account candidate summary

try {
Get-MachineAccountsSummaryV1 -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Get-MachineAccountsSummaryV1 -XSailPointExperimental $XSailPointExperimental -Filters $Filters
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-MachineAccountsSummaryV1"
Write-Host $_.ErrorDetails
}

[Back to top]

list-machine-account-machine-identities-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to list the machine identities that are linked to a machine account through source resource links. The response is an empty list when no machine identities are linked.

This API returns 400 when the machine account has no native identity or source.

A caller who owns the machine account can list its machine identities. Other callers need the idn:mis-account:read right.

When this capability is not enabled for the tenant, this API returns 403.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathIdStringTrueMachine Account ID.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.

Return type​

MachineAccountLinkedMachineIdentity[]

Responses​

CodeDescriptionData Type
200List of machine identities linked to the machine account.MachineAccountLinkedMachineIdentity[]
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$Id = "ef38f94347e94562b5bb8424a56397d8" # String | Machine Account ID.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")

# List linked machine identities

try {
Get-MachineAccountMachineIdentitiesV1 -Id $Id -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Get-MachineAccountMachineIdentitiesV1 -Id $Id -XSailPointExperimental $XSailPointExperimental
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-MachineAccountMachineIdentitiesV1"
Write-Host $_.ErrorDetails
}

[Back to top]

list-machine-account-subtypes-v1​

deprecated

This endpoint has been deprecated and may be replaced or removed in future versions of the API.

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Get all machine account subtypes for a given source.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathSourceIdStringTrueThe ID of the source.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
QueryFiltersString(optional)Filter results using the standard syntax described in API Standard Collection Parameters Filtering is supported for the following fields and operators: displayName: eq, sw technicalName: eq, sw
QuerySortersString(optional)Sort results using the standard syntax described in API Standard Collection Parameters Sorting is supported for the following fields: displayName, technicalName
QueryCountBoolean(optional) (default to $false)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 API Standard Collection Parameters for more information.
QueryLimitInt32(optional) (default to 250)Max number of results to return. See API Standard Collection Parameters for more information.
QueryOffsetInt32(optional) (default to 0)Offset into the full result set. Usually specified with limit to paginate through the results. See API Standard Collection Parameters for more information.

Return type​

SourceSubtype[]

Responses​

CodeDescriptionData Type
200List of machine account subtypes.SourceSubtype[]
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$SourceId = "6d0458373bec4b4b80460992b76016da" # String | The ID of the source.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$Filters = 'displayName eq "sail"' # String | Filter results using the standard syntax described in [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **displayName**: *eq, sw* **technicalName**: *eq, sw* (optional)
$Sorters = "displayName" # String | Sort results using the standard syntax described in [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **displayName, technicalName** (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 [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information. (optional) (default to $false)
$Limit = 250 # Int32 | Max number of results to return. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/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 [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information. (optional) (default to 0)

# Retrieve all subtypes by source

try {
Get-MachineAccountSubtypesV1 -SourceId $SourceId -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Get-MachineAccountSubtypesV1 -SourceId $SourceId -XSailPointExperimental $XSailPointExperimental -Filters $Filters -Sorters $Sorters -Count $Count -Limit $Limit -Offset $Offset
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-MachineAccountSubtypesV1"
Write-Host $_.ErrorDetails
}

[Back to top]

list-machine-accounts-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

This returns a list of machine accounts.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
QueryLimitInt32(optional) (default to 250)Max number of results to return. See API Standard Collection Parameters for more information.
QueryOffsetInt32(optional) (default to 0)Offset into the full result set. Usually specified with limit to paginate through the results. See API Standard Collection Parameters for more information.
QueryCountBoolean(optional) (default to $false)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 API Standard Collection Parameters for more information.
QueryFiltersString(optional)Filter results using the standard syntax described in API Standard Collection Parameters Filtering is supported for the following fields and operators: id: eq, in name: eq, in, sw nativeIdentity: eq, in, sw uuid: eq, in description: eq, in, sw machineIdentity.id: eq, in machineIdentity.name: eq, in, sw subtype.technicalName: eq, in, sw subtype.displayName: eq, in, sw accessType: eq, in, sw environment: eq, in, sw ownerIdentity: eq, in ownerIdentity.id: eq, in ownerIdentity.name: eq, in, sw manuallyCorrelated: eq enabled: eq locked: eq hasEntitlements: eq attributes: eq source.id: eq, in source.name: eq, in, sw created: eq, gt, lt, ge, le modified: eq, gt, lt, ge, le risk.severity: eq, in permissionLevel: eq, in lastUsedAt: gt, lt, ge, le risk.severity, permissionLevel, and lastUsedAt require Entro enrichment to be enabled for the tenant. When it is not, those filters return 400. compliance and complianceViolationsCount are not filter fields. With unknown-severity enabled, a null stored severity matches risk.severity eq ""UNKNOWN"".
QuerySortersString(optional)Sort results using the standard syntax described in API Standard Collection Parameters Sorting is supported for the following fields: id, name, nativeIdentity, ownerIdentity, uuid, description, machineIdentity.id, machineIdentity.name, subtype.technicalName, subtype.displayName, accessType, environment, manuallyCorrelated, enabled, locked, hasEntitlements, ownerIdentity.id, ownerIdentity.name, attributes, source.id, source.name, created, modified, risk.severity, permissionLevel, lastUsedAt risk.severity, permissionLevel, and lastUsedAt require Entro enrichment to be enabled; otherwise those sorters return 400. risk.severity sorts by rank (UNKNOWN, LOW, MEDIUM, HIGH, CRITICAL), not alphabetically. Null Entro values sort last. compliance is not sortable.

Return type​

MachineAccount[]

Responses​

CodeDescriptionData Type
200List of machine account objectsMachineAccount[]
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$Limit = 250 # Int32 | Max number of results to return. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/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 [API Standard Collection Parameters](https://developer.sailpoint.com/docs/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 [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information. (optional) (default to $false)
$Filters = 'hasEntitlements eq true" # String | Filter results using the standard syntax described in [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, in, sw* **nativeIdentity**: *eq, in, sw* **uuid**: *eq, in* **description**: *eq, in, sw* **machineIdentity.id**: *eq, in* **machineIdentity.name**: *eq, in, sw* **subtype.technicalName**: *eq, in, sw* **subtype.displayName**: *eq, in, sw* **accessType**: *eq, in, sw* **environment**: *eq, in, sw* **ownerIdentity**: *eq, in* **ownerIdentity.id**: *eq, in* **ownerIdentity.name**: *eq, in, sw* **manuallyCorrelated**: *eq* **enabled**: *eq* **locked**: *eq* **hasEntitlements**: *eq* **attributes**: *eq* **source.id**: *eq, in* **source.name**: *eq, in, sw* **created**: *eq, gt, lt, ge, le* **modified**: *eq, gt, lt, ge, le* **risk.severity**: *eq, in* **permissionLevel**: *eq, in* **lastUsedAt**: *gt, lt, ge, le* `risk.severity`, `permissionLevel`, and `lastUsedAt` require Entro enrichment to be enabled for the tenant. When it is not, those filters return `400`. `compliance` and `complianceViolationsCount` are not filter fields. With unknown-severity enabled, a null stored severity matches `risk.severity eq ""UNKNOWN"'`. (optional)
$Sorters = "id,name" # String | Sort results using the standard syntax described in [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, nativeIdentity, ownerIdentity, uuid, description, machineIdentity.id, machineIdentity.name, subtype.technicalName, subtype.displayName, accessType, environment, manuallyCorrelated, enabled, locked, hasEntitlements, ownerIdentity.id, ownerIdentity.name, attributes, source.id, source.name, created, modified, risk.severity, permissionLevel, lastUsedAt** `risk.severity`, `permissionLevel`, and `lastUsedAt` require Entro enrichment to be enabled; otherwise those sorters return `400`. `risk.severity` sorts by rank (UNKNOWN, LOW, MEDIUM, HIGH, CRITICAL), not alphabetically. Null Entro values sort last. `compliance` is not sortable. (optional)

# List machine accounts

try {
Get-MachineAccountsV1 -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Get-MachineAccountsV1 -XSailPointExperimental $XSailPointExperimental -Limit $Limit -Offset $Offset -Count $Count -Filters $Filters -Sorters $Sorters
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-MachineAccountsV1"
Write-Host $_.ErrorDetails
}

[Back to top]

list-machine-accounts-v2​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to get a list of machine accounts. By default, the list includes machine accounts that are linked to a machine identity or to a source resource.

When the whole filter is a single comparison on machineIdentity.id or machineIdentity.name, the list also includes machine accounts linked to the matching machine identities through source resource links.

A caller without the idn:mis-account-list:read right can call this API only when every returned machine account is one they own; otherwise this API returns 403. Use ownerIdentity=self to list only the caller's own machine accounts.

When this capability is not enabled for the tenant, this API returns 403.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
QueryLimitInt32(optional) (default to 250)Max number of results to return. See API Standard Collection Parameters for more information.
QueryOffsetInt32(optional) (default to 0)Offset into the full result set. Usually specified with limit to paginate through the results. See API Standard Collection Parameters for more information.
QueryCountBoolean(optional) (default to $false)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 API Standard Collection Parameters for more information.
QueryOwnerIdentityString(optional)Return only machine accounts whose owner identity is this identity ID. Use self for the caller's own identity. This parameter can't be combined with a filter on ownerIdentity.id; that combination returns 400.
QueryFiltersString(optional)Filter results using the standard syntax described in V3 API Standard Collection Parameters Filtering is supported for the following fields and operators: id: eq, in name: eq, in, sw nativeIdentity: eq, in, sw uuid: eq, in description: eq, in, sw machineIdentity.id: eq, in machineIdentity.name: eq, in, sw subtype.technicalName: eq, in, sw subtype.displayName: eq, in, sw accessType: eq, in, sw environment: eq, in, sw ownerIdentity: eq, in ownerIdentity.id: eq, in ownerIdentity.name: eq, in, sw owners.primary.id: eq, in owners.primary.name: eq, in, sw owners.secondaryIdentity.id: eq, in owners.secondaryIdentity.name: eq, in, sw owners.governanceGroup.id: eq, in owners.governanceGroup.name: eq, in, sw manuallyCorrelated: eq enabled: eq locked: eq hasEntitlements: eq attributes: eq connectorAttributes: eq source.id: eq, in source.name: eq, in, sw datasetId: eq, in resource.id: eq, in type: eq, in created: eq, gt, lt, ge, le modified: eq, gt, lt, ge, le risk.severity: eq, in permissionLevel: eq, in lastUsedAt: gt, lt, ge, le Use me as the value of ownerIdentity.id to match the caller's own identity. The owners.* fields are available only when expanded machine account ownership is enabled for the tenant. The risk.severity, permissionLevel and lastUsedAt fields are available only when machine account risk enrichment is enabled for the tenant. Filtering on an unavailable field returns 400.
QuerySortersString(optional)Sort results using the standard syntax described in V3 API Standard Collection Parameters Sorting is supported for the following fields: id, name, nativeIdentity, uuid, description, machineIdentity.id, machineIdentity.name, subtype.technicalName, subtype.displayName, accessType, environment, ownerIdentity, ownerIdentity.id, ownerIdentity.name, owners.primary.id, owners.primary.name, owners.secondaryIdentity.id, owners.secondaryIdentity.name, owners.governanceGroup.id, owners.governanceGroup.name, manuallyCorrelated, enabled, locked, hasEntitlements, attributes, connectorAttributes, source.id, source.name, datasetId, resource.id, type, created, modified, risk.severity, permissionLevel, lastUsedAt The same availability rules as for filters apply to the owners.*, risk.severity, permissionLevel and lastUsedAt fields. risk.severity sorts by rank (UNKNOWN, LOW, MEDIUM, HIGH, CRITICAL), not alphabetically.

Return type​

MachineAccountV2[]

Responses​

CodeDescriptionData Type
200List of machine accounts.MachineAccountV2[]
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$Limit = 250 # Int32 | Max number of results to return. See [API Standard Collection Parameters](https://developer.sailpoint.com/docs/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 [API Standard Collection Parameters](https://developer.sailpoint.com/docs/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 [API Standard Collection Parameters](https://developer.sailpoint.com/docs/api/standard-collection-parameters) for more information. (optional) (default to $false)
$OwnerIdentity = "self" # String | Return only machine accounts whose owner identity is this identity ID. Use `self` for the caller's own identity. This parameter can't be combined with a filter on `ownerIdentity.id`; that combination returns `400`. (optional)
$Filters = 'machineIdentity.id 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* **name**: *eq, in, sw* **nativeIdentity**: *eq, in, sw* **uuid**: *eq, in* **description**: *eq, in, sw* **machineIdentity.id**: *eq, in* **machineIdentity.name**: *eq, in, sw* **subtype.technicalName**: *eq, in, sw* **subtype.displayName**: *eq, in, sw* **accessType**: *eq, in, sw* **environment**: *eq, in, sw* **ownerIdentity**: *eq, in* **ownerIdentity.id**: *eq, in* **ownerIdentity.name**: *eq, in, sw* **owners.primary.id**: *eq, in* **owners.primary.name**: *eq, in, sw* **owners.secondaryIdentity.id**: *eq, in* **owners.secondaryIdentity.name**: *eq, in, sw* **owners.governanceGroup.id**: *eq, in* **owners.governanceGroup.name**: *eq, in, sw* **manuallyCorrelated**: *eq* **enabled**: *eq* **locked**: *eq* **hasEntitlements**: *eq* **attributes**: *eq* **connectorAttributes**: *eq* **source.id**: *eq, in* **source.name**: *eq, in, sw* **datasetId**: *eq, in* **resource.id**: *eq, in* **type**: *eq, in* **created**: *eq, gt, lt, ge, le* **modified**: *eq, gt, lt, ge, le* **risk.severity**: *eq, in* **permissionLevel**: *eq, in* **lastUsedAt**: *gt, lt, ge, le* Use `me` as the value of `ownerIdentity.id` to match the caller's own identity. The `owners.*` fields are available only when expanded machine account ownership is enabled for the tenant. The `risk.severity`, `permissionLevel` and `lastUsedAt` fields are available only when machine account risk enrichment is enabled for the tenant. Filtering on an unavailable field returns `400`. (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, nativeIdentity, uuid, description, machineIdentity.id, machineIdentity.name, subtype.technicalName, subtype.displayName, accessType, environment, ownerIdentity, ownerIdentity.id, ownerIdentity.name, owners.primary.id, owners.primary.name, owners.secondaryIdentity.id, owners.secondaryIdentity.name, owners.governanceGroup.id, owners.governanceGroup.name, manuallyCorrelated, enabled, locked, hasEntitlements, attributes, connectorAttributes, source.id, source.name, datasetId, resource.id, type, created, modified, risk.severity, permissionLevel, lastUsedAt** The same availability rules as for `filters` apply to the `owners.*`, `risk.severity`, `permissionLevel` and `lastUsedAt` fields. `risk.severity` sorts by rank (UNKNOWN, LOW, MEDIUM, HIGH, CRITICAL), not alphabetically. (optional)

# List machine accounts

try {
Get-MachineAccountsV2 -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Get-MachineAccountsV2 -XSailPointExperimental $XSailPointExperimental -Limit $Limit -Offset $Offset -Count $Count -OwnerIdentity $OwnerIdentity -Filters $Filters -Sorters $Sorters
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Get-MachineAccountsV2"
Write-Host $_.ErrorDetails
}

[Back to top]

patch-machine-account-subtype-by-technical-name-v1​

deprecated

This endpoint has been deprecated and may be replaced or removed in future versions of the API.

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Update fields of a machine account subtype by source ID and technical name. Patchable fields include: displayName, description.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathSourceIdStringTrueThe ID of the source.
PathTechnicalNameStringTrueThe technical name of the subtype.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
BodyRequestBody[]SystemCollectionsHashtableTrueA JSON of updated values JSON Patch standard.

Return type​

SourceSubtype

Responses​

CodeDescriptionData Type
200Updated machine account subtype.SourceSubtype
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: application/json-patch+json
  • Accept: application/json

Example​

$SourceId = "6d0458373bec4b4b80460992b76016da" # String | The ID of the source.
$TechnicalName = "foo" # String | The technical name of the subtype.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$RequestBody = # SystemCollectionsHashtable[] | A JSON of updated values [JSON Patch](https://tools.ietf.org/html/rfc6902) standard.
$RequestBody = @"[{"op":"replace","path":"/displayName","value":"Test New DisplayName"}]"@ # SystemCollectionsHashtable[] | A JSON of updated values [JSON Patch](https://tools.ietf.org/html/rfc6902) standard.


# Patch subtype

try {
$Result = ConvertFrom-JsonToRequestBody -Json $RequestBody
Update-MachineAccountSubtypeByTechnicalNameV1 -SourceId $SourceId -TechnicalName $TechnicalName -XSailPointExperimental $XSailPointExperimental -RequestBody $Result

# Below is a request that includes all optional parameters
# Update-MachineAccountSubtypeByTechnicalNameV1 -SourceId $SourceId -TechnicalName $TechnicalName -XSailPointExperimental $XSailPointExperimental -RequestBody $Result
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-MachineAccountSubtypeByTechnicalNameV1"
Write-Host $_.ErrorDetails
}

[Back to top]

reload-machine-account-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

This API asynchronously reloads the machine account directly from the connector and performs a one-time aggregation. It returns the task ID.

A caller who owns the machine account can reload it. Other callers need the idn:mis-account:reload right.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathIdStringTrueMachine Account ID.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.

Return type​

MachineAccountsAsyncResult

Responses​

CodeDescriptionData Type
202Async task details.MachineAccountsAsyncResult
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$Id = "ef38f94347e94562b5bb8424a56397d8" # String | Machine Account ID.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")

# Reload machine account

try {
Invoke-ReloadMachineAccountV1 -Id $Id -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Invoke-ReloadMachineAccountV1 -Id $Id -XSailPointExperimental $XSailPointExperimental
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Invoke-ReloadMachineAccountV1"
Write-Host $_.ErrorDetails
}

[Back to top]

reload-machine-accounts-in-bulk-async-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to submit one task that reloads up to 100 machine accounts from their sources, and get the task ID. Machine accounts that can't be reloaded are skipped. When none of the machine accounts can be reloaded, the task completes with an error.

The request fails with 400 when ids is empty or has more than 100 entries.

A caller who owns the machine accounts can reload them. Other callers need the idn:mis-account:reload right. For a caller without the right, machine accounts they do not own are skipped.

When this capability is not enabled for the tenant, this API returns 403.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
BodyMachineAccountBulkRequestMachineAccountBulkRequestTrue

Return type​

MachineAccountRequestAsyncResult

Responses​

CodeDescriptionData Type
202Async task details.MachineAccountRequestAsyncResult
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: application/json
  • Accept: application/json

Example​

$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$MachineAccountBulkRequest = @"{
"ids" : [ "ef38f94347e94562b5bb8424a56397d8", "2c9180835d2e5168015d32f890ca1581" ]
}"@

# Bulk reload machine accounts asynchronously

try {
$Result = ConvertFrom-JsonToMachineAccountBulkRequest -Json $MachineAccountBulkRequest
Invoke-ReloadMachineAccountsInBulkAsyncV1 -XSailPointExperimental $XSailPointExperimental -MachineAccountBulkRequest $Result

# Below is a request that includes all optional parameters
# Invoke-ReloadMachineAccountsInBulkAsyncV1 -XSailPointExperimental $XSailPointExperimental -MachineAccountBulkRequest $Result
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Invoke-ReloadMachineAccountsInBulkAsyncV1"
Write-Host $_.ErrorDetails
}

[Back to top]

reload-machine-accounts-in-bulk-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to reload up to 100 machine accounts from their sources. The response has one result per requested machine account, in no particular order. Each result has its own HTTP-style status: 200 when the reload was queued, or an error status such as 400, 404 or 500.

To track the whole reload with a single task instead, use the asynchronous bulk reload API.

The request fails with 400 when ids is empty or has more than 100 entries.

A caller who owns the machine accounts can reload them. Other callers need the idn:mis-account:reload right. For a caller without the right, machine accounts they do not own get a result with status 404.

When this capability is not enabled for the tenant, this API returns 403.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
BodyMachineAccountBulkRequestMachineAccountBulkRequestTrue

Return type​

MachineAccountBulkResult[]

Responses​

CodeDescriptionData Type
207One result per requested machine account.MachineAccountBulkResult[]
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: application/json
  • Accept: application/json

Example​

$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$MachineAccountBulkRequest = @"{
"ids" : [ "ef38f94347e94562b5bb8424a56397d8", "2c9180835d2e5168015d32f890ca1581" ]
}"@

# Reload machine accounts in bulk

try {
$Result = ConvertFrom-JsonToMachineAccountBulkRequest -Json $MachineAccountBulkRequest
Invoke-ReloadMachineAccountsInBulkV1 -XSailPointExperimental $XSailPointExperimental -MachineAccountBulkRequest $Result

# Below is a request that includes all optional parameters
# Invoke-ReloadMachineAccountsInBulkV1 -XSailPointExperimental $XSailPointExperimental -MachineAccountBulkRequest $Result
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Invoke-ReloadMachineAccountsInBulkV1"
Write-Host $_.ErrorDetails
}

[Back to top]

unlock-machine-account-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

This API submits a task to unlock a machine account and returns the task ID.

A caller who owns the machine account can unlock it. Other callers need the idn:mis-account:unlock right.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathIdStringTrueMachine Account ID.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.

Return type​

MachineAccountsAsyncResult

Responses​

CodeDescriptionData Type
202Async task details.MachineAccountsAsyncResult
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: Not defined
  • Accept: application/json

Example​

$Id = "ef38f94347e94562b5bb8424a56397d8" # String | Machine Account ID.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")

# Unlock machine account

try {
Unlock-MachineAccountV1 -Id $Id -XSailPointExperimental $XSailPointExperimental

# Below is a request that includes all optional parameters
# Unlock-MachineAccountV1 -Id $Id -XSailPointExperimental $XSailPointExperimental
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Unlock-MachineAccountV1"
Write-Host $_.ErrorDetails
}

[Back to top]

update-machine-account-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to update machine accounts details.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathIdStringTrueMachine Account ID.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
BodyRequestBody[]SystemCollectionsHashtableTrueA JSON of updated values JSON Patch standard. The following fields are patchable: * description * environment * accessType * attributes * manuallyEdited * ownerIdentity * subtype * machineIdentity * owners Non-dataset accounts may patch ownerIdentity, subtype, and machineIdentity. Dataset accounts may patch owners. When expanded ownership is enabled, non-dataset accounts may also patch owners, and dataset accounts may also patch ownerIdentity. risk, permissionLevel, compliance, and lastUsedAt are read-only. Do not patch them; aggregation is the only writer. A patch of other fields still succeeds when those values are present on the account.

Return type​

MachineAccount

Responses​

CodeDescriptionData Type
200Updated Machine Account object.MachineAccount
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: application/json-patch+json
  • Accept: application/json

Example​

$Id = "ef38f94347e94562b5bb8424a56397d8" # String | Machine Account ID.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$RequestBody = # SystemCollectionsHashtable[] | A JSON of updated values [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * description * environment * accessType * attributes * manuallyEdited * ownerIdentity * subtype * machineIdentity * owners Non-dataset accounts may patch ownerIdentity, subtype, and machineIdentity. Dataset accounts may patch owners. When expanded ownership is enabled, non-dataset accounts may also patch owners, and dataset accounts may also patch ownerIdentity. `risk`, `permissionLevel`, `compliance`, and `lastUsedAt` are read-only. Do not patch them; aggregation is the only writer. A patch of other fields still succeeds when those values are present on the account.
$RequestBody = @"[{"op":"add","path":"/environment","value":"test"}]"@ # SystemCollectionsHashtable[] | A JSON of updated values [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * description * environment * accessType * attributes * manuallyEdited * ownerIdentity * subtype * machineIdentity * owners Non-dataset accounts may patch ownerIdentity, subtype, and machineIdentity. Dataset accounts may patch owners. When expanded ownership is enabled, non-dataset accounts may also patch owners, and dataset accounts may also patch ownerIdentity. `risk`, `permissionLevel`, `compliance`, and `lastUsedAt` are read-only. Do not patch them; aggregation is the only writer. A patch of other fields still succeeds when those values are present on the account.


# Update machine account details

try {
$Result = ConvertFrom-JsonToRequestBody -Json $RequestBody
Update-MachineAccountV1 -Id $Id -XSailPointExperimental $XSailPointExperimental -RequestBody $Result

# Below is a request that includes all optional parameters
# Update-MachineAccountV1 -Id $Id -XSailPointExperimental $XSailPointExperimental -RequestBody $Result
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-MachineAccountV1"
Write-Host $_.ErrorDetails
}

[Back to top]

update-machine-account-v2​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to update a machine account with a JSON Patch document. The response is the updated machine account.

A caller who owns the machine account can update it. Other callers need the idn:mis-account:update right.

When this capability is not enabled for the tenant, this API returns 403.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
PathIdStringTrueMachine Account ID.
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
BodyJsonPatchOperation[]JsonPatchOperationTrueA JSON of updated values JSON Patch standard. The following fields are patchable: * description * environment * accessType * attributes * manuallyEdited * ownerIdentity * subtype * machineIdentities * owners Non-dataset accounts may patch ownerIdentity, subtype, and machineIdentities. Dataset accounts may patch owners. When expanded ownership is enabled, non-dataset accounts may also patch owners, and dataset accounts may also patch ownerIdentity. Patching ownerIdentity and owners in the same request returns 400. To change the machine identity, use a single replace operation on /machineIdentities whose value is a list of exactly one machine identity reference with its id. The /machineIdentity path, indexed or nested paths such as /machineIdentities/0, other operations on /machineIdentities, and a value that is not a one-element list all return 400. All other fields, including risk, permissionLevel, compliance, and lastUsedAt, are read-only. A patch that changes one of them returns 400.

Return type​

MachineAccountV2

Responses​

CodeDescriptionData Type
200Updated machine account object.MachineAccountV2
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: application/json-patch+json, application/json
  • Accept: application/json

Example​

$Id = "ef38f94347e94562b5bb8424a56397d8" # String | Machine Account ID.
$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$JsonPatchOperation = @"{
"op" : "replace",
"path" : "/description",
"value" : "New description"
}"@ # JsonPatchOperation[] | A JSON of updated values [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * description * environment * accessType * attributes * manuallyEdited * ownerIdentity * subtype * machineIdentities * owners Non-dataset accounts may patch ownerIdentity, subtype, and machineIdentities. Dataset accounts may patch owners. When expanded ownership is enabled, non-dataset accounts may also patch owners, and dataset accounts may also patch ownerIdentity. Patching ownerIdentity and owners in the same request returns `400`. To change the machine identity, use a single `replace` operation on `/machineIdentities` whose value is a list of exactly one machine identity reference with its `id`. The `/machineIdentity` path, indexed or nested paths such as `/machineIdentities/0`, other operations on `/machineIdentities`, and a value that is not a one-element list all return `400`. All other fields, including `risk`, `permissionLevel`, `compliance`, and `lastUsedAt`, are read-only. A patch that changes one of them returns `400`. $JsonPatchOperation = @"{
"op" : "replace",
"path" : "/description",
"value" : "New description"
}"@ # JsonPatchOperation[] | A JSON of updated values [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. The following fields are patchable: * description * environment * accessType * attributes * manuallyEdited * ownerIdentity * subtype * machineIdentities * owners Non-dataset accounts may patch ownerIdentity, subtype, and machineIdentities. Dataset accounts may patch owners. When expanded ownership is enabled, non-dataset accounts may also patch owners, and dataset accounts may also patch ownerIdentity. Patching ownerIdentity and owners in the same request returns `400`. To change the machine identity, use a single `replace` operation on `/machineIdentities` whose value is a list of exactly one machine identity reference with its `id`. The `/machineIdentity` path, indexed or nested paths such as `/machineIdentities/0`, other operations on `/machineIdentities`, and a value that is not a one-element list all return `400`. All other fields, including `risk`, `permissionLevel`, `compliance`, and `lastUsedAt`, are read-only. A patch that changes one of them returns `400`.


# Update machine account details

try {
$Result = ConvertFrom-JsonToJsonPatchOperation -Json $JsonPatchOperation
Update-MachineAccountV2 -Id $Id -XSailPointExperimental $XSailPointExperimental -JsonPatchOperation $Result

# Below is a request that includes all optional parameters
# Update-MachineAccountV2 -Id $Id -XSailPointExperimental $XSailPointExperimental -JsonPatchOperation $Result
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-MachineAccountV2"
Write-Host $_.ErrorDetails
}

[Back to top]

update-machine-accounts-in-bulk-v1​

experimental

This API is currently in an experimental state. The API is subject to change based on feedback and further testing. You must include the X-SailPoint-Experimental header and set it to true to use this endpoint.

Use this API to apply the same JSON Patch to up to 100 machine accounts. The response has one result per requested machine account, in no particular order. Each result has its own HTTP-style status: 200 when the update succeeded, or an error status such as 400 or 404.

Each patch operation must target one of these top-level fields:

  • description
  • subtype
  • environment
  • machineIdentity
  • ownerIdentity
  • manuallyEdited

The request fails with 400 when ids is empty or has more than 100 entries, when jsonPatch is missing, or when a patch operation targets any other field. A patch that changes subtype must only include machine accounts from one source; otherwise every result has status 400.

A caller who owns the machine accounts can update them. Other callers need the idn:mis-account:update right. For a caller without the right, machine accounts they do not own get a result with status 404.

When this capability is not enabled for the tenant, this API returns 403.

API Spec

Parameters​

Param TypeNameData TypeRequiredDescription
XSailPointExperimentalStringTrue (default to "true")Use this header to enable this experimental API.
BodyMachineAccountBulkUpdateRequestMachineAccountBulkUpdateRequestTrue

Return type​

MachineAccountBulkResult[]

Responses​

CodeDescriptionData Type
207One result per requested machine account.MachineAccountBulkResult[]
400Client Error - Returned if the request body is invalid.ErrorResponseDto
401Unauthorized - Returned if there is no authorization header, or if the JWT token is expired.ListMachineAccountsV1401Response
403Forbidden - Returned if the user you are running as, doesn't have access to this end-point.ErrorResponseDto
404Not Found - returned if the request URL refers to a resource or object that does not existErrorResponseDto
429Too Many Requests - Returned in response to too many requests in a given period of time - rate limited. The Retry-After header in the response includes how long to wait before trying again.ListMachineAccountsV1429Response
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto

HTTP request headers​

  • Content-Type: application/json
  • Accept: application/json

Example​

$XSailPointExperimental = "true" # String | Use this header to enable this experimental API. (default to "true")
$MachineAccountBulkUpdateRequest = @"{
"ids" : [ "ef38f94347e94562b5bb8424a56397d8", "2c9180835d2e5168015d32f890ca1581" ],
"jsonPatch" : [ {
"op" : "replace",
"path" : "/environment",
"value" : "PROD"
} ]
}"@

# Update machine accounts in bulk

try {
$Result = ConvertFrom-JsonToMachineAccountBulkUpdateRequest -Json $MachineAccountBulkUpdateRequest
Update-MachineAccountsInBulkV1 -XSailPointExperimental $XSailPointExperimental -MachineAccountBulkUpdateRequest $Result

# Below is a request that includes all optional parameters
# Update-MachineAccountsInBulkV1 -XSailPointExperimental $XSailPointExperimental -MachineAccountBulkUpdateRequest $Result
} catch {
Write-Host $_.Exception.Response.StatusCode.value__ "Exception occurred when calling Update-MachineAccountsInBulkV1"
Write-Host $_.ErrorDetails
}

[Back to top]