SourcesApi
Use this API to implement and customize source functionality. With source functionality in place, organizations can use Identity Security Cloud to connect their various sources and user data sets and manage access across all those different sources in a secure, scalable way.
Sources refer to the Identity Security Cloud representations for external applications, databases, and directory management systems that maintain their own sets of users, like Dropbox, GitHub, and Workday, for example. Organizations may use hundreds, if not thousands, of different source systems, and any one employee within an organization likely has a different user record on each source, often with different permissions on many of those records. Connecting these sources to Identity Security Cloud makes it possible to manage user access across them all. Then, if a new hire starts at an organization, Identity Security Cloud can grant the new hire access to all the sources they need. If an employee moves to a new department and needs access to new sources but no longer needs access to others, Identity Security Cloud can grant the necessary access and revoke the unnecessary access for all the employee's various sources. If an employee leaves the company, Identity Security Cloud can revoke access to all the employee's various source accounts immediately. These are just a few examples of the many ways that source functionality makes identity governance easier, more efficient, and more secure.
In Identity Security Cloud, administrators can create configure, manage, and edit sources, and they can designate other users as source admins to be able to do so. They can also designate users as source sub-admins, who can perform the same source actions but only on sources associated with their governance groups. Admins go to Connections > Sources to see a list of the existing source representations in their organizations. They can create new sources or select existing ones.
To create a new source, the following must be specified: Source Name, Description, Source Owner, and Connection Type. Refer to Configuring a Source for more information about the source configuration process.
Identity Security Cloud connects with its sources either by a direct communication with the source server (connection information specific to the source must be provided) or a flat file feed, a CSV file containing all the relevant information about the accounts to be loaded in. Different sources use different connectors to share data with Identity Security Cloud, and each connector's setup process is specific to that connector. SailPoint has built a number of connectors to come out of the box and connect to the most common sources, and SailPoint actively maintains these connectors. Refer to Identity Security Cloud Connectors for more information about these SailPoint supported connectors. Refer to the following links for more information about two useful connectors:
-
JDBC Connector: This customizable connector an directly connect to databases that support JDBC (Java Database Connectivity).
-
Web Services Connector: This connector can directly connect to databases that support Web Services.
Refer to SaaS Connectivity for more information about SailPoint's new connectivity framework that makes it easy to build and manage custom connectors to SaaS sources.
When admins select existing sources, they can view the following information about the source:
-
Associated connections (any associated identity profiles, apps, or references to the source in a transform).
-
Associated user accounts. These accounts are linked to their identities - this provides a more complete picture of each user's access across sources.
-
Associated entitlements (sets of access rights on sources).
-
Associated access profiles (groupings of entitlements).
The user account data and the entitlements update with each data aggregation from the source. Organizations generally run scheduled, automated data aggregations to ensure that their data is always in sync between their sources and their Identity Security Cloud tenants so an access change on a source is detected quickly in Identity Security Cloud. Admins can view a history of these aggregations, and they can also run manual imports. Refer to Loading Account Data for more information about manual and scheduled aggregations.
Admins can also make changes to determine which user account data Identity Security Cloud collects from the source and how it correlates that account data with identity data. To define which account attributes the source shares with Identity Security Cloud, admins can edit the account schema on the source. Refer to Managing Source Account Schemas for more information about source account schemas and how to edit them. To define the mapping between the source account attributes and their correlating identity attributes, admins can edit the correlation configuration on the source. Refer to Assigning Source Accounts to Identities for more information about this correlation process between source accounts and identities.
Admins can also delete sources, but they must first ensure that the sources no longer have any active connections: the source must not be associated with any identity profile or any app, and it must not be referenced by any transform. Refer to Deleting Sources for more information about deleting sources.
Well organized, mapped out connections between sources and Identity Security Cloud are essential to achieving comprehensive identity access governance across all the source systems organizations need. Refer to Managing Sources for more information about all the different things admins can do with sources once they are connected.
All URIs are relative to https://sailpoint.api.identitynow.com
| Method | HTTP request | Description |
|---|---|---|
| create-provisioning-policy-v1 | POST /sources/v1/{sourceId}/provisioning-policies | Create provisioning policy |
| create-provisioning-policy-v2 | POST /sources/v2/{sourceId}/provisioning-policies | Create provisioning policy |
| create-source-schedule-v1 | POST /sources/v1/{sourceId}/schedules | Create schedule on source |
| create-source-schema-v1 | POST /sources/v1/{sourceId}/schemas | Create schema on source |
| create-source-v1 | POST /sources/v1 | Creates a source in identitynow. |
| delete-accounts-async-v1 | POST /sources/v1/{id}/remove-accounts | Remove all accounts in source |
| delete-native-change-detection-config-v1 | DELETE /sources/v1/{sourceId}/native-change-detection-config | Delete native change detection configuration |
| delete-provisioning-policy-v1 | DELETE /sources/v1/{sourceId}/provisioning-policies/{usageType} | Delete provisioning policy by usagetype |
| delete-provisioning-policy-v2 | DELETE /sources/v2/{sourceId}/provisioning-policies/{id} | Delete provisioning policy by ID |
| delete-source-schedule-v1 | DELETE /sources/v1/{sourceId}/schedules/{scheduleType} | Delete source schedule by type. |
| delete-source-schema-v1 | DELETE /sources/v1/{sourceId}/schemas/{schemaId} | Delete source schema by id |
| delete-source-v1 | DELETE /sources/v1/{id} | Delete source by id |
| get-account-delete-approval-config-v1 | GET /sources/v1/{sourceId}/approval-config/account-delete | Human Account Deletion Approval Config |
| get-accounts-schema-v1 | GET /sources/v1/{id}/schemas/accounts | Downloads source accounts schema template |
| get-correlation-config-v1 | GET /sources/v1/{id}/correlation-config | Get source correlation configuration |
| get-entitlements-schema-v1 | GET /sources/v1/{id}/schemas/entitlements | Downloads source entitlements schema template |
| get-machine-account-deletion-approval-config-by-source-v1 | GET /sources/v1/{sourceId}/approval-config/machine-account-delete | Machine Account Deletion Approval Config |
| get-native-change-detection-config-v1 | GET /sources/v1/{sourceId}/native-change-detection-config | Native change detection configuration |
| get-provisioning-policy-v1 | GET /sources/v1/{sourceId}/provisioning-policies/{usageType} | Get provisioning policy by usagetype |
| get-provisioning-policy-v2 | GET /sources/v2/{sourceId}/provisioning-policies/{id} | Get provisioning policy by ID |
| get-source-attr-sync-config-v1 | GET /sources/v1/{id}/attribute-sync-config | Attribute sync config |
| get-source-config-v1 | GET /sources/v1/{id}/connectors/source-config | Gets source config with language-translations |
| get-source-connections-v1 | GET /sources/v1/{sourceId}/connections | Get source connections by id |
| get-source-entitlement-request-config-v1 | GET /sources/v1/{id}/entitlement-request-config | Get source entitlement request configuration |
| get-source-health-v1 | GET /sources/v1/{sourceId}/source-health | Fetches source health by id |
| get-source-schedule-v1 | GET /sources/v1/{sourceId}/schedules/{scheduleType} | Get source schedule by type |
| get-source-schedules-v1 | GET /sources/v1/{sourceId}/schedules | List schedules on source |
| get-source-schema-v1 | GET /sources/v1/{sourceId}/schemas/{schemaId} | Get source schema by id |
| get-source-schemas-v1 | GET /sources/v1/{sourceId}/schemas | List schemas on source |
| get-source-v1 | GET /sources/v1/{id} | Get source by id |
| import-accounts-schema-v1 | POST /sources/v1/{id}/schemas/accounts | Uploads source accounts schema template |
| import-accounts-v1 | POST /sources/v1/{id}/load-accounts | Account aggregation |
| import-connector-file-v1 | POST /sources/v1/{sourceId}/upload-connector-file | Upload connector file to source |
| import-entitlements-schema-v1 | POST /sources/v1/{id}/schemas/entitlements | Uploads source entitlements schema template |
| import-entitlements-v1 | POST /sources/v1/{sourceId}/load-entitlements | Entitlement aggregation |
| import-uncorrelated-accounts-v1 | POST /sources/v1/{id}/load-uncorrelated-accounts | Process uncorrelated accounts |
| list-password-policy-holders-on-source-v1 | GET /sources/v1/{sourceId}/password-policies | Get Password Policy for source |
| list-provisioning-policies-v1 | GET /sources/v1/{sourceId}/provisioning-policies | Lists provisioningpolicies |
| list-provisioning-policies-v2 | GET /sources/v2/{sourceId}/provisioning-policies | Lists Provisioning Policies |
| list-sources-v1 | GET /sources/v1 | Lists all sources in identitynow. |
| ping-cluster-v1 | POST /sources/v1/{sourceId}/connector/ping-cluster | Ping cluster for source connector |
| put-correlation-config-v1 | PUT /sources/v1/{id}/correlation-config | Update source correlation configuration |
| put-native-change-detection-config-v1 | PUT /sources/v1/{sourceId}/native-change-detection-config | Update native change detection configuration |
| put-provisioning-policy-v1 | PUT /sources/v1/{sourceId}/provisioning-policies/{usageType} | Update provisioning policy by usagetype |
| put-provisioning-policy-v2 | PUT /sources/v2/{sourceId}/provisioning-policies/{id} | Update provisioning policy by ID |
| put-source-attr-sync-config-v1 | PUT /sources/v1/{id}/attribute-sync-config | Update attribute sync config |
| put-source-schema-v1 | PUT /sources/v1/{sourceId}/schemas/{schemaId} | Update source schema (full) |
| put-source-v1 | PUT /sources/v1/{id} | Update source (full) |
| search-resource-objects-v1 | POST /sources/v1/{sourceId}/connector/peek-resource-objects | Peek source connector's resource objects |
| sync-attributes-for-source-v1 | POST /sources/v1/{id}/synchronize-attributes | Synchronize single source attributes. |
| test-source-configuration-v1 | POST /sources/v1/{sourceId}/connector/test-configuration | Test configuration for source connector |
| test-source-connection-v1 | POST /sources/v1/{sourceId}/connector/check-connection | Check connection for source connector. |
| update-account-deletion-approval-config-v1 | PATCH /sources/v1/{sourceId}/approval-config/account-delete | Human Account Deletion Approval Config |
| update-machine-account-deletion-approval-config-v1 | PATCH /sources/v1/{sourceId}/approval-config/machine-account-delete | Machine Account Deletion Approval Config |
| update-password-policy-holders-v1 | PATCH /sources/v1/{sourceId}/password-policies | Update password policy |
| update-provisioning-policies-in-bulk-v1 | POST /sources/v1/{sourceId}/provisioning-policies/bulk-update | Bulk update provisioning policies |
| update-provisioning-policy-v1 | PATCH /sources/v1/{sourceId}/provisioning-policies/{usageType} | Partial update of provisioning policy |
| update-provisioning-policy-v2 | PATCH /sources/v2/{sourceId}/provisioning-policies/{id} | Partial update of provisioning policy |
| update-source-entitlement-request-config-v1 | PUT /sources/v1/{id}/entitlement-request-config | Update source entitlement request configuration |
| update-source-schedule-v1 | PATCH /sources/v1/{sourceId}/schedules/{scheduleType} | Update source schedule (partial) |
| update-source-schema-v1 | PATCH /sources/v1/{sourceId}/schemas/{schemaId} | Update source schema (partial) |
| update-source-v1 | PATCH /sources/v1/{id} | Update source (partial) |
create-provisioning-policy-v1
Create provisioning policy This API generates a create policy/template based on field value transforms. This API is intended for use when setting up JDBC Provisioning type sources, but it will also work on other source types. Transforms can be used in the provisioning policy to create a new attribute that you only need during provisioning. Refer to Transforms in Provisioning Policies for more information.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id | [default to undefined] |
| provisioningPolicyDto | ProvisioningPolicyDto |
Return type
ProvisioningPolicyDto
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { ProvisioningPolicyDto } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id
const provisioningPolicyDto: ProvisioningPolicyDto = {
"name" : "example provisioning policy for inactive identities",
"description" : "this provisioning policy creates access based on an identity going inactive",
"fields" : [ {
"isRequired" : false,
"transform" : {
"type" : "rule",
"attributes" : {
"name" : "Create Unique LDAP Attribute"
}
},
"isMultiValued" : false,
"name" : "userName",
"attributes" : {
"template" : "${firstname}.${lastname}${uniqueCounter}",
"cloudMaxUniqueChecks" : "50",
"cloudMaxSize" : "20",
"cloudRequired" : "true"
},
"type" : "string"
}, {
"isRequired" : false,
"transform" : {
"type" : "rule",
"attributes" : {
"name" : "Create Unique LDAP Attribute"
}
},
"isMultiValued" : false,
"name" : "userName",
"attributes" : {
"template" : "${firstname}.${lastname}${uniqueCounter}",
"cloudMaxUniqueChecks" : "50",
"cloudMaxSize" : "20",
"cloudRequired" : "true"
},
"type" : "string"
} ],
"usageType" : "CREATE"
}; //
const result = await apiInstance.createProvisioningPolicyV1({ sourceId: sourceId, provisioningPolicyDto: provisioningPolicyDto });
console.log(result);
create-provisioning-policy-v2
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 provisioning policy This API generates a create policy/template based on field value transforms. This API is intended for use when setting up JDBC Provisioning type sources, but it will also work on other source types. Transforms can be used in the provisioning policy to create a new attribute that you only need during provisioning. The V2 API allows you to use a unique identifier (id) for each provisioning policy instead of usageType. This enables read, update, and delete operations on policies using their id. Note: The subtypeId field is required if usageType is CREATE_MACHINE_ACCOUNT. Refer to Transforms in Provisioning Policies for more information.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id | [default to undefined] |
| provisioningPolicyDtoV2 | ProvisioningPolicyDtoV2 | ||
| useDefaultFields | boolean | If passed as true, then it uses default fields from the connector template. | [optional] [default to false] |
| xSailPointExperimental | string | Use this header to enable this experimental API. | [optional] [default to 'true'] |
Return type
ProvisioningPolicyDtoV2
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { ProvisioningPolicyDtoV2 } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id
const provisioningPolicyDtoV2: ProvisioningPolicyDtoV2 = {
"name" : "example provisioning policy for inactive identities",
"description" : "this provisioning policy creates access based on an identity going inactive",
"id" : "d7ae9ea3-507f-4d00-9d4f-b4464b344b88",
"subtypeId" : "d7ae9ea3-507f-4d00-9d4f-b4464b344b88",
"fields" : [ {
"isRequired" : false,
"transform" : {
"type" : "rule",
"attributes" : {
"name" : "Create Unique LDAP Attribute"
}
},
"isMultiValued" : false,
"name" : "userName",
"attributes" : {
"template" : "firstname.lastname.uniqueCounter",
"cloudMaxUniqueChecks" : "50",
"cloudMaxSize" : "20",
"cloudRequired" : "true"
},
"type" : "string"
}, {
"isRequired" : false,
"transform" : {
"type" : "rule",
"attributes" : {
"name" : "Create Unique LDAP Attribute"
}
},
"isMultiValued" : false,
"name" : "userName",
"attributes" : {
"template" : "firstname.lastname.uniqueCounter",
"cloudMaxUniqueChecks" : "50",
"cloudMaxSize" : "20",
"cloudRequired" : "true"
},
"type" : "string"
} ],
"usageType" : "CREATE"
}; //
const useDefaultFields: boolean = false; // If passed as true, then it uses default fields from the connector template. (optional)
const xSailPointExperimental: string = true; // Use this header to enable this experimental API. (optional)
const result = await apiInstance.createProvisioningPolicyV2({ sourceId: sourceId, provisioningPolicyDtoV2: provisioningPolicyDtoV2 });
console.log(result);
create-source-schedule-v1
Create schedule on source Use this API to create a new schedule for a type on the specified source in Identity Security Cloud (ISC).
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | Source ID. | [default to undefined] |
| schedule3 | Schedule3 |
Return type
Schedule3
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { Schedule3 } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // Source ID.
const schedule3: Schedule3 = ; //
const result = await apiInstance.createSourceScheduleV1({ sourceId: sourceId, schedule3: schedule3 });
console.log(result);
create-source-schema-v1
Create schema on source Use this API to create a new schema on the specified source in Identity Security Cloud (ISC).
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | Source ID. | [default to undefined] |
| schema | Schema |
Return type
Schema
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { Schema } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // Source ID.
const schema: Schema = {
"features" : [ "PROVISIONING", "NO_PERMISSIONS_PROVISIONING", "GROUPS_HAVE_MEMBERS" ],
"nativeObjectType" : "User",
"configuration" : {
"groupMemberAttribute" : "member"
},
"created" : "2019-12-24T22:32:58.104Z",
"includePermissions" : false,
"name" : "account",
"hierarchyAttribute" : "memberOf",
"modified" : "2019-12-31T20:22:28.104Z",
"attributes" : [ {
"name" : "sAMAccountName",
"type" : "STRING",
"isMultiValued" : false,
"isEntitlement" : false,
"isGroup" : false
}, {
"name" : "memberOf",
"type" : "STRING",
"schema" : {
"type" : "CONNECTOR_SCHEMA",
"id" : "2c9180887671ff8c01767b4671fc7d60",
"name" : "group"
},
"description" : "Group membership",
"isMultiValued" : true,
"isEntitlement" : true,
"isGroup" : true
} ],
"id" : "2c9180835d191a86015d28455b4a2329",
"displayAttribute" : "distinguishedName",
"identityAttribute" : "sAMAccountName"
}; //
const result = await apiInstance.createSourceSchemaV1({ sourceId: sourceId, schema: schema });
console.log(result);
create-source-v1
Creates a source in identitynow. This creates a specific source with a full source JSON representation. Any passwords are submitted as plain-text and encrypted upon receipt in IdentityNow.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| source | Source | ||
| provisionAsCsv | boolean | If this parameter is `true`, it configures the source as a Delimited File (CSV) source. Setting this to `true` will automatically set the `type` of the source to `DelimitedFile`. You must use this query parameter to create a Delimited File source as you would in the UI. If you don't set this query parameter and you attempt to set the `type` attribute directly, the request won't correctly generate the source. | [optional] [default to undefined] |
Return type
Source
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { Source } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const source: Source = {
"cluster" : {
"name" : "Corporate Cluster",
"id" : "2c9180866166b5b0016167c32ef31a66",
"type" : "CLUSTER"
},
"deleteThreshold" : 10,
"connectorId" : "active-directory",
"description" : "This is the corporate directory.",
"type" : "OpenLDAP - Direct",
"connectorClass" : "sailpoint.connector.LDAPConnector",
"connectionType" : "file",
"features" : [ "PROVISIONING", "NO_PERMISSIONS_PROVISIONING", "GROUPS_HAVE_MEMBERS" ],
"passwordPolicies" : [ {
"type" : "PASSWORD_POLICY",
"id" : "2c9180855d191c59015d291ceb053980",
"name" : "Corporate Password Policy"
}, {
"type" : "PASSWORD_POLICY",
"id" : "2c9180855d191c59015d291ceb057777",
"name" : "Vendor Password Policy"
} ],
"modified" : "2024-01-23T18:08:50.897Z",
"id" : "2c91808568c529c60168cca6f90c1324",
"connectorImplementationId" : "delimited-file",
"managerCorrelationRule" : {
"name" : "Example Rule",
"id" : "2c918085708c274401708c2a8a760001",
"type" : "RULE"
},
"owner" : {
"name" : "MyName",
"id" : "2c91808568c529c60168cca6f90c1313",
"type" : "IDENTITY"
},
"managementWorkgroup" : {
"name" : "My Management Workgroup",
"id" : "2c91808568c529c60168cca6f90c2222",
"type" : "GOVERNANCE_GROUP"
},
"accountCorrelationRule" : {
"name" : "Example Rule",
"id" : "2c918085708c274401708c2a8a760001",
"type" : "RULE"
},
"authoritative" : false,
"connectorAttributes" : {
"healthCheckTimeout" : 30,
"authSearchAttributes" : [ "cn", "uid", "mail" ]
},
"created" : "2022-02-08T14:50:03.827Z",
"managerCorrelationMapping" : {
"accountAttributeName" : "manager",
"identityAttributeName" : "manager"
},
"credentialProviderEnabled" : false,
"accountCorrelationConfig" : {
"name" : "Directory [source-62867] Account Correlation",
"id" : "2c9180855d191c59015d28583727245a",
"type" : "ACCOUNT_CORRELATION_CONFIG"
},
"connector" : "active-directory",
"healthy" : true,
"schemas" : [ {
"type" : "CONNECTOR_SCHEMA",
"id" : "2c9180835d191a86015d28455b4b232a",
"name" : "account"
}, {
"type" : "CONNECTOR_SCHEMA",
"id" : "2c9180835d191a86015d28455b4b232b",
"name" : "group"
} ],
"name" : "My Source",
"connectorName" : "Active Directory",
"category" : "CredentialProvider",
"beforeProvisioningRule" : {
"name" : "Example Rule",
"id" : "2c918085708c274401708c2a8a760001",
"type" : "RULE"
},
"status" : "SOURCE_STATE_HEALTHY",
"since" : "2021-09-28T15:48:29.3801666300Z"
}; //
const provisionAsCsv: boolean = false; // If this parameter is `true`, it configures the source as a Delimited File (CSV) source. Setting this to `true` will automatically set the `type` of the source to `DelimitedFile`. You must use this query parameter to create a Delimited File source as you would in the UI. If you don\'t set this query parameter and you attempt to set the `type` attribute directly, the request won\'t correctly generate the source. (optional)
const result = await apiInstance.createSourceV1({ source: source });
console.log(result);
delete-accounts-async-v1
Remove all accounts in source Use this endpoint to remove all accounts from the system without provisioning changes to the source. Accounts that are removed could be re-created during the next aggregation.
This endpoint is good for:
- Removing accounts that no longer exist on the source.
- Removing accounts that won't be aggregated following updates to the source configuration.
- Forcing accounts to be re-created following the next aggregation to re-run account processing, support testing, etc.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | The source id | [default to undefined] |
Return type
TaskResultDto
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = ebbf35756e1140699ce52b233121384a; // The source id
const result = await apiInstance.deleteAccountsAsyncV1({ id: id });
console.log(result);
delete-native-change-detection-config-v1
Delete native change detection configuration Deletes the native change detection configuration for the source specified by the given ID.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The source id | [default to undefined] |
Return type
(empty response body)
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The source id
const result = await apiInstance.deleteNativeChangeDetectionConfigV1({ sourceId: sourceId });
console.log(result);
delete-provisioning-policy-v1
Delete provisioning policy by usagetype Deletes the provisioning policy with the specified usage on an application.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source ID. | [default to undefined] |
| usageType | UsageType | The type of provisioning policy usage. In IdentityNow, a source can support various provisioning operations. For example, when a joiner is added to a source, this may trigger both CREATE and UPDATE provisioning operations. Each usage type is considered a provisioning policy. A source can have any number of these provisioning policies defined. These are the common usage types: CREATE - This usage type relates to 'Create Account Profile', the provisioning template for the account to be created. For example, this would be used for a joiner on a source. UPDATE - This usage type relates to 'Update Account Profile', the provisioning template for the 'Update' connector operations. For example, this would be used for an attribute sync on a source. ENABLE - This usage type relates to 'Enable Account Profile', the provisioning template for the account to be enabled. For example, this could be used for a joiner on a source once the joiner's account is created. DISABLE - This usage type relates to 'Disable Account Profile', the provisioning template for the account to be disabled. For example, this could be used when a leaver is removed temporarily from a source. You can use these four usage types for all your provisioning policy needs. | [default to undefined] |
Return type
(empty response body)
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source ID.
const usageType: UsageType = CREATE; // The type of provisioning policy usage. In IdentityNow, a source can support various provisioning operations. For example, when a joiner is added to a source, this may trigger both CREATE and UPDATE provisioning operations. Each usage type is considered a provisioning policy. A source can have any number of these provisioning policies defined. These are the common usage types: CREATE - This usage type relates to \'Create Account Profile\', the provisioning template for the account to be created. For example, this would be used for a joiner on a source. UPDATE - This usage type relates to \'Update Account Profile\', the provisioning template for the \'Update\' connector operations. For example, this would be used for an attribute sync on a source. ENABLE - This usage type relates to \'Enable Account Profile\', the provisioning template for the account to be enabled. For example, this could be used for a joiner on a source once the joiner\'s account is created. DISABLE - This usage type relates to \'Disable Account Profile\', the provisioning template for the account to be disabled. For example, this could be used when a leaver is removed temporarily from a source. You can use these four usage types for all your provisioning policy needs.
const result = await apiInstance.deleteProvisioningPolicyV1({ sourceId: sourceId, usageType: usageType });
console.log(result);
delete-provisioning-policy-v2
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 provisioning policy by ID Deletes the provisioning policy with the specified ID on an application.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source ID. | [default to undefined] |
| id | string | The provisioning policy ID. | [default to undefined] |
| xSailPointExperimental | string | Use this header to enable this experimental API. | [optional] [default to 'true'] |
Return type
(empty response body)
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source ID.
const id: string = f5dd23fe-3414-42b7-bb1c-869400ad7a10; // The provisioning policy ID.
const xSailPointExperimental: string = true; // Use this header to enable this experimental API. (optional)
const result = await apiInstance.deleteProvisioningPolicyV2({ sourceId: sourceId, id: id });
console.log(result);
delete-source-schedule-v1
Delete source schedule by type.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id. | [default to undefined] |
| scheduleType | `'ACCOUNT_AGGREGATION' | 'GROUP_AGGREGATION'` | The Schedule type. |
Return type
(empty response body)
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id.
const scheduleType: string = ACCOUNT_AGGREGATION; // The Schedule type.
const result = await apiInstance.deleteSourceScheduleV1({ sourceId: sourceId, scheduleType: scheduleType });
console.log(result);
delete-source-schema-v1
Delete source schema by id
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id. | [default to undefined] |
| schemaId | string | The Schema id. | [default to undefined] |
Return type
(empty response body)
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id.
const schemaId: string = 2c9180835d191a86015d28455b4a2329; // The Schema id.
const result = await apiInstance.deleteSourceSchemaV1({ sourceId: sourceId, schemaId: schemaId });
console.log(result);
delete-source-v1
Delete source by id
Use this API to delete a specific source in Identity Security Cloud (ISC).
The API removes all the accounts on the source first, and then it deletes the source. You can retrieve the actual task execution status with this method: GET /task-status/{id}
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | Source ID. | [default to undefined] |
Return type
DeleteSourceV1202Response
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 2c9180835d191a86015d28455b4a2329; // Source ID.
const result = await apiInstance.deleteSourceV1({ id: id });
console.log(result);
get-account-delete-approval-config-v1
Human Account Deletion Approval Config The endpoint retrieves the approval configuration for deleting human accounts from a specified source. It returns details such as whether approval is required, who the approvers are, and any additional approval settings. This helps administrators understand and manage the approval workflow for human account deletions in their organization. The response is provided as an AccountDeleteConfigDto object.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id | [default to undefined] |
Return type
AccountDeleteConfigDto
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = ha38f94347e94562b5bb8424a56498d8; // The Source id
const result = await apiInstance.getAccountDeleteApprovalConfigV1({ sourceId: sourceId });
console.log(result);
get-accounts-schema-v1
Downloads source accounts schema template This API downloads the CSV schema that defines the account attributes on a source.
NOTE: This API is designated only for Delimited File sources.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | The Source id | [default to undefined] |
Return type
(empty response body)
HTTP request headers
- Content-Type: Not defined
- Accept: text/csv, application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 8c190e6787aa4ed9a90bd9d5344523fb; // The Source id
const result = await apiInstance.getAccountsSchemaV1({ id: id });
console.log(result);
get-correlation-config-v1
Get source correlation configuration This API returns the existing correlation configuration for a source specified by the given ID.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | The source id | [default to undefined] |
Return type
CorrelationConfig
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 2c9180835d191a86015d28455b4a2329; // The source id
const result = await apiInstance.getCorrelationConfigV1({ id: id });
console.log(result);
get-entitlements-schema-v1
Downloads source entitlements schema template This API downloads the CSV schema that defines the entitlement attributes on a source.
NOTE: This API is designated only for Delimited File sources.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | The Source id | [default to undefined] |
| schemaName | string | Name of entitlement schema | [optional] [default to undefined] |
Return type
(empty response body)
HTTP request headers
- Content-Type: Not defined
- Accept: text/csv, application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 8c190e6787aa4ed9a90bd9d5344523fb; // The Source id
const schemaName: string = ?schemaName=group; // Name of entitlement schema (optional)
const result = await apiInstance.getEntitlementsSchemaV1({ id: id });
console.log(result);
get-machine-account-deletion-approval-config-by-source-v1
Machine Account Deletion Approval Config Retrieves the machine account deletion approval configuration for a specific source. This endpoint returns details about the approval requirements, approvers, and comment settings that govern the deletion of machine accounts associated with the given source ID.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | source id. | [default to undefined] |
Return type
AccountDeleteConfigDto
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = gt38f94347e94562b5bb8424a56498d8; // source id.
const result = await apiInstance.getMachineAccountDeletionApprovalConfigBySourceV1({ sourceId: sourceId });
console.log(result);
get-native-change-detection-config-v1
Native change detection configuration This API returns the existing native change detection configuration for a source specified by the given ID.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The source id | [default to undefined] |
Return type
NativeChangeDetectionConfig
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The source id
const result = await apiInstance.getNativeChangeDetectionConfigV1({ sourceId: sourceId });
console.log(result);
get-provisioning-policy-v1
Get provisioning policy by usagetype This end-point retrieves the ProvisioningPolicy with the specified usage on the specified Source in IdentityNow.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source ID. | [default to undefined] |
| usageType | UsageType | The type of provisioning policy usage. In IdentityNow, a source can support various provisioning operations. For example, when a joiner is added to a source, this may trigger both CREATE and UPDATE provisioning operations. Each usage type is considered a provisioning policy. A source can have any number of these provisioning policies defined. These are the common usage types: CREATE - This usage type relates to 'Create Account Profile', the provisioning template for the account to be created. For example, this would be used for a joiner on a source. UPDATE - This usage type relates to 'Update Account Profile', the provisioning template for the 'Update' connector operations. For example, this would be used for an attribute sync on a source. ENABLE - This usage type relates to 'Enable Account Profile', the provisioning template for the account to be enabled. For example, this could be used for a joiner on a source once the joiner's account is created. DISABLE - This usage type relates to 'Disable Account Profile', the provisioning template for the account to be disabled. For example, this could be used when a leaver is removed temporarily from a source. You can use these four usage types for all your provisioning policy needs. | [default to undefined] |
Return type
ProvisioningPolicyDto
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source ID.
const usageType: UsageType = CREATE; // The type of provisioning policy usage. In IdentityNow, a source can support various provisioning operations. For example, when a joiner is added to a source, this may trigger both CREATE and UPDATE provisioning operations. Each usage type is considered a provisioning policy. A source can have any number of these provisioning policies defined. These are the common usage types: CREATE - This usage type relates to \'Create Account Profile\', the provisioning template for the account to be created. For example, this would be used for a joiner on a source. UPDATE - This usage type relates to \'Update Account Profile\', the provisioning template for the \'Update\' connector operations. For example, this would be used for an attribute sync on a source. ENABLE - This usage type relates to \'Enable Account Profile\', the provisioning template for the account to be enabled. For example, this could be used for a joiner on a source once the joiner\'s account is created. DISABLE - This usage type relates to \'Disable Account Profile\', the provisioning template for the account to be disabled. For example, this could be used when a leaver is removed temporarily from a source. You can use these four usage types for all your provisioning policy needs.
const result = await apiInstance.getProvisioningPolicyV1({ sourceId: sourceId, usageType: usageType });
console.log(result);
get-provisioning-policy-v2
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 provisioning policy by ID This end-point retrieves the ProvisioningPolicy with the specified ID on the specified Source in Identity Security Cloud.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source ID. | [default to undefined] |
| id | string | The provisioning policy ID. | [default to undefined] |
| xSailPointExperimental | string | Use this header to enable this experimental API. | [optional] [default to 'true'] |
Return type
ProvisioningPolicyDtoV2
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source ID.
const id: string = f5dd23fe-3414-42b7-bb1c-869400ad7a10; // The provisioning policy ID.
const xSailPointExperimental: string = true; // Use this header to enable this experimental API. (optional)
const result = await apiInstance.getProvisioningPolicyV2({ sourceId: sourceId, id: id });
console.log(result);
get-source-attr-sync-config-v1
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.
Attribute sync config This API returns the existing attribute synchronization configuration for a source specified by the given ID. The response contains all attributes, regardless of whether they enabled or not.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | The source id | [default to undefined] |
| xSailPointExperimental | string | Use this header to enable this experimental API. | [optional] [default to 'true'] |
Return type
AttrSyncSourceConfig
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 2c9180835d191a86015d28455b4a2329; // The source id
const xSailPointExperimental: string = true; // Use this header to enable this experimental API. (optional)
const result = await apiInstance.getSourceAttrSyncConfigV1({ id: id });
console.log(result);
get-source-config-v1
Gets source config with language-translations Looks up and returns the source config for the requested source id after populating the source config values and applying language translations.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | The Source id | [default to undefined] |
| locale | `'de' | 'false' | 'fi' |
Return type
ConnectorDetail
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = cef3ee201db947c5912551015ba0c679; // The Source id
const locale: string = en; // The locale to apply to the config. If no viable locale is given, it will default to \"en\" (optional)
const result = await apiInstance.getSourceConfigV1({ id: id });
console.log(result);
get-source-connections-v1
Get source connections by id Use this API to get all dependent Profiles, Attributes, Applications and Custom Transforms for a source by a specified ID in Identity Security Cloud (ISC).
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | Source ID. | [default to undefined] |
Return type
SourceConnectionsDto
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // Source ID.
const result = await apiInstance.getSourceConnectionsV1({ sourceId: sourceId });
console.log(result);
get-source-entitlement-request-config-v1
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 source entitlement request configuration This API gets the current entitlement request configuration for a source. This source-level configuration should apply for all the entitlements in the source.
Access request to any entitlements in the source should follow this configuration unless a separate entitlement-level configuration is defined.
- During access request, this source-level entitlement request configuration overrides the global organization-level configuration.
- However, the entitlement-level configuration (if defined) overrides this source-level configuration.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | The Source id | [default to undefined] |
| xSailPointExperimental | string | Use this header to enable this experimental API. | [optional] [default to 'true'] |
Return type
SourceEntitlementRequestConfig
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 8c190e6787aa4ed9a90bd9d5344523fb; // The Source id
const xSailPointExperimental: string = true; // Use this header to enable this experimental API. (optional)
const result = await apiInstance.getSourceEntitlementRequestConfigV1({ id: id });
console.log(result);
get-source-health-v1
Fetches source health by id This endpoint fetches source health by source's id
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id. | [default to undefined] |
Return type
SourceHealthDto
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id.
const result = await apiInstance.getSourceHealthV1({ sourceId: sourceId });
console.log(result);
get-source-schedule-v1
Get source schedule by type Get the source schedule by type in Identity Security Cloud (ISC).
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id. | [default to undefined] |
| scheduleType | `'ACCOUNT_AGGREGATION' | 'GROUP_AGGREGATION'` | The Schedule type. |
Return type
Schedule3
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id.
const scheduleType: string = ACCOUNT_AGGREGATION; // The Schedule type.
const result = await apiInstance.getSourceScheduleV1({ sourceId: sourceId, scheduleType: scheduleType });
console.log(result);
get-source-schedules-v1
List schedules on source Use this API to list the schedules that exist on the specified source in Identity Security Cloud (ISC).
This endpoint uses a cron expression to schedule a task, following standard cron job syntax.
For example, 0 0 12 1/1 * ? * runs the task daily at 12:00 PM.
Days of the week are represented as 1-7 (Sunday-Saturday).
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | Source ID. | [default to undefined] |
Return type
Array<Schedule3>
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // Source ID.
const result = await apiInstance.getSourceSchedulesV1({ sourceId: sourceId });
console.log(result);
get-source-schema-v1
Get source schema by id Get the Source Schema by ID in IdentityNow.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id. | [default to undefined] |
| schemaId | string | The Schema id. | [default to undefined] |
Return type
Schema
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id.
const schemaId: string = 2c9180835d191a86015d28455b4a2329; // The Schema id.
const result = await apiInstance.getSourceSchemaV1({ sourceId: sourceId, schemaId: schemaId });
console.log(result);
get-source-schemas-v1
List schemas on source Use this API to list the schemas that exist on the specified source in Identity Security Cloud (ISC).
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | Source ID. | [default to undefined] |
| includeTypes | `'group' | 'user'` | If set to 'group', then the account schema is filtered and only group schemas are returned. Only a value of 'group' is recognized presently. Note: The API will check whether include-types is group or not, if not, it will list schemas based on include-names, if include-names is not provided, it will list all schemas. |
| includeNames | string | A comma-separated list of schema names to filter result. | [optional] [default to undefined] |
Return type
Array<Schema>
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // Source ID.
const includeTypes: string = group; // If set to \'group\', then the account schema is filtered and only group schemas are returned. Only a value of \'group\' is recognized presently. Note: The API will check whether include-types is group or not, if not, it will list schemas based on include-names, if include-names is not provided, it will list all schemas. (optional)
const includeNames: string = account; // A comma-separated list of schema names to filter result. (optional)
const result = await apiInstance.getSourceSchemasV1({ sourceId: sourceId });
console.log(result);
get-source-v1
Get source by id Use this API to get a source by a specified ID in Identity Security Cloud (ISC).
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | Source ID. | [default to undefined] |
Return type
Source
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 2c9180835d191a86015d28455b4a2329; // Source ID.
const result = await apiInstance.getSourceV1({ id: id });
console.log(result);
import-accounts-schema-v1
Uploads source accounts schema template This API uploads a source schema template file to configure a source's account attributes.
To retrieve the file to modify and upload, log into Identity Now.
Click Admin -> Connections -> Sources -> {SourceName} -> Import Data -> Account Schema -> Options -> Download Schema
NOTE: This API is designated only for Delimited File sources.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | The Source id | [default to undefined] |
| file | File | [optional] [default to undefined] |
Return type
Schema
HTTP request headers
- Content-Type: multipart/form-data
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 8c190e6787aa4ed9a90bd9d5344523fb; // The Source id
const file: File = BINARY_DATA_HERE; // (optional)
const result = await apiInstance.importAccountsSchemaV1({ id: id });
console.log(result);
import-accounts-v1
Account aggregation
Starts an account aggregation on the specified source.
If the target source is a delimited file source, then the CSV file needs to be included in the request body.
You will also need to set the Content-Type header to multipart/form-data.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | Source Id | [default to undefined] |
| file | File | The CSV file containing the source accounts to aggregate. | [optional] [default to undefined] |
| disableOptimization | string | Use this flag to reprocess every account whether or not the data has changed. | [optional] [default to undefined] |
Return type
LoadAccountsTask
HTTP request headers
- Content-Type: multipart/form-data
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = ef38f94347e94562b5bb8424a56397d8; // Source Id
const file: File = BINARY_DATA_HERE; // The CSV file containing the source accounts to aggregate. (optional)
const disableOptimization: string = disableOptimization_example; // Use this flag to reprocess every account whether or not the data has changed. (optional)
const result = await apiInstance.importAccountsV1({ id: id });
console.log(result);
import-connector-file-v1
Upload connector file to source This uploads a supplemental source connector file (like jdbc driver jars) to a source's S3 bucket. This also sends ETS and Audit events.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id. | [default to undefined] |
| file | File | [optional] [default to undefined] |
Return type
Source
HTTP request headers
- Content-Type: multipart/form-data
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id.
const file: File = BINARY_DATA_HERE; // (optional)
const result = await apiInstance.importConnectorFileV1({ sourceId: sourceId });
console.log(result);
import-entitlements-schema-v1
Uploads source entitlements schema template This API uploads a source schema template file to configure a source's entitlement attributes.
To retrieve the file to modify and upload, log into Identity Now.
Click Admin -> Connections -> Sources -> {SourceName} -> Import Data -> Import Entitlements -> Download
NOTE: This API is designated only for Delimited File sources.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | The Source id | [default to undefined] |
| schemaName | string | Name of entitlement schema | [optional] [default to undefined] |
| file | File | [optional] [default to undefined] |
Return type
Schema
HTTP request headers
- Content-Type: multipart/form-data
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 8c190e6787aa4ed9a90bd9d5344523fb; // The Source id
const schemaName: string = ?schemaName=group; // Name of entitlement schema (optional)
const file: File = BINARY_DATA_HERE; // (optional)
const result = await apiInstance.importEntitlementsSchemaV1({ id: id });
console.log(result);
import-entitlements-v1
Entitlement aggregation
Starts an entitlement aggregation on the specified source.
If the target source is a delimited file source, then the CSV file needs to be included in the request body.
You will also need to set the Content-Type header to multipart/form-data.
A token with ORG_ADMIN, SOURCE_ADMIN, or SOURCE_SUBADMIN authority is required to call this API.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | Source Id | [default to undefined] |
| file | File | The CSV file containing the source entitlements to aggregate. | [optional] [default to undefined] |
Return type
LoadEntitlementTask
HTTP request headers
- Content-Type: multipart/form-data
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = ef38f94347e94562b5bb8424a56397d8; // Source Id
const file: File = BINARY_DATA_HERE; // The CSV file containing the source entitlements to aggregate. (optional)
const result = await apiInstance.importEntitlementsV1({ sourceId: sourceId });
console.log(result);
import-uncorrelated-accounts-v1
Process uncorrelated accounts
File is required for upload. You will also need to set the Content-Type header to multipart/form-data
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | Source Id | [default to undefined] |
| file | File | [optional] [default to undefined] |
Return type
LoadUncorrelatedAccountsTask
HTTP request headers
- Content-Type: multipart/form-data
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 75dbec1ebe154d5785da27b95e1dd5d7; // Source Id
const file: File = BINARY_DATA_HERE; // (optional)
const result = await apiInstance.importUncorrelatedAccountsV1({ id: id });
console.log(result);
list-password-policy-holders-on-source-v1
Get Password Policy for source This API can be used to get Password Policy in IdentityNow for the specified Source. Source must support PASSWORD feature.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id | [default to undefined] |
| offset | number | Offset into the full result set. Usually specified with limit to paginate through the results. See V3 API Standard Collection Parameters for more information. | [optional] [default to 0] |
| limit | number | Max number of results to return. See V3 API Standard Collection Parameters for more information. | [optional] [default to 250] |
| count | boolean | If true it will populate the X-Total-Count response header with the number of results that would be returned if limit and offset were ignored. Since requesting a total count can have a performance impact, it is recommended not to send count=true if that value will not be used. See V3 API Standard Collection Parameters for more information. | [optional] [default to false] |
Return type
Array<PasswordPolicyHoldersDtoInner>
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 8c190e6787aa4ed9a90bd9d5344523fb; // The Source id
const offset: number = 0; // 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)
const limit: number = 250; // 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)
const count: boolean = true; // 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)
const result = await apiInstance.listPasswordPolicyHoldersOnSourceV1({ sourceId: sourceId });
console.log(result);
list-provisioning-policies-v1
Lists provisioningpolicies This end-point lists all the ProvisioningPolicies in IdentityNow.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id | [default to undefined] |
| offset | number | Offset Integer specifying the offset of the first result from the beginning of the collection. The standard syntax described in V3 API Standard Collection Parameters. The offset value is record-based, not page-based, and the index starts at 0. | [optional] [default to 0] |
| limit | number | Limit Integer specifying the maximum number of records to return in a single API call. The standard syntax described in V3 API Standard Collection Parameters. If it is not specified, a default limit is used. | [optional] [default to 250] |
Return type
Array<ProvisioningPolicyDto>
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id
const offset: number = 0; // Offset Integer specifying the offset of the first result from the beginning of the collection. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). The offset value is record-based, not page-based, and the index starts at 0. (optional)
const limit: number = 250; // Limit Integer specifying the maximum number of records to return in a single API call. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). If it is not specified, a default limit is used. (optional)
const result = await apiInstance.listProvisioningPoliciesV1({ sourceId: sourceId });
console.log(result);
list-provisioning-policies-v2
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.
Lists Provisioning Policies This end-point lists all the ProvisioningPolicies in IdentityNow.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id | [default to undefined] |
| filters | string | Filter results using the standard syntax described in V3 API Standard Collection Parameters Filtering is supported for the following fields and operators: subtypeId: eq usageType: eq | [optional] [default to undefined] |
| offset | number | Offset Integer specifying the offset of the first result from the beginning of the collection. The standard syntax described in V3 API Standard Collection Parameters. The offset value is record-based, not page-based, and the index starts at 0. | [optional] [default to 0] |
| limit | number | Limit Integer specifying the maximum number of records to return in a single API call. The standard syntax described in V3 API Standard Collection Parameters. If it is not specified, a default limit is used. | [optional] [default to 250] |
| xSailPointExperimental | string | Use this header to enable this experimental API. | [optional] [default to 'true'] |
Return type
Array<ProvisioningPolicyDtoV2>
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id
const filters: string = subtypeId eq "6d28b7c1-620c-49c6-b6d5-cbf81eb4b5fa"; // 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: **subtypeId**: *eq* **usageType**: *eq* (optional)
const offset: number = 0; // Offset Integer specifying the offset of the first result from the beginning of the collection. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). The offset value is record-based, not page-based, and the index starts at 0. (optional)
const limit: number = 250; // Limit Integer specifying the maximum number of records to return in a single API call. The standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#paginating-results). If it is not specified, a default limit is used. (optional)
const xSailPointExperimental: string = true; // Use this header to enable this experimental API. (optional)
const result = await apiInstance.listProvisioningPoliciesV2({ sourceId: sourceId });
console.log(result);
list-sources-v1
Lists all sources in identitynow. This end-point lists all the sources in IdentityNow.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| limit | number | Max number of results to return. See V3 API Standard Collection Parameters for more information. | [optional] [default to 250] |
| offset | number | Offset into the full result set. Usually specified with limit to paginate through the results. See V3 API Standard Collection Parameters for more information. | [optional] [default to 0] |
| count | boolean | If true it will populate the X-Total-Count response header with the number of results that would be returned if limit and offset were ignored. Since requesting a total count can have a performance impact, it is recommended not to send count=true if that value will not be used. See V3 API Standard Collection Parameters for more information. | [optional] [default to false] |
| filters | string | 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, ge, gt, le, lt, ne, isnull, sw name: co, eq, in, sw, ge, gt, ne, isnull type: eq, in, ge, gt, ne, isnull, sw owner.id: eq, in, ge, gt, le, lt, ne, isnull, sw features: ca, co created: eq, ge, gt, in, le, lt, ne, isnull, sw modified: eq, ge, gt, in, le, lt, ne, isnull, sw managementWorkgroup.id: eq, ge, gt, in, le, lt, ne, isnull, sw description: eq, sw authoritative: eq, ne, isnull healthy: isnull status: eq, in, ge, gt, le, lt, ne, isnull, sw connectionType: eq, ge, gt, in, le, lt, ne, isnull, sw connectorName: eq, ge, gt, in, ne, isnull, sw category: co, eq, ge, gt, in, le, lt, ne, sw | [optional] [default to undefined] |
| sorters | string | Sort results using the standard syntax described in V3 API Standard Collection Parameters Sorting is supported for the following fields: type, created, modified, name, owner.name, healthy, status, id, description, owner.id, accountCorrelationConfig.id, accountCorrelationConfig.name, managerCorrelationRule.type, managerCorrelationRule.id, managerCorrelationRule.name, authoritative, managementWorkgroup.id, connectorName, connectionType | [optional] [default to undefined] |
| forSubadmin | string | Filter the returned list of sources for the identity specified by the parameter, which is the id of an identity with the role SOURCE_SUBADMIN. By convention, the value me indicates the identity id of the current user. Subadmins may only view Sources which they are able to administer; all other Sources will be filtered out when this parameter is set. If the current user is a SOURCE_SUBADMIN but fails to pass a valid value for this parameter, a 403 Forbidden is returned. | [optional] [default to undefined] |
| includeIDNSource | boolean | Include the IdentityNow source in the response. | [optional] [default to false] |
Return type
Array<Source>
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const limit: number = 250; // 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)
const offset: number = 0; // 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)
const count: boolean = true; // 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)
const filters: string = name eq "Employees"; // Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in, ge, gt, le, lt, ne, isnull, sw* **name**: *co, eq, in, sw, ge, gt, ne, isnull* **type**: *eq, in, ge, gt, ne, isnull, sw* **owner.id**: *eq, in, ge, gt, le, lt, ne, isnull, sw* **features**: *ca, co* **created**: *eq, ge, gt, in, le, lt, ne, isnull, sw* **modified**: *eq, ge, gt, in, le, lt, ne, isnull, sw* **managementWorkgroup.id**: *eq, ge, gt, in, le, lt, ne, isnull, sw* **description**: *eq, sw* **authoritative**: *eq, ne, isnull* **healthy**: *isnull* **status**: *eq, in, ge, gt, le, lt, ne, isnull, sw* **connectionType**: *eq, ge, gt, in, le, lt, ne, isnull, sw* **connectorName**: *eq, ge, gt, in, ne, isnull, sw* **category**: *co, eq, ge, gt, in, le, lt, ne, sw* (optional)
const sorters: string = name; // Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **type, created, modified, name, owner.name, healthy, status, id, description, owner.id, accountCorrelationConfig.id, accountCorrelationConfig.name, managerCorrelationRule.type, managerCorrelationRule.id, managerCorrelationRule.name, authoritative, managementWorkgroup.id, connectorName, connectionType** (optional)
const forSubadmin: string = name; // Filter the returned list of sources for the identity specified by the parameter, which is the id of an identity with the role SOURCE_SUBADMIN. By convention, the value **me** indicates the identity id of the current user. Subadmins may only view Sources which they are able to administer; all other Sources will be filtered out when this parameter is set. If the current user is a SOURCE_SUBADMIN but fails to pass a valid value for this parameter, a 403 Forbidden is returned. (optional)
const includeIDNSource: boolean = true; // Include the IdentityNow source in the response. (optional)
const result = await apiInstance.listSourcesV1({ });
console.log(result);
ping-cluster-v1
Ping cluster for source connector This endpoint validates that the cluster being used by the source is reachable from IdentityNow.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The ID of the Source | [default to undefined] |
Return type
StatusResponse
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = cef3ee201db947c5912551015ba0c679; // The ID of the Source
const result = await apiInstance.pingClusterV1({ sourceId: sourceId });
console.log(result);
put-correlation-config-v1
Update source correlation configuration Replaces the correlation configuration for the source specified by the given ID with the configuration provided in the request body.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | The source id | [default to undefined] |
| correlationConfig | CorrelationConfig |
Return type
CorrelationConfig
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { CorrelationConfig } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 2c9180835d191a86015d28455b4a2329; // The source id
const correlationConfig: CorrelationConfig = {
"attributeAssignments" : [ {
"filterString" : "first_name == \"John\"",
"ignoreCase" : false,
"complex" : false,
"property" : "first_name",
"value" : "firstName",
"operation" : "EQ",
"matchMode" : "ANYWHERE"
}, {
"filterString" : "first_name == \"John\"",
"ignoreCase" : false,
"complex" : false,
"property" : "first_name",
"value" : "firstName",
"operation" : "EQ",
"matchMode" : "ANYWHERE"
} ],
"name" : "Source [source] Account Correlation",
"id" : "2c9180835d191a86015d28455b4a2329"
}; //
const result = await apiInstance.putCorrelationConfigV1({ id: id, correlationConfig: correlationConfig });
console.log(result);
put-native-change-detection-config-v1
Update native change detection configuration Replaces the native change detection configuration for the source specified by the given ID with the configuration provided in the request body.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The source id | [default to undefined] |
| nativeChangeDetectionConfig | NativeChangeDetectionConfig |
Return type
NativeChangeDetectionConfig
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { NativeChangeDetectionConfig } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The source id
const nativeChangeDetectionConfig: NativeChangeDetectionConfig = {
"selectedEntitlements" : [ "memberOf", "memberOfSharedMailbox" ],
"operations" : [ "ACCOUNT_UPDATED", "ACCOUNT_DELETED" ],
"selectedNonEntitlementAttributes" : [ "lastName", "phoneNumber", "objectType", "servicePrincipalName" ],
"allNonEntitlementAttributes" : false,
"allEntitlements" : false,
"enabled" : true
}; //
const result = await apiInstance.putNativeChangeDetectionConfigV1({ sourceId: sourceId, nativeChangeDetectionConfig: nativeChangeDetectionConfig });
console.log(result);
put-provisioning-policy-v1
Update provisioning policy by usagetype This end-point updates the provisioning policy with the specified usage on the specified source in IdentityNow. Transforms can be used in the provisioning policy to create a new attribute that you only need during provisioning. Refer to Transforms in Provisioning Policies for more information.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source ID. | [default to undefined] |
| usageType | UsageType | The type of provisioning policy usage. In IdentityNow, a source can support various provisioning operations. For example, when a joiner is added to a source, this may trigger both CREATE and UPDATE provisioning operations. Each usage type is considered a provisioning policy. A source can have any number of these provisioning policies defined. These are the common usage types: CREATE - This usage type relates to 'Create Account Profile', the provisioning template for the account to be created. For example, this would be used for a joiner on a source. UPDATE - This usage type relates to 'Update Account Profile', the provisioning template for the 'Update' connector operations. For example, this would be used for an attribute sync on a source. ENABLE - This usage type relates to 'Enable Account Profile', the provisioning template for the account to be enabled. For example, this could be used for a joiner on a source once the joiner's account is created. DISABLE - This usage type relates to 'Disable Account Profile', the provisioning template for the account to be disabled. For example, this could be used when a leaver is removed temporarily from a source. You can use these four usage types for all your provisioning policy needs. | [default to undefined] |
| provisioningPolicyDto | ProvisioningPolicyDto |
Return type
ProvisioningPolicyDto
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { ProvisioningPolicyDto } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source ID.
const usageType: UsageType = CREATE; // The type of provisioning policy usage. In IdentityNow, a source can support various provisioning operations. For example, when a joiner is added to a source, this may trigger both CREATE and UPDATE provisioning operations. Each usage type is considered a provisioning policy. A source can have any number of these provisioning policies defined. These are the common usage types: CREATE - This usage type relates to \'Create Account Profile\', the provisioning template for the account to be created. For example, this would be used for a joiner on a source. UPDATE - This usage type relates to \'Update Account Profile\', the provisioning template for the \'Update\' connector operations. For example, this would be used for an attribute sync on a source. ENABLE - This usage type relates to \'Enable Account Profile\', the provisioning template for the account to be enabled. For example, this could be used for a joiner on a source once the joiner\'s account is created. DISABLE - This usage type relates to \'Disable Account Profile\', the provisioning template for the account to be disabled. For example, this could be used when a leaver is removed temporarily from a source. You can use these four usage types for all your provisioning policy needs.
const provisioningPolicyDto: ProvisioningPolicyDto = {
"name" : "example provisioning policy for inactive identities",
"description" : "this provisioning policy creates access based on an identity going inactive",
"fields" : [ {
"isRequired" : false,
"transform" : {
"type" : "rule",
"attributes" : {
"name" : "Create Unique LDAP Attribute"
}
},
"isMultiValued" : false,
"name" : "userName",
"attributes" : {
"template" : "${firstname}.${lastname}${uniqueCounter}",
"cloudMaxUniqueChecks" : "50",
"cloudMaxSize" : "20",
"cloudRequired" : "true"
},
"type" : "string"
}, {
"isRequired" : false,
"transform" : {
"type" : "rule",
"attributes" : {
"name" : "Create Unique LDAP Attribute"
}
},
"isMultiValued" : false,
"name" : "userName",
"attributes" : {
"template" : "${firstname}.${lastname}${uniqueCounter}",
"cloudMaxUniqueChecks" : "50",
"cloudMaxSize" : "20",
"cloudRequired" : "true"
},
"type" : "string"
} ],
"usageType" : "CREATE"
}; //
const result = await apiInstance.putProvisioningPolicyV1({ sourceId: sourceId, usageType: usageType, provisioningPolicyDto: provisioningPolicyDto });
console.log(result);
put-provisioning-policy-v2
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 provisioning policy by ID This end-point updates the provisioning policy with the specified ID on the specified source in Identity Security Cloud. Transforms can be used in the provisioning policy to create a new attribute that you only need during provisioning. Refer to Transforms in Provisioning Policies for more information.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source ID. | [default to undefined] |
| id | string | The provisioning policy ID. | [default to undefined] |
| provisioningPolicyDtoV2 | ProvisioningPolicyDtoV2 | ||
| xSailPointExperimental | string | Use this header to enable this experimental API. | [optional] [default to 'true'] |
Return type
ProvisioningPolicyDtoV2
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { ProvisioningPolicyDtoV2 } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source ID.
const id: string = f5dd23fe-3414-42b7-bb1c-869400ad7a10; // The provisioning policy ID.
const provisioningPolicyDtoV2: ProvisioningPolicyDtoV2 = {
"name" : "example provisioning policy for inactive identities",
"description" : "this provisioning policy creates access based on an identity going inactive",
"id" : "d7ae9ea3-507f-4d00-9d4f-b4464b344b88",
"subtypeId" : "d7ae9ea3-507f-4d00-9d4f-b4464b344b88",
"fields" : [ {
"isRequired" : false,
"transform" : {
"type" : "rule",
"attributes" : {
"name" : "Create Unique LDAP Attribute"
}
},
"isMultiValued" : false,
"name" : "userName",
"attributes" : {
"template" : "firstname.lastname.uniqueCounter",
"cloudMaxUniqueChecks" : "50",
"cloudMaxSize" : "20",
"cloudRequired" : "true"
},
"type" : "string"
}, {
"isRequired" : false,
"transform" : {
"type" : "rule",
"attributes" : {
"name" : "Create Unique LDAP Attribute"
}
},
"isMultiValued" : false,
"name" : "userName",
"attributes" : {
"template" : "firstname.lastname.uniqueCounter",
"cloudMaxUniqueChecks" : "50",
"cloudMaxSize" : "20",
"cloudRequired" : "true"
},
"type" : "string"
} ],
"usageType" : "CREATE"
}; //
const xSailPointExperimental: string = true; // Use this header to enable this experimental API. (optional)
const result = await apiInstance.putProvisioningPolicyV2({ sourceId: sourceId, id: id, provisioningPolicyDtoV2: provisioningPolicyDtoV2 });
console.log(result);
put-source-attr-sync-config-v1
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 attribute sync config Replaces the attribute synchronization configuration for the source specified by the given ID with the configuration provided in the request body. Only the "enabled" field of the values in the "attributes" array is mutable. Attempting to change other attributes or add new values to the "attributes" array will result in an error.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | The source id | [default to undefined] |
| attrSyncSourceConfig | AttrSyncSourceConfig | ||
| xSailPointExperimental | string | Use this header to enable this experimental API. | [optional] [default to 'true'] |
Return type
AttrSyncSourceConfig
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { AttrSyncSourceConfig } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 2c9180835d191a86015d28455b4a2329; // The source id
const attrSyncSourceConfig: AttrSyncSourceConfig = {
"attributes" : [ {
"name" : "email",
"displayName" : "Email",
"enabled" : true,
"target" : "mail"
}, {
"name" : "firstname",
"displayName" : "First Name",
"enabled" : false,
"target" : "givenName"
} ],
"source" : {
"name" : "HR Active Directory",
"id" : "2c9180835d191a86015d28455b4b232a",
"type" : "SOURCE"
}
}; //
const xSailPointExperimental: string = true; // Use this header to enable this experimental API. (optional)
const result = await apiInstance.putSourceAttrSyncConfigV1({ id: id, attrSyncSourceConfig: attrSyncSourceConfig });
console.log(result);
put-source-schema-v1
Update source schema (full) This API will completely replace an existing Schema with the submitted payload. Some fields of the Schema cannot be updated. These fields are listed below.
- id
- name
- created
- modified
Any attempt to modify these fields will result in an error response with a status code of 400.
idmust remain in the request body, but it cannot be changed. Ifidis omitted from the request body, the result will be a 400 error.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id. | [default to undefined] |
| schemaId | string | The Schema id. | [default to undefined] |
| schema | Schema |
Return type
Schema
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { Schema } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id.
const schemaId: string = 2c9180835d191a86015d28455b4a2329; // The Schema id.
const schema: Schema = {
"features" : [ "PROVISIONING", "NO_PERMISSIONS_PROVISIONING", "GROUPS_HAVE_MEMBERS" ],
"nativeObjectType" : "User",
"configuration" : {
"groupMemberAttribute" : "member"
},
"created" : "2019-12-24T22:32:58.104Z",
"includePermissions" : false,
"name" : "account",
"hierarchyAttribute" : "memberOf",
"modified" : "2019-12-31T20:22:28.104Z",
"attributes" : [ {
"name" : "sAMAccountName",
"type" : "STRING",
"isMultiValued" : false,
"isEntitlement" : false,
"isGroup" : false
}, {
"name" : "memberOf",
"type" : "STRING",
"schema" : {
"type" : "CONNECTOR_SCHEMA",
"id" : "2c9180887671ff8c01767b4671fc7d60",
"name" : "group"
},
"description" : "Group membership",
"isMultiValued" : true,
"isEntitlement" : true,
"isGroup" : true
} ],
"id" : "2c9180835d191a86015d28455b4a2329",
"displayAttribute" : "distinguishedName",
"identityAttribute" : "sAMAccountName"
}; //
const result = await apiInstance.putSourceSchemaV1({ sourceId: sourceId, schemaId: schemaId, schema: schema });
console.log(result);
put-source-v1
Update source (full) Use this API to update a source in Identity Security Cloud (ISC), using a full object representation. This means that when you use this API, it completely replaces the existing source configuration.
These fields are immutable, so they cannot be changed:
- id
- type
- authoritative
- connector
- connectorClass
- passwordPolicies
Attempts to modify these fields will result in a 400 error.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | Source ID. | [default to undefined] |
| source | Source |
Return type
Source
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { Source } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 2c9180835d191a86015d28455b4a2329; // Source ID.
const source: Source = {
"cluster" : {
"name" : "Corporate Cluster",
"id" : "2c9180866166b5b0016167c32ef31a66",
"type" : "CLUSTER"
},
"deleteThreshold" : 10,
"connectorId" : "active-directory",
"description" : "This is the corporate directory.",
"type" : "OpenLDAP - Direct",
"connectorClass" : "sailpoint.connector.LDAPConnector",
"connectionType" : "file",
"features" : [ "PROVISIONING", "NO_PERMISSIONS_PROVISIONING", "GROUPS_HAVE_MEMBERS" ],
"passwordPolicies" : [ {
"type" : "PASSWORD_POLICY",
"id" : "2c9180855d191c59015d291ceb053980",
"name" : "Corporate Password Policy"
}, {
"type" : "PASSWORD_POLICY",
"id" : "2c9180855d191c59015d291ceb057777",
"name" : "Vendor Password Policy"
} ],
"modified" : "2024-01-23T18:08:50.897Z",
"id" : "2c91808568c529c60168cca6f90c1324",
"connectorImplementationId" : "delimited-file",
"managerCorrelationRule" : {
"name" : "Example Rule",
"id" : "2c918085708c274401708c2a8a760001",
"type" : "RULE"
},
"owner" : {
"name" : "MyName",
"id" : "2c91808568c529c60168cca6f90c1313",
"type" : "IDENTITY"
},
"managementWorkgroup" : {
"name" : "My Management Workgroup",
"id" : "2c91808568c529c60168cca6f90c2222",
"type" : "GOVERNANCE_GROUP"
},
"accountCorrelationRule" : {
"name" : "Example Rule",
"id" : "2c918085708c274401708c2a8a760001",
"type" : "RULE"
},
"authoritative" : false,
"connectorAttributes" : {
"healthCheckTimeout" : 30,
"authSearchAttributes" : [ "cn", "uid", "mail" ]
},
"created" : "2022-02-08T14:50:03.827Z",
"managerCorrelationMapping" : {
"accountAttributeName" : "manager",
"identityAttributeName" : "manager"
},
"credentialProviderEnabled" : false,
"accountCorrelationConfig" : {
"name" : "Directory [source-62867] Account Correlation",
"id" : "2c9180855d191c59015d28583727245a",
"type" : "ACCOUNT_CORRELATION_CONFIG"
},
"connector" : "active-directory",
"healthy" : true,
"schemas" : [ {
"type" : "CONNECTOR_SCHEMA",
"id" : "2c9180835d191a86015d28455b4b232a",
"name" : "account"
}, {
"type" : "CONNECTOR_SCHEMA",
"id" : "2c9180835d191a86015d28455b4b232b",
"name" : "group"
} ],
"name" : "My Source",
"connectorName" : "Active Directory",
"category" : "CredentialProvider",
"beforeProvisioningRule" : {
"name" : "Example Rule",
"id" : "2c918085708c274401708c2a8a760001",
"type" : "RULE"
},
"status" : "SOURCE_STATE_HEALTHY",
"since" : "2021-09-28T15:48:29.3801666300Z"
}; //
const result = await apiInstance.putSourceV1({ id: id, source: source });
console.log(result);
search-resource-objects-v1
Peek source connector's resource objects Retrieves a sample of data returned from account and group aggregation requests.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The ID of the Source | [default to undefined] |
| resourceObjectsRequest | ResourceObjectsRequest |
Return type
ResourceObjectsResponse
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { ResourceObjectsRequest } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = cef3ee201db947c5912551015ba0c679; // The ID of the Source
const resourceObjectsRequest: ResourceObjectsRequest = {
"maxCount" : 100,
"objectType" : "group"
}; //
const result = await apiInstance.searchResourceObjectsV1({ sourceId: sourceId, resourceObjectsRequest: resourceObjectsRequest });
console.log(result);
sync-attributes-for-source-v1
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.
Synchronize single source attributes. This end-point performs attribute synchronization for a selected source.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | The Source id | [default to undefined] |
| xSailPointExperimental | string | Use this header to enable this experimental API. | [optional] [default to 'true'] |
Return type
SourceSyncJob
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = id_example; // The Source id
const xSailPointExperimental: string = true; // Use this header to enable this experimental API. (optional)
const result = await apiInstance.syncAttributesForSourceV1({ id: id });
console.log(result);
test-source-configuration-v1
Test configuration for source connector This endpoint performs a more detailed validation of the source''s configuration that can take longer than the lighter weight credential validation performed by the checkConnection API.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The ID of the Source | [default to undefined] |
Return type
StatusResponse
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = cef3ee201db947c5912551015ba0c679; // The ID of the Source
const result = await apiInstance.testSourceConfigurationV1({ sourceId: sourceId });
console.log(result);
test-source-connection-v1
Check connection for source connector. This endpoint validates that the configured credentials are valid and will properly authenticate with the source identified by the sourceId path parameter.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The ID of the Source. | [default to undefined] |
Return type
StatusResponse
HTTP request headers
- Content-Type: Not defined
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = cef3ee201db947c5912551015ba0c679; // The ID of the Source.
const result = await apiInstance.testSourceConnectionV1({ sourceId: sourceId });
console.log(result);
update-account-deletion-approval-config-v1
Human Account Deletion Approval Config Updates the approval configuration for deleting human accounts for a specific source, identified by source ID. This endpoint allows administrators to modify settings such as whether approval is required, who the approvers are, and other approval-related options. The update is performed using a JSON Patch payload, and the response returns the updated AccountDeleteConfigDto object reflecting the new approval workflow configuration.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | Human account source ID. | [default to undefined] |
| jsonPatchOperation | Array<JsonPatchOperation> | The JSONPatch payload used to update the object. |
Return type
AccountDeleteConfigDto
HTTP request headers
- Content-Type: application/json-patch+json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { JsonPatchOperation } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 00eebcf881994e419d72e757fd30dc0e; // Human account source ID.
const jsonPatchOperation: Array<JsonPatchOperation> = {
"op" : "replace",
"path" : "/description",
"value" : "New description"
}; // The JSONPatch payload used to update the object.
const result = await apiInstance.updateAccountDeletionApprovalConfigV1({ sourceId: sourceId, jsonPatchOperation: jsonPatchOperation });
console.log(result);
update-machine-account-deletion-approval-config-v1
Machine Account Deletion Approval Config Use this endpoint to update the machine account deletion approval configuration for a specific source. The update is performed using a JSON Patch payload, which allows partial modifications to the approval config. This operation is typically used to change approval requirements, approvers, or comments settings for machine account deletion. The endpoint expects the source ID as a path parameter and a valid JSON Patch array in the request body.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | machine account source ID. | [default to undefined] |
| jsonPatchOperation | Array<JsonPatchOperation> | The JSONPatch payload used to update the object. |
Return type
AccountDeleteConfigDto
HTTP request headers
- Content-Type: application/json-patch+json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { JsonPatchOperation } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 00eebcf881994e419d72e757fd30dc0e; // machine account source ID.
const jsonPatchOperation: Array<JsonPatchOperation> = {
"op" : "replace",
"path" : "/description",
"value" : "New description"
}; // The JSONPatch payload used to update the object.
const result = await apiInstance.updateMachineAccountDeletionApprovalConfigV1({ sourceId: sourceId, jsonPatchOperation: jsonPatchOperation });
console.log(result);
update-password-policy-holders-v1
Update password policy This API can be used to set up or update Password Policy in IdentityNow for the specified Source. Source must support PASSWORD feature.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id | [default to undefined] |
| passwordPolicyHoldersDtoInner | Array<PasswordPolicyHoldersDtoInner> |
Return type
Array<PasswordPolicyHoldersDtoInner>
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { PasswordPolicyHoldersDtoInner } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 8c190e6787aa4ed9a90bd9d5344523fb; // The Source id
const passwordPolicyHoldersDtoInner: Array<PasswordPolicyHoldersDtoInner> = ; //
const result = await apiInstance.updatePasswordPolicyHoldersV1({ sourceId: sourceId, passwordPolicyHoldersDtoInner: passwordPolicyHoldersDtoInner });
console.log(result);
update-provisioning-policies-in-bulk-v1
Bulk update provisioning policies This end-point updates a list of provisioning policies on the specified source in IdentityNow.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id. | [default to undefined] |
| provisioningPolicyDto | Array<ProvisioningPolicyDto> |
Return type
Array<ProvisioningPolicyDto>
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { ProvisioningPolicyDto } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id.
const provisioningPolicyDto: Array<ProvisioningPolicyDto> = {
"name" : "example provisioning policy for inactive identities",
"description" : "this provisioning policy creates access based on an identity going inactive",
"fields" : [ {
"isRequired" : false,
"transform" : {
"type" : "rule",
"attributes" : {
"name" : "Create Unique LDAP Attribute"
}
},
"isMultiValued" : false,
"name" : "userName",
"attributes" : {
"template" : "${firstname}.${lastname}${uniqueCounter}",
"cloudMaxUniqueChecks" : "50",
"cloudMaxSize" : "20",
"cloudRequired" : "true"
},
"type" : "string"
}, {
"isRequired" : false,
"transform" : {
"type" : "rule",
"attributes" : {
"name" : "Create Unique LDAP Attribute"
}
},
"isMultiValued" : false,
"name" : "userName",
"attributes" : {
"template" : "${firstname}.${lastname}${uniqueCounter}",
"cloudMaxUniqueChecks" : "50",
"cloudMaxSize" : "20",
"cloudRequired" : "true"
},
"type" : "string"
} ],
"usageType" : "CREATE"
}; //
const result = await apiInstance.updateProvisioningPoliciesInBulkV1({ sourceId: sourceId, provisioningPolicyDto: provisioningPolicyDto });
console.log(result);
update-provisioning-policy-v1
Partial update of provisioning policy This API selectively updates an existing Provisioning Policy using a JSONPatch payload. Transforms can be used in the provisioning policy to create a new attribute that you only need during provisioning. Refer to Transforms in Provisioning Policies for more information.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id. | [default to undefined] |
| usageType | UsageType | The type of provisioning policy usage. In IdentityNow, a source can support various provisioning operations. For example, when a joiner is added to a source, this may trigger both CREATE and UPDATE provisioning operations. Each usage type is considered a provisioning policy. A source can have any number of these provisioning policies defined. These are the common usage types: CREATE - This usage type relates to 'Create Account Profile', the provisioning template for the account to be created. For example, this would be used for a joiner on a source. UPDATE - This usage type relates to 'Update Account Profile', the provisioning template for the 'Update' connector operations. For example, this would be used for an attribute sync on a source. ENABLE - This usage type relates to 'Enable Account Profile', the provisioning template for the account to be enabled. For example, this could be used for a joiner on a source once the joiner's account is created. DISABLE - This usage type relates to 'Disable Account Profile', the provisioning template for the account to be disabled. For example, this could be used when a leaver is removed temporarily from a source. You can use these four usage types for all your provisioning policy needs. | [default to undefined] |
| jsonPatchOperation | Array<JsonPatchOperation> | The JSONPatch payload used to update the schema. |
Return type
ProvisioningPolicyDto
HTTP request headers
- Content-Type: application/json-patch+json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { JsonPatchOperation } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id.
const usageType: UsageType = CREATE; // The type of provisioning policy usage. In IdentityNow, a source can support various provisioning operations. For example, when a joiner is added to a source, this may trigger both CREATE and UPDATE provisioning operations. Each usage type is considered a provisioning policy. A source can have any number of these provisioning policies defined. These are the common usage types: CREATE - This usage type relates to \'Create Account Profile\', the provisioning template for the account to be created. For example, this would be used for a joiner on a source. UPDATE - This usage type relates to \'Update Account Profile\', the provisioning template for the \'Update\' connector operations. For example, this would be used for an attribute sync on a source. ENABLE - This usage type relates to \'Enable Account Profile\', the provisioning template for the account to be enabled. For example, this could be used for a joiner on a source once the joiner\'s account is created. DISABLE - This usage type relates to \'Disable Account Profile\', the provisioning template for the account to be disabled. For example, this could be used when a leaver is removed temporarily from a source. You can use these four usage types for all your provisioning policy needs.
const jsonPatchOperation: Array<JsonPatchOperation> = {
"op" : "replace",
"path" : "/description",
"value" : "New description"
}; // The JSONPatch payload used to update the schema.
const result = await apiInstance.updateProvisioningPolicyV1({ sourceId: sourceId, usageType: usageType, jsonPatchOperation: jsonPatchOperation });
console.log(result);
update-provisioning-policy-v2
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.
Partial update of provisioning policy This API selectively updates an existing Provisioning Policy using a JSONPatch payload. Transforms can be used in the provisioning policy to create a new attribute that you only need during provisioning. Refer to Transforms in Provisioning Policies for more information.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id. | [default to undefined] |
| id | string | The provisioning policy ID. | [default to undefined] |
| jsonPatchOperation | Array<JsonPatchOperation> | The JSONPatch payload used to update the schema. | |
| xSailPointExperimental | string | Use this header to enable this experimental API. | [optional] [default to 'true'] |
Return type
ProvisioningPolicyDtoV2
HTTP request headers
- Content-Type: application/json-patch+json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { JsonPatchOperation } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id.
const id: string = f5dd23fe-3414-42b7-bb1c-869400ad7a10; // The provisioning policy ID.
const jsonPatchOperation: Array<JsonPatchOperation> = {
"op" : "replace",
"path" : "/description",
"value" : "New description"
}; // The JSONPatch payload used to update the schema.
const xSailPointExperimental: string = true; // Use this header to enable this experimental API. (optional)
const result = await apiInstance.updateProvisioningPolicyV2({ sourceId: sourceId, id: id, jsonPatchOperation: jsonPatchOperation });
console.log(result);
update-source-entitlement-request-config-v1
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 source entitlement request configuration This API replaces the current entitlement request configuration for a source. This source-level configuration should apply for all the entitlements in the source.
Access request to any entitlements in the source should follow this configuration unless a separate entitlement-level configuration is defined.
- During access request, this source-level entitlement request configuration overrides the global organization-level configuration.
- However, the entitlement-level configuration (if defined) overrides this source-level configuration.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | The Source id | [default to undefined] |
| sourceEntitlementRequestConfig | SourceEntitlementRequestConfig | ||
| xSailPointExperimental | string | Use this header to enable this experimental API. | [optional] [default to 'true'] |
Return type
SourceEntitlementRequestConfig
HTTP request headers
- Content-Type: application/json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { SourceEntitlementRequestConfig } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 8c190e6787aa4ed9a90bd9d5344523fb; // The Source id
const sourceEntitlementRequestConfig: SourceEntitlementRequestConfig = {
"accessRequestConfig" : {
"denialCommentRequired" : false,
"approvalSchemes" : [ {
"approverId" : "e3eab852-8315-467f-9de7-70eda97f63c8",
"approverType" : "GOVERNANCE_GROUP"
}, {
"approverId" : "e3eab852-8315-467f-9de7-70eda97f63c8",
"approverType" : "GOVERNANCE_GROUP"
} ],
"reauthorizationRequired" : false,
"requestCommentRequired" : true,
"requireEndDate" : true,
"maxPermittedAccessDuration" : {
"value" : 5,
"timeUnit" : "DAYS"
}
},
"revocationRequestConfig" : {
"approvalSchemes" : [ {
"approverId" : "e3eab852-8315-467f-9de7-70eda97f63c8",
"approverType" : "GOVERNANCE_GROUP"
}, {
"approverId" : "e3eab852-8315-467f-9de7-70eda97f63c8",
"approverType" : "GOVERNANCE_GROUP"
} ]
}
}; //
const xSailPointExperimental: string = true; // Use this header to enable this experimental API. (optional)
const result = await apiInstance.updateSourceEntitlementRequestConfigV1({ id: id, sourceEntitlementRequestConfig: sourceEntitlementRequestConfig });
console.log(result);
update-source-schedule-v1
Update source schedule (partial) Use this API to selectively update an existing Schedule using a JSONPatch payload.
The following schedule fields are immutable and cannot be updated:
- type
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id. | [default to undefined] |
| scheduleType | `'ACCOUNT_AGGREGATION' | 'GROUP_AGGREGATION'` | The Schedule type. |
| jsonPatchOperation | Array<JsonPatchOperation> | The JSONPatch payload used to update the schedule. |
Return type
Schedule3
HTTP request headers
- Content-Type: application/json-patch+json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { JsonPatchOperation } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id.
const scheduleType: string = ACCOUNT_AGGREGATION; // The Schedule type.
const jsonPatchOperation: Array<JsonPatchOperation> = {
"op" : "replace",
"path" : "/description",
"value" : "New description"
}; // The JSONPatch payload used to update the schedule.
const result = await apiInstance.updateSourceScheduleV1({ sourceId: sourceId, scheduleType: scheduleType, jsonPatchOperation: jsonPatchOperation });
console.log(result);
update-source-schema-v1
Update source schema (partial) Use this API to selectively update an existing Schema using a JSONPatch payload.
The following schema fields are immutable and cannot be updated:
- id
- name
- created
- modified
To switch an account attribute to a group entitlement, you need to have the following in place:
isEntitlement: true- Must define a schema for the group and add it to the source before updating the
isGroupflag. For example, here is thegroupaccount attribute referencing a schema that defines the group:
{
"name": "groups",
"type": "STRING",
"schema": {
"type": "CONNECTOR_SCHEMA",
"id": "2c9180887671ff8c01767b4671fc7d60",
"name": "group"
},
"description": "The groups, roles etc. that reference account group objects",
"isMulti": true,
"isEntitlement": true,
"isGroup": true
}
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| sourceId | string | The Source id. | [default to undefined] |
| schemaId | string | The Schema id. | [default to undefined] |
| jsonPatchOperation | Array<JsonPatchOperation> | The JSONPatch payload used to update the schema. |
Return type
Schema
HTTP request headers
- Content-Type: application/json-patch+json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { JsonPatchOperation } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const sourceId: string = 2c9180835d191a86015d28455b4a2329; // The Source id.
const schemaId: string = 2c9180835d191a86015d28455b4a2329; // The Schema id.
const jsonPatchOperation: Array<JsonPatchOperation> = {
"op" : "replace",
"path" : "/description",
"value" : "New description"
}; // The JSONPatch payload used to update the schema.
const result = await apiInstance.updateSourceSchemaV1({ sourceId: sourceId, schemaId: schemaId, jsonPatchOperation: jsonPatchOperation });
console.log(result);
update-source-v1
Update source (partial) Use this API to partially update a source in Identity Security Cloud (ISC), using a list of patch operations according to the JSON Patch standard.
These fields are immutable, so they cannot be changed:
- id
- type
- authoritative
- created
- modified
- connector
- connectorClass
- passwordPolicies
Attempts to modify these fields will result in a 400 error.
Parameters
| Name | Type | Description | Notes |
|---|---|---|---|
| id | string | Source ID. | [default to undefined] |
| jsonPatchOperation | Array<JsonPatchOperation> | A list of account update operations according to the JSON Patch standard. Any password changes are submitted as plain-text and encrypted upon receipt in Identity Security Cloud (ISC). |
Return type
Source
HTTP request headers
- Content-Type: application/json-patch+json
- Accept: application/json
Example
import { SourcesApi } from 'sailpoint-api-client';
import { Configuration } from 'sailpoint-api-client';
import { JsonPatchOperation } from 'sailpoint-api-client/dist/sources/api';
const configuration = new Configuration();
const apiInstance = new SourcesApi(configuration);
const id: string = 2c9180835d191a86015d28455b4a2329; // Source ID.
const jsonPatchOperation: Array<JsonPatchOperation> = {
"op" : "replace",
"path" : "/description",
"value" : "New description"
}; // A list of account update operations according to the [JSON Patch](https://tools.ietf.org/html/rfc6902) standard. Any password changes are submitted as plain-text and encrypted upon receipt in Identity Security Cloud (ISC).
const result = await apiInstance.updateSourceV1({ id: id, jsonPatchOperation: jsonPatchOperation });
console.log(result);