Skip to main content

sailpoint.machine_identities.MachineIdentitiesApi

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

MethodHTTP requestDescription
create-machine-identity-v1POST /machine-identities/v1Create machine identity
create-machine-identity-v2POST /machine-identities/v2Create machine identity
delete-machine-identity-v1DELETE /machine-identities/v1/{id}Delete machine identity
delete-machine-identity-v2DELETE /machine-identities/v2/{id}Delete machine identity
delete-ownership-correlation-config-v1DELETE /sources/v1/{sourceId}/resources/{resourceId}/correlation-configs/{configId}Delete ownership correlation config
get-machine-identity-v1GET /machine-identities/v1/{id}Get machine identity details
get-machine-identity-v2GET /machine-identities/v2/{id}Get machine identity details
get-ownership-correlation-config-v1GET /sources/v1/{sourceId}/resources/{resourceId}/correlation-configs/{configId}Get ownership correlation config
list-machine-identities-v1GET /machine-identities/v1List machine identities
list-machine-identities-v2GET /machine-identities/v2List machine identities
list-machine-identity-user-entitlements-v1GET /machine-identity-user-entitlements/v1List machine identity's user entitlements
list-ownership-correlation-configs-v1GET /sources/v1/{sourceId}/resources/{resourceId}/correlation-configsList ownership correlation configs
patch-ownership-correlation-config-v1PATCH /sources/v1/{sourceId}/resources/{resourceId}/correlation-configs/{configId}Patch ownership correlation config
start-machine-identity-aggregation-v1POST /sources/v1/{sourceId}/aggregate-agentsStart machine identity aggregation
update-machine-identity-v1PATCH /machine-identities/v1/{id}Update machine identity details
update-machine-identity-v2PATCH /machine-identities/v2/{id}Partial update of machine identity

create-machine-identity-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.

setting x-sailpoint-experimental header

on the configuration object you can set the x-sailpoint-experimental header to `true' to enable all experimantl endpoints within the SDK. Example:

  configuration = Configuration()
configuration.experimental = True

Create machine identity Use this API to create a machine identity. The maximum supported length for the description field is 2000 characters.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
Bodymachine_identity_requestMachineIdentityRequestTrue
x_sail_point_experimentalstr(optional) (default to 'true')Use this header to enable this experimental API.

Return type

MachineIdentityResponse

Responses

CodeDescriptionData TypeResponse headers
200Machine Identity created.MachineIdentityResponse-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.machine_identities.models.machine_identity_request import MachineIdentityRequest
from sailpoint.machine_identities.models.machine_identity_response import MachineIdentityResponse
from sailpoint.configuration import Configuration
configuration = Configuration()

configuration.experimental = True

with ApiClient(configuration) as api_client:
machine_identity_request = '''{
"sourceId" : "6d28b7c1-620c-49c6-b6d5-cbf81eb4b5fa",
"subtype" : "Application",
"created" : "2015-05-28T14:07:17Z",
"userEntitlements" : [ {
"sourceId" : "5898b7c1-620c-49c6-cccc-cbf81eb4bddd",
"entitlementId" : "6d28b7c1-620c-49c6-b6d5-cbf81eb4b5fa"
}, {
"sourceId" : "5898b7c1-620c-49c6-cccc-cbf81eb4bddd",
"entitlementId" : "6d28b7c1-620c-49c6-b6d5-cbf81eb4b5fa"
} ],
"name" : "aName",
"modified" : "2015-05-28T14:07:17Z",
"description" : "",
"attributes" : "{\"Region\":\"EU\"}",
"owners" : {
"primaryIdentity" : "{}",
"secondaryIdentities" : [ {
"name" : "William Wilson",
"id" : "2c91808568c529c60168cca6f90c1313",
"type" : "IDENTITY"
}, {
"name" : "William Wilson",
"id" : "2c91808568c529c60168cca6f90c1313",
"type" : "IDENTITY"
} ]
},
"id" : "id12345",
"uuid" : "f5dd23fe-3414-42b7-bb1c-869400ad7a10",
"nativeIdentity" : "abc:123:dddd"
}''' # MachineIdentityRequest |
x_sail_point_experimental = 'true' # str | Use this header to enable this experimental API. (optional) (default to 'true') # str | Use this header to enable this experimental API. (optional) (default to 'true')

try:
# Create machine identity
new_machine_identity_request = MachineIdentityRequest.from_json(machine_identity_request)
results = MachineIdentitiesApi(api_client).create_machine_identity_v1(machine_identity_request=new_machine_identity_request)
# Below is a request that includes all optional parameters
# results = MachineIdentitiesApi(api_client).create_machine_identity_v1(new_machine_identity_request, x_sail_point_experimental)
print("The response of MachineIdentitiesApi->create_machine_identity_v1:\n")
print(results.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling MachineIdentitiesApi->create_machine_identity_v1: %s\n" % e)

[Back to top]

create-machine-identity-v2

Create machine identity Use this API to create a machine identity. Additional owners may be either up to ten human (IDENTITY) references or exactly one GOVERNANCE_GROUP reference - not both. The maximum supported length for the description field is 2000 characters.

When Business Applications is enabled for the tenant, callers may optionally include a single businessApplicationRefs entry (type=BUSINESS_APPLICATION, id=BA UUID). The assignment is stored as a MANUAL correlation. correlationType may be omitted or MANUAL; AUTOMATIC is rejected (400). Unknown BA id returns 404. More than one ref returns 400. When Business Applications is not enabled, supplying businessApplicationRefs returns 400. sanctionedStatus and effectiveSanctionedStatus are read-only and ignored on input.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
Bodymachineidentityv2Machineidentityv2True

Return type

Machineidentityv2

Responses

CodeDescriptionData TypeResponse headers
201Machine identity created (same schema family as v2 GET/PATCH).Machineidentityv2-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.machine_identities.models.machineidentityv2 import Machineidentityv2
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:
machineidentityv2 = '''{
"sourceId" : "6d28b7c1-620c-49c6-b6d5-cbf81eb4b5fa",
"resource" : {
"features" : [ "PROVISIONING", "AUTHENTICATION" ],
"name" : "nightly-batch-role",
"id" : "8886e5e3-63d0-462f-a195-d98da885b8dc",
"type" : "aws:iam-role"
},
"created" : "2015-05-28T14:07:17Z",
"connectorAttributes" : {
"objectguid" : "abc-123"
},
"description" : "Service account for nightly batch jobs",
"owners" : {
"secondary" : [ {
"id" : "2c9180858082150f0180893dbaf44202",
"name" : "Jane Doe",
"type" : "IDENTITY"
} ],
"primary" : {
"name" : "William Wilson",
"id" : "2c91808568c529c60168cca6f90c1313",
"type" : "IDENTITY"
}
},
"source" : {
"name" : "William Wilson",
"id" : "2c91808568c529c60168cca6f90c1313",
"type" : "IDENTITY"
},
"uuid" : "f5dd23fe-3414-42b7-bb1c-869400ad7a10",
"nativeIdentity" : "abc:123:dddd",
"effectiveSanctionedStatus" : "SANCTIONED",
"environment" : "PRODUCTION",
"subtype" : "AI_AGENT",
"businessApplicationRefs" : [ {
"name" : "Cursor",
"correlationType" : "MANUAL",
"id" : "2ee5e239-e68c-4d69-93fb-6c7ce4576190",
"type" : "BUSINESS_APPLICATION",
"sanctionedStatus" : "SANCTIONED"
} ],
"userEntitlements" : [ {
"sourceId" : "5898b7c1-620c-49c6-cccc-cbf81eb4bddd",
"displayName" : "Entitlement Name",
"entitlementId" : "6d28b7c1-620c-49c6-b6d5-cbf81eb4b5fa",
"source" : {
"name" : "William Wilson",
"id" : "2c91808568c529c60168cca6f90c1313",
"type" : "IDENTITY"
}
}, {
"sourceId" : "5898b7c1-620c-49c6-cccc-cbf81eb4bddd",
"displayName" : "Entitlement Name",
"entitlementId" : "6d28b7c1-620c-49c6-b6d5-cbf81eb4b5fa",
"source" : {
"name" : "William Wilson",
"id" : "2c91808568c529c60168cca6f90c1313",
"type" : "IDENTITY"
}
} ],
"name" : "aName",
"modified" : "2015-05-28T14:07:17Z",
"datasetId" : "8886e5e3-63d0-462f-a195-d98da885b8dc",
"attributes" : {
"privilegeLevel" : "HIGH",
"region" : "APAC"
},
"risk" : {
"severity" : "HIGH",
"score" : 72.5
},
"id" : "id12345",
"manuallyEdited" : true,
"manuallyCreated" : true,
"existsOnSource" : "TRUE",
"status" : "ACTIVE"
}''' # Machineidentityv2 |

try:
# Create machine identity
new_machineidentityv2 = Machineidentityv2.from_json(machineidentityv2)
results = MachineIdentitiesApi(api_client).create_machine_identity_v2(machineidentityv2=new_machineidentityv2)
# Below is a request that includes all optional parameters
# results = MachineIdentitiesApi(api_client).create_machine_identity_v2(new_machineidentityv2)
print("The response of MachineIdentitiesApi->create_machine_identity_v2:\n")
print(results.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling MachineIdentitiesApi->create_machine_identity_v2: %s\n" % e)

[Back to top]

delete-machine-identity-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.

setting x-sailpoint-experimental header

on the configuration object you can set the x-sailpoint-experimental header to `true' to enable all experimantl endpoints within the SDK. Example:

  configuration = Configuration()
configuration.experimental = True

Delete machine identity The API returns successful response if the requested machine identity was deleted.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
PathidstrTrueMachine Identity ID
x_sail_point_experimentalstr(optional) (default to 'true')Use this header to enable this experimental API.

Return type

(empty response body)

Responses

CodeDescriptionData TypeResponse headers
204No content - indicates the request was successful but there is no content to be returned in the response.-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.configuration import Configuration
configuration = Configuration()

configuration.experimental = True

with ApiClient(configuration) as api_client:
id = 'ef38f94347e94562b5bb8424a56397d8' # str | Machine Identity ID # str | Machine Identity ID
x_sail_point_experimental = 'true' # str | Use this header to enable this experimental API. (optional) (default to 'true') # str | Use this header to enable this experimental API. (optional) (default to 'true')

try:
# Delete machine identity

MachineIdentitiesApi(api_client).delete_machine_identity_v1(id=id)
# Below is a request that includes all optional parameters
# MachineIdentitiesApi(api_client).delete_machine_identity_v1(id, x_sail_point_experimental)
except Exception as e:
print("Exception when calling MachineIdentitiesApi->delete_machine_identity_v1: %s\n" % e)

[Back to top]

delete-machine-identity-v2

Delete machine identity The API returns a successful response if the requested machine identity was deleted.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
PathidstrTrueMachine Identity ID.

Return type

(empty response body)

Responses

CodeDescriptionData TypeResponse headers
204No content - indicates the request was successful but there is no content to be returned in the response.-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:
id = 'ef38f94347e94562b5bb8424a56397d8' # str | Machine Identity ID. # str | Machine Identity ID.

try:
# Delete machine identity

MachineIdentitiesApi(api_client).delete_machine_identity_v2(id=id)
# Below is a request that includes all optional parameters
# MachineIdentitiesApi(api_client).delete_machine_identity_v2(id)
except Exception as e:
print("Exception when calling MachineIdentitiesApi->delete_machine_identity_v2: %s\n" % e)

[Back to top]

delete-ownership-correlation-config-v1

Delete ownership correlation config Deletes the ownership correlation config with the specified ID for the given source resource.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
Pathsource_idstrTrueThe Source ID.
Pathresource_idstrTrueThe source resource ID (for example, account or aws:iam-role).
Pathconfig_idstrTrueThe correlation config ID.

Return type

(empty response body)

Responses

CodeDescriptionData TypeResponse headers
204No content - indicates the request was successful but there is no content to be returned in the response.-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:
source_id = '2c9180835d191a86015d28455b4a2329' # str | The Source ID. # str | The Source ID.
resource_id = 'aws:iam-role' # str | The source resource ID (for example, account or aws:iam-role). # str | The source resource ID (for example, account or aws:iam-role).
config_id = 'f5dd23fe-3414-42b7-bb1c-869400ad7a10' # str | The correlation config ID. # str | The correlation config ID.

try:
# Delete ownership correlation config

MachineIdentitiesApi(api_client).delete_ownership_correlation_config_v1(source_id=source_id, resource_id=resource_id, config_id=config_id)
# Below is a request that includes all optional parameters
# MachineIdentitiesApi(api_client).delete_ownership_correlation_config_v1(source_id, resource_id, config_id)
except Exception as e:
print("Exception when calling MachineIdentitiesApi->delete_ownership_correlation_config_v1: %s\n" % e)

[Back to top]

get-machine-identity-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.

setting x-sailpoint-experimental header

on the configuration object you can set the x-sailpoint-experimental header to `true' to enable all experimantl endpoints within the SDK. Example:

  configuration = Configuration()
configuration.experimental = True

Get machine identity details This API returns a single machine identity using the Machine Identity ID.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
PathidstrTrueMachine Identity ID
x_sail_point_experimentalstr(optional) (default to 'true')Use this header to enable this experimental API.

Return type

MachineIdentityResponse

Responses

CodeDescriptionData TypeResponse headers
200A machine identity objectMachineIdentityResponse-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.machine_identities.models.machine_identity_response import MachineIdentityResponse
from sailpoint.configuration import Configuration
configuration = Configuration()

configuration.experimental = True

with ApiClient(configuration) as api_client:
id = 'ef38f94347e94562b5bb8424a56397d8' # str | Machine Identity ID # str | Machine Identity ID
x_sail_point_experimental = 'true' # str | Use this header to enable this experimental API. (optional) (default to 'true') # str | Use this header to enable this experimental API. (optional) (default to 'true')

try:
# Get machine identity details

results = MachineIdentitiesApi(api_client).get_machine_identity_v1(id=id)
# Below is a request that includes all optional parameters
# results = MachineIdentitiesApi(api_client).get_machine_identity_v1(id, x_sail_point_experimental)
print("The response of MachineIdentitiesApi->get_machine_identity_v1:\n")
print(results.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling MachineIdentitiesApi->get_machine_identity_v1: %s\n" % e)

[Back to top]

get-machine-identity-v2

Get machine identity details This API returns a single machine identity using the Machine Identity ID.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
PathidstrTrueMachine Identity ID.

Return type

Machineidentityv2

Responses

CodeDescriptionData TypeResponse headers
200A machine identity object.Machineidentityv2-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.machine_identities.models.machineidentityv2 import Machineidentityv2
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:
id = 'ef38f94347e94562b5bb8424a56397d8' # str | Machine Identity ID. # str | Machine Identity ID.

try:
# Get machine identity details

results = MachineIdentitiesApi(api_client).get_machine_identity_v2(id=id)
# Below is a request that includes all optional parameters
# results = MachineIdentitiesApi(api_client).get_machine_identity_v2(id)
print("The response of MachineIdentitiesApi->get_machine_identity_v2:\n")
print(results.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling MachineIdentitiesApi->get_machine_identity_v2: %s\n" % e)

[Back to top]

get-ownership-correlation-config-v1

Get ownership correlation config This end-point retrieves a single ownership correlation config by ID for the specified source resource.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
Pathsource_idstrTrueThe Source ID.
Pathresource_idstrTrueThe source resource ID (for example, account or aws:iam-role).
Pathconfig_idstrTrueThe correlation config ID.

Return type

CorrelationConfig

Responses

CodeDescriptionData TypeResponse headers
200The requested correlation config.CorrelationConfig-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.machine_identities.models.correlation_config import CorrelationConfig
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:
source_id = '2c9180835d191a86015d28455b4a2329' # str | The Source ID. # str | The Source ID.
resource_id = 'aws:iam-role' # str | The source resource ID (for example, account or aws:iam-role). # str | The source resource ID (for example, account or aws:iam-role).
config_id = 'f5dd23fe-3414-42b7-bb1c-869400ad7a10' # str | The correlation config ID. # str | The correlation config ID.

try:
# Get ownership correlation config

results = MachineIdentitiesApi(api_client).get_ownership_correlation_config_v1(source_id=source_id, resource_id=resource_id, config_id=config_id)
# Below is a request that includes all optional parameters
# results = MachineIdentitiesApi(api_client).get_ownership_correlation_config_v1(source_id, resource_id, config_id)
print("The response of MachineIdentitiesApi->get_ownership_correlation_config_v1:\n")
print(results.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling MachineIdentitiesApi->get_ownership_correlation_config_v1: %s\n" % e)

[Back to top]

list-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.

setting x-sailpoint-experimental header

on the configuration object you can set the x-sailpoint-experimental header to `true' to enable all experimantl endpoints within the SDK. Example:

  configuration = Configuration()
configuration.experimental = True

List machine identities This API returns a list of machine identities.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
Queryfiltersstr(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, sw displayName: eq, in, sw cisIdentityId: eq, in, sw nativeIdentity: eq, in, sw attributes: eq manuallyEdited: eq subtype: eq, in owners.primaryIdentity.id: eq, in, sw owners.primaryIdentity.name: eq, in, isnull, pr owners.secondaryIdentity.id: eq, in, sw owners.secondaryIdentity.name: eq, in, isnull, pr source.name: eq, in, sw source.id: eq, in entitlement.id: eq, in entitlement.name: eq, in, sw
Querysortersstr(optional)Sort results using the standard syntax described in V3 API Standard Collection Parameters Sorting is supported for the following fields: nativeIdentity, name, owners.primaryIdentity.name, source.name, created, modified
x_sail_point_experimentalstr(optional) (default to 'true')Use this header to enable this experimental API.
Querycountbool(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 V3 API Standard Collection Parameters for more information.
Querylimitint(optional) (default to 250)Max number of results to return. See V3 API Standard Collection Parameters for more information.
Queryoffsetint(optional) (default to 0)Offset into the full result set. Usually specified with limit to paginate through the results. See V3 API Standard Collection Parameters for more information.

Return type

List[MachineIdentityResponse]

Responses

CodeDescriptionData TypeResponse headers
200List of machine identities.List[MachineIdentityResponse]-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.machine_identities.models.machine_identity_response import MachineIdentityResponse
from sailpoint.configuration import Configuration
configuration = Configuration()

configuration.experimental = True

with ApiClient(configuration) as api_client:
filters = 'identityId eq \"2c9180858082150f0180893dbaf44201\"' # str | 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* **displayName**: *eq, in, sw* **cisIdentityId**: *eq, in, sw* **nativeIdentity**: *eq, in, sw* **attributes**: *eq* **manuallyEdited**: *eq* **subtype**: *eq, in* **owners.primaryIdentity.id**: *eq, in, sw* **owners.primaryIdentity.name**: *eq, in, isnull, pr* **owners.secondaryIdentity.id**: *eq, in, sw* **owners.secondaryIdentity.name**: *eq, in, isnull, pr* **source.name**: *eq, in, sw* **source.id**: *eq, in* **entitlement.id**: *eq, in* **entitlement.name**: *eq, in, sw* (optional) # str | 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* **displayName**: *eq, in, sw* **cisIdentityId**: *eq, in, sw* **nativeIdentity**: *eq, in, sw* **attributes**: *eq* **manuallyEdited**: *eq* **subtype**: *eq, in* **owners.primaryIdentity.id**: *eq, in, sw* **owners.primaryIdentity.name**: *eq, in, isnull, pr* **owners.secondaryIdentity.id**: *eq, in, sw* **owners.secondaryIdentity.name**: *eq, in, isnull, pr* **source.name**: *eq, in, sw* **source.id**: *eq, in* **entitlement.id**: *eq, in* **entitlement.name**: *eq, in, sw* (optional)
sorters = 'nativeIdentity' # str | 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: **nativeIdentity, name, owners.primaryIdentity.name, source.name, created, modified** (optional) # str | 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: **nativeIdentity, name, owners.primaryIdentity.name, source.name, created, modified** (optional)
x_sail_point_experimental = 'true' # str | Use this header to enable this experimental API. (optional) (default to 'true') # str | Use this header to enable this experimental API. (optional) (default to 'true')
count = False # bool | 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) # bool | 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)
limit = 250 # int | 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) # int | 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 # int | 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) # int | 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)

try:
# List machine identities

results = MachineIdentitiesApi(api_client).list_machine_identities_v1()
# Below is a request that includes all optional parameters
# results = MachineIdentitiesApi(api_client).list_machine_identities_v1(filters, sorters, x_sail_point_experimental, count, limit, offset)
print("The response of MachineIdentitiesApi->list_machine_identities_v1:\n")
for item in results:
print(item.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling MachineIdentitiesApi->list_machine_identities_v1: %s\n" % e)

[Back to top]

list-machine-identities-v2

List machine identities This API returns a list of machine identities.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
Queryfiltersstr(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, sw displayName: eq, in, sw nativeIdentity: eq, in, sw attributes: eq manuallyEdited: eq subtype: eq, in owners.primaryIdentity.id: eq, in, sw owners.primaryIdentity.name: eq, in, isnull, pr owners.secondaryIdentity.id: eq, in, sw owners.secondaryIdentity.name: eq, in, isnull, pr owners.secondaryGovernanceGroup.id: eq, in owners.secondaryGovernanceGroup.name: eq, in, isnull, pr source.id: eq, in source.name: eq, in, sw entitlement.id: eq, in entitlement.name: eq, in, sw risk.severity: eq, in businessApplicationRefs.id: eq effectiveSanctionedStatus: eq Business Application filters require Business Applications to be enabled for the tenant. Filter values are case-sensitive. When Business Applications is not enabled, these filters are not allowed and return 400.
Querysortersstr(optional)Sort results using the standard syntax described in V3 API Standard Collection Parameters Sorting is supported for the following fields: nativeIdentity, name, owners.primaryIdentity.name, source.name, created, modified
Querycountbool(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 V3 API Standard Collection Parameters for more information.
Querylimitint(optional) (default to 250)Max number of results to return. See V3 API Standard Collection Parameters for more information.
Queryoffsetint(optional) (default to 0)Offset into the full result set. Usually specified with limit to paginate through the results. See V3 API Standard Collection Parameters for more information.

Return type

List[Machineidentityv2]

Responses

CodeDescriptionData TypeResponse headers
200List of machine identities.List[Machineidentityv2]-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.machine_identities.models.machineidentityv2 import Machineidentityv2
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:
filters = 'identityId eq \"2c9180858082150f0180893dbaf44201\"' # str | 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* **displayName**: *eq, in, sw* **nativeIdentity**: *eq, in, sw* **attributes**: *eq* **manuallyEdited**: *eq* **subtype**: *eq, in* **owners.primaryIdentity.id**: *eq, in, sw* **owners.primaryIdentity.name**: *eq, in, isnull, pr* **owners.secondaryIdentity.id**: *eq, in, sw* **owners.secondaryIdentity.name**: *eq, in, isnull, pr* **owners.secondaryGovernanceGroup.id**: *eq, in* **owners.secondaryGovernanceGroup.name**: *eq, in, isnull, pr* **source.id**: *eq, in* **source.name**: *eq, in, sw* **entitlement.id**: *eq, in* **entitlement.name**: *eq, in, sw* **risk.severity**: *eq, in* **businessApplicationRefs.id**: *eq* **effectiveSanctionedStatus**: *eq* Business Application filters require Business Applications to be enabled for the tenant. Filter values are case-sensitive. When Business Applications is not enabled, these filters are not allowed and return `400`. (optional) # str | 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* **displayName**: *eq, in, sw* **nativeIdentity**: *eq, in, sw* **attributes**: *eq* **manuallyEdited**: *eq* **subtype**: *eq, in* **owners.primaryIdentity.id**: *eq, in, sw* **owners.primaryIdentity.name**: *eq, in, isnull, pr* **owners.secondaryIdentity.id**: *eq, in, sw* **owners.secondaryIdentity.name**: *eq, in, isnull, pr* **owners.secondaryGovernanceGroup.id**: *eq, in* **owners.secondaryGovernanceGroup.name**: *eq, in, isnull, pr* **source.id**: *eq, in* **source.name**: *eq, in, sw* **entitlement.id**: *eq, in* **entitlement.name**: *eq, in, sw* **risk.severity**: *eq, in* **businessApplicationRefs.id**: *eq* **effectiveSanctionedStatus**: *eq* Business Application filters require Business Applications to be enabled for the tenant. Filter values are case-sensitive. When Business Applications is not enabled, these filters are not allowed and return `400`. (optional)
sorters = 'nativeIdentity' # str | 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: **nativeIdentity, name, owners.primaryIdentity.name, source.name, created, modified** (optional) # str | 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: **nativeIdentity, name, owners.primaryIdentity.name, source.name, created, modified** (optional)
count = False # bool | 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) # bool | 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)
limit = 250 # int | 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) # int | 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 # int | 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) # int | 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)

try:
# List machine identities

results = MachineIdentitiesApi(api_client).list_machine_identities_v2()
# Below is a request that includes all optional parameters
# results = MachineIdentitiesApi(api_client).list_machine_identities_v2(filters, sorters, count, limit, offset)
print("The response of MachineIdentitiesApi->list_machine_identities_v2:\n")
for item in results:
print(item.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling MachineIdentitiesApi->list_machine_identities_v2: %s\n" % e)

[Back to top]

list-machine-identity-user-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.

setting x-sailpoint-experimental header

on the configuration object you can set the x-sailpoint-experimental header to `true' to enable all experimantl endpoints within the SDK. Example:

  configuration = Configuration()
configuration.experimental = True

List machine identity's user entitlements This API returns a list of user entitlements associated with machine identities.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
Queryfiltersstr(optional)Filter results using the standard syntax described in V3 API Standard Collection Parameters Filtering is supported for the following fields and operators: machineIdentityId: eq, in machineIdentityName: eq, in, sw entitlement.id: eq, in entitlement.name: eq, in, sw source.id: eq, in source.name: eq, in, sw
Querysortersstr(optional)Sort results using the standard syntax described in V3 API Standard Collection Parameters Sorting is supported for the following fields: machineIdentityName, entitlement.name, source.name
x_sail_point_experimentalstr(optional) (default to 'true')Use this header to enable this experimental API.
Querycountbool(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 V3 API Standard Collection Parameters for more information.
Querylimitint(optional) (default to 250)Max number of results to return. See V3 API Standard Collection Parameters for more information.
Queryoffsetint(optional) (default to 0)Offset into the full result set. Usually specified with limit to paginate through the results. See V3 API Standard Collection Parameters for more information.

Return type

List[MachineIdentityUserEntitlementResponse]

Responses

CodeDescriptionData TypeResponse headers
200List of machine identity user entitlements.List[MachineIdentityUserEntitlementResponse]-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.machine_identities.models.machine_identity_user_entitlement_response import MachineIdentityUserEntitlementResponse
from sailpoint.configuration import Configuration
configuration = Configuration()

configuration.experimental = True

with ApiClient(configuration) as api_client:
filters = 'machineIdentityId eq \"2c9180858082150f0180893dbaf44201\"' # str | 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: **machineIdentityId**: *eq, in* **machineIdentityName**: *eq, in, sw* **entitlement.id**: *eq, in* **entitlement.name**: *eq, in, sw* **source.id**: *eq, in* **source.name**: *eq, in, sw* (optional) # str | 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: **machineIdentityId**: *eq, in* **machineIdentityName**: *eq, in, sw* **entitlement.id**: *eq, in* **entitlement.name**: *eq, in, sw* **source.id**: *eq, in* **source.name**: *eq, in, sw* (optional)
sorters = 'machineIdentityName' # str | 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: **machineIdentityName, entitlement.name, source.name** (optional) # str | 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: **machineIdentityName, entitlement.name, source.name** (optional)
x_sail_point_experimental = 'true' # str | Use this header to enable this experimental API. (optional) (default to 'true') # str | Use this header to enable this experimental API. (optional) (default to 'true')
count = False # bool | 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) # bool | 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)
limit = 250 # int | 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) # int | 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 # int | 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) # int | 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)

try:
# List machine identity's user entitlements

results = MachineIdentitiesApi(api_client).list_machine_identity_user_entitlements_v1()
# Below is a request that includes all optional parameters
# results = MachineIdentitiesApi(api_client).list_machine_identity_user_entitlements_v1(filters, sorters, x_sail_point_experimental, count, limit, offset)
print("The response of MachineIdentitiesApi->list_machine_identity_user_entitlements_v1:\n")
for item in results:
print(item.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling MachineIdentitiesApi->list_machine_identity_user_entitlements_v1: %s\n" % e)

[Back to top]

list-ownership-correlation-configs-v1

List ownership correlation configs Returns the OWNER_PRIMARY and OWNER_SECONDARY correlation configs for the specified source resource, creating default rows if they are missing. Use the optional type query parameter to return a single matching config.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
Pathsource_idstrTrueThe Source ID.
Pathresource_idstrTrueThe source resource ID (for example, account or aws:iam-role).
Querytypestr(optional)When set, filters to the given config type.
Querycountbool(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 V3 API Standard Collection Parameters for more information.
Querylimitint(optional) (default to 250)Max number of results to return. See V3 API Standard Collection Parameters for more information.
Queryoffsetint(optional) (default to 0)Offset into the full result set. Usually specified with limit to paginate through the results. See V3 API Standard Collection Parameters for more information.

Return type

List[CorrelationConfig]

Responses

CodeDescriptionData TypeResponse headers
200List of correlation configs.List[CorrelationConfig]-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.machine_identities.models.correlation_config import CorrelationConfig
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:
source_id = '2c9180835d191a86015d28455b4a2329' # str | The Source ID. # str | The Source ID.
resource_id = 'aws:iam-role' # str | The source resource ID (for example, account or aws:iam-role). # str | The source resource ID (for example, account or aws:iam-role).
type = 'OWNER_PRIMARY' # str | When set, filters to the given config type. (optional) # str | When set, filters to the given config type. (optional)
count = False # bool | 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) # bool | 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)
limit = 250 # int | 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) # int | 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 # int | 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) # int | 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)

try:
# List ownership correlation configs

results = MachineIdentitiesApi(api_client).list_ownership_correlation_configs_v1(source_id=source_id, resource_id=resource_id)
# Below is a request that includes all optional parameters
# results = MachineIdentitiesApi(api_client).list_ownership_correlation_configs_v1(source_id, resource_id, type, count, limit, offset)
print("The response of MachineIdentitiesApi->list_ownership_correlation_configs_v1:\n")
for item in results:
print(item.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling MachineIdentitiesApi->list_ownership_correlation_configs_v1: %s\n" % e)

[Back to top]

patch-ownership-correlation-config-v1

Patch ownership correlation config Selectively updates an ownership correlation config using an RFC 6902 JSONPatch payload. Only replace on /attributes (full object) and replace on /rules (full array; merge by stable rule id, remove rules omitted from the array) are allowed.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
Pathsource_idstrTrueThe Source ID.
Pathresource_idstrTrueThe source resource ID (for example, account or aws:iam-role).
Pathconfig_idstrTrueThe correlation config ID.
Bodyjson_patch_operation[]JsonPatchOperationTrueThe JSONPatch payload used to update the correlation config.

Return type

CorrelationConfig

Responses

CodeDescriptionData TypeResponse headers
200The updated correlation config.CorrelationConfig-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.machine_identities.models.correlation_config import CorrelationConfig
from sailpoint.machine_identities.models.json_patch_operation import JsonPatchOperation
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:
source_id = '2c9180835d191a86015d28455b4a2329' # str | The Source ID. # str | The Source ID.
resource_id = 'aws:iam-role' # str | The source resource ID (for example, account or aws:iam-role). # str | The source resource ID (for example, account or aws:iam-role).
config_id = 'f5dd23fe-3414-42b7-bb1c-869400ad7a10' # str | The correlation config ID. # str | The correlation config ID.
json_patch_operation = '''[{"op":"replace","path":"/attributes","value":{"syncPrimaryToMachineAccounts":true}}]''' # List[JsonPatchOperation] | The JSONPatch payload used to update the correlation config.

try:
# Patch ownership correlation config
new_json_patch_operation = JsonPatchOperation.from_json(json_patch_operation)
results = MachineIdentitiesApi(api_client).patch_ownership_correlation_config_v1(source_id=source_id, resource_id=resource_id, config_id=config_id, json_patch_operation=new_json_patch_operation)
# Below is a request that includes all optional parameters
# results = MachineIdentitiesApi(api_client).patch_ownership_correlation_config_v1(source_id, resource_id, config_id, new_json_patch_operation)
print("The response of MachineIdentitiesApi->patch_ownership_correlation_config_v1:\n")
print(results.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling MachineIdentitiesApi->patch_ownership_correlation_config_v1: %s\n" % e)

[Back to top]

start-machine-identity-aggregation-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.

setting x-sailpoint-experimental header

on the configuration object you can set the x-sailpoint-experimental header to `true' to enable all experimantl endpoints within the SDK. Example:

  configuration = Configuration()
configuration.experimental = True

Start machine identity aggregation Starts a machine identity (AI Agents) aggregation on the specified source.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
Pathsource_idstrTrueSource ID.
Bodymachine_identity_aggregation_requestMachineIdentityAggregationRequestTrue
x_sail_point_experimentalstr(optional) (default to 'true')Use this header to enable this experimental API.

Return type

MachineIdentityAggregationResponse

Responses

CodeDescriptionData TypeResponse headers
200Machine Identity Aggregation was started successfully.MachineIdentityAggregationResponse-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.machine_identities.models.machine_identity_aggregation_request import MachineIdentityAggregationRequest
from sailpoint.machine_identities.models.machine_identity_aggregation_response import MachineIdentityAggregationResponse
from sailpoint.configuration import Configuration
configuration = Configuration()

configuration.experimental = True

with ApiClient(configuration) as api_client:
source_id = 'ef38f94347e94562b5bb8424a56397d8' # str | Source ID. # str | Source ID.
machine_identity_aggregation_request = '''{
"datasetIds" : [ "source:datasetId12345", "source:datasetId12345" ],
"disableOptimization" : false
}''' # MachineIdentityAggregationRequest |
x_sail_point_experimental = 'true' # str | Use this header to enable this experimental API. (optional) (default to 'true') # str | Use this header to enable this experimental API. (optional) (default to 'true')

try:
# Start machine identity aggregation
new_machine_identity_aggregation_request = MachineIdentityAggregationRequest.from_json(machine_identity_aggregation_request)
results = MachineIdentitiesApi(api_client).start_machine_identity_aggregation_v1(source_id=source_id, machine_identity_aggregation_request=new_machine_identity_aggregation_request)
# Below is a request that includes all optional parameters
# results = MachineIdentitiesApi(api_client).start_machine_identity_aggregation_v1(source_id, new_machine_identity_aggregation_request, x_sail_point_experimental)
print("The response of MachineIdentitiesApi->start_machine_identity_aggregation_v1:\n")
print(results.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling MachineIdentitiesApi->start_machine_identity_aggregation_v1: %s\n" % e)

[Back to top]

update-machine-identity-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.

setting x-sailpoint-experimental header

on the configuration object you can set the x-sailpoint-experimental header to `true' to enable all experimantl endpoints within the SDK. Example:

  configuration = Configuration()
configuration.experimental = True

Update machine identity details Use this API to update machine identity details.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
PathidstrTrueMachine Identity ID.
Bodyrequest_body[]objectTrueA JSON of updated values JSON Patch standard.
x_sail_point_experimentalstr(optional) (default to 'true')Use this header to enable this experimental API.

Return type

MachineIdentityResponse

Responses

CodeDescriptionData TypeResponse headers
200Updated Machine Identity object.MachineIdentityResponse-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.machine_identities.models.machine_identity_response import MachineIdentityResponse
from sailpoint.configuration import Configuration
configuration = Configuration()

configuration.experimental = True

with ApiClient(configuration) as api_client:
id = 'ef38f94347e94562b5bb8424a56397d8' # str | Machine Identity ID. # str | Machine Identity ID.
request_body = '''[{"op":"add","path":"/attributes/securityRisk","value":"medium"}]''' # List[object] | A JSON of updated values [JSON Patch](https://tools.ietf.org/html/rfc6902) standard.
x_sail_point_experimental = 'true' # str | Use this header to enable this experimental API. (optional) (default to 'true') # str | Use this header to enable this experimental API. (optional) (default to 'true')

try:
# Update machine identity details
new_request_body = RequestBody.from_json(request_body)
results = MachineIdentitiesApi(api_client).update_machine_identity_v1(id=id, request_body=new_request_body)
# Below is a request that includes all optional parameters
# results = MachineIdentitiesApi(api_client).update_machine_identity_v1(id, new_request_body, x_sail_point_experimental)
print("The response of MachineIdentitiesApi->update_machine_identity_v1:\n")
print(results.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling MachineIdentitiesApi->update_machine_identity_v1: %s\n" % e)

[Back to top]

update-machine-identity-v2

Partial update of machine identity Use this API to selectively update machine identity details using a JSONPatch payload.

Patchable fields include name, description, nativeIdentity, subtype, environment, attributes, owners, userEntitlements, manuallyEdited, and businessApplicationRefs (when Business Applications is enabled for the tenant).

When Business Applications is enabled for the tenant, /businessApplicationRefs may be replaced with at most one MANUAL Business Application reference, or cleared with an empty array. Patching /businessApplicationRefs when Business Applications is not enabled returns 400. Existing AUTOMATIC correlations cannot be overridden (400 / ILLEGAL_UPDATE_ATTEMPT). Unknown BA id returns 404.

API Spec

Parameters

Param TypeNameData TypeRequiredDescription
PathidstrTrueMachine Identity ID.
Bodyjson_patch_operation[]JsonPatchOperationTrueA JSON of updated values JSON Patch standard.

Return type

Machineidentityv2

Responses

CodeDescriptionData TypeResponse headers
200Updated machine identity object.Machineidentityv2-
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.ListMachineIdentitiesV1401Response-
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.ListMachineIdentitiesV1429Response-
500Internal Server Error - Returned if there is an unexpected error.ErrorResponseDto-

HTTP request headers

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

Example

from sailpoint.machine_identities.api.machine_identities_api import MachineIdentitiesApi
from sailpoint.machine_identities.api_client import ApiClient
from sailpoint.machine_identities.models.json_patch_operation import JsonPatchOperation
from sailpoint.machine_identities.models.machineidentityv2 import Machineidentityv2
from sailpoint.configuration import Configuration
configuration = Configuration()


with ApiClient(configuration) as api_client:
id = 'ef38f94347e94562b5bb8424a56397d8' # str | Machine Identity ID. # str | Machine Identity ID.
json_patch_operation = '''[{"op":"add","path":"/attributes/securityRisk","value":"medium"}]''' # List[JsonPatchOperation] | A JSON of updated values [JSON Patch](https://tools.ietf.org/html/rfc6902) standard.

try:
# Partial update of machine identity
new_json_patch_operation = JsonPatchOperation.from_json(json_patch_operation)
results = MachineIdentitiesApi(api_client).update_machine_identity_v2(id=id, json_patch_operation=new_json_patch_operation)
# Below is a request that includes all optional parameters
# results = MachineIdentitiesApi(api_client).update_machine_identity_v2(id, new_json_patch_operation)
print("The response of MachineIdentitiesApi->update_machine_identity_v2:\n")
print(results.model_dump_json(by_alias=True, indent=4))
except Exception as e:
print("Exception when calling MachineIdentitiesApi->update_machine_identity_v2: %s\n" % e)

[Back to top]