/** * Identity Security Cloud API - Identity Attributes * Use these APIs to interact with the Identity Security Cloud platform to achieve repeatable, automated processes with greater scalability. We encourage you to join the SailPoint Developer Community forum at https://developer.sailpoint.com/discuss to connect with other developers using our APIs. * * The version of the OpenAPI document: v1 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import type { Configuration } from '../configuration'; import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios'; import type { RequestArgs } from './base'; import { BaseAPI } from './base'; /** * * @export * @interface ErrorMessageDto */ export interface ErrorMessageDto { /** * The locale for the message text, a BCP 47 language tag. * @type {string} * @memberof ErrorMessageDto */ 'locale'?: string | null; /** * * @type {LocaleOrigin} * @memberof ErrorMessageDto */ 'localeOrigin'?: LocaleOrigin | null; /** * Actual text of the error message in the indicated locale. * @type {string} * @memberof ErrorMessageDto */ 'text'?: string; } /** * * @export * @interface ErrorResponseDto */ export interface ErrorResponseDto { /** * Fine-grained error code providing more detail of the error. * @type {string} * @memberof ErrorResponseDto */ 'detailCode'?: string; /** * Unique tracking id for the error. * @type {string} * @memberof ErrorResponseDto */ 'trackingId'?: string; /** * Generic localized reason for error * @type {Array} * @memberof ErrorResponseDto */ 'messages'?: Array; /** * Plain-text descriptive reasons to provide additional detail to the text provided in the messages field * @type {Array} * @memberof ErrorResponseDto */ 'causes'?: Array; } /** * * @export * @interface IdentityAttribute2 */ export interface IdentityAttribute2 { /** * Identity attribute\'s technical name. * @type {string} * @memberof IdentityAttribute2 */ 'name': string; /** * Identity attribute\'s business-friendly name. * @type {string} * @memberof IdentityAttribute2 */ 'displayName'?: string; /** * Indicates whether the attribute is \'standard\' or \'default\'. * @type {boolean} * @memberof IdentityAttribute2 */ 'standard'?: boolean; /** * Identity attribute\'s type. * @type {string} * @memberof IdentityAttribute2 */ 'type'?: string | null; /** * Indicates whether the identity attribute is multi-valued. * @type {boolean} * @memberof IdentityAttribute2 */ 'multi'?: boolean; /** * Indicates whether the identity attribute is searchable. * @type {boolean} * @memberof IdentityAttribute2 */ 'searchable'?: boolean; /** * Indicates whether the identity attribute is \'system\', meaning that it doesn\'t have a source and isn\'t configurable. * @type {boolean} * @memberof IdentityAttribute2 */ 'system'?: boolean; /** * Identity attribute\'s list of sources - this specifies how the rule\'s value is derived. * @type {Array} * @memberof IdentityAttribute2 */ 'sources'?: Array; } /** * Identity attribute IDs. * @export * @interface IdentityAttributeNames */ export interface IdentityAttributeNames { /** * List of identity attributes\' technical names. * @type {Array} * @memberof IdentityAttributeNames */ 'ids'?: Array; } /** * * @export * @interface ListIdentityAttributesV1401Response */ export interface ListIdentityAttributesV1401Response { /** * A message describing the error * @type {any} * @memberof ListIdentityAttributesV1401Response */ 'error'?: any; } /** * * @export * @interface ListIdentityAttributesV1429Response */ export interface ListIdentityAttributesV1429Response { /** * A message describing the error * @type {any} * @memberof ListIdentityAttributesV1429Response */ 'message'?: any; } /** * An indicator of how the locale was selected. *DEFAULT* means the locale is the system default. *REQUEST* means the locale was selected from the request context (i.e., best match based on the *Accept-Language* header). Additional values may be added in the future without notice. * @export * @enum {string} */ export declare const LocaleOrigin: { readonly Default: "DEFAULT"; readonly Request: "REQUEST"; }; export type LocaleOrigin = typeof LocaleOrigin[keyof typeof LocaleOrigin]; /** * * @export * @interface Source2 */ export interface Source2 { /** * Attribute mapping type. * @type {string} * @memberof Source2 */ 'type'?: string; /** * Attribute mapping properties. * @type {object} * @memberof Source2 */ 'properties'?: object; } /** * IdentityAttributesApi - axios parameter creator * @export */ export declare const IdentityAttributesApiAxiosParamCreator: (configuration?: Configuration) => { /** * Use this API to create a new identity attribute. * @summary Create identity attribute * @param {IdentityAttribute2} identityAttribute2 * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ createIdentityAttributeV1: (identityAttribute2: IdentityAttribute2, axiosOptions?: RawAxiosRequestConfig) => Promise; /** * This deletes an identity attribute with the given name. The `system` and `standard` properties must be set to false before you can delete an identity attribute. * @summary Delete identity attribute * @param {string} name The attribute\'s technical name. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteIdentityAttributeV1: (name: string, axiosOptions?: RawAxiosRequestConfig) => Promise; /** * Use this API to bulk delete identity attributes for a given set of names. Attributes that are currently mapped in an identity profile cannot be deleted. The `system` and `standard` properties must be set to \'false\' before you can delete an identity attribute. * @summary Bulk delete identity attributes * @param {IdentityAttributeNames} identityAttributeNames * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteIdentityAttributesInBulkV1: (identityAttributeNames: IdentityAttributeNames, axiosOptions?: RawAxiosRequestConfig) => Promise; /** * This gets an identity attribute for a given technical name. * @summary Get identity attribute * @param {string} name The attribute\'s technical name. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getIdentityAttributeV1: (name: string, axiosOptions?: RawAxiosRequestConfig) => Promise; /** * Use this API to get a collection of identity attributes. * @summary List identity attributes * @param {boolean} [includeSystem] Include \'system\' attributes in the response. * @param {boolean} [includeSilent] Include \'silent\' attributes in the response. * @param {boolean} [searchableOnly] Include only \'searchable\' attributes in the response. * @param {boolean} [count] 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. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listIdentityAttributesV1: (includeSystem?: boolean, includeSilent?: boolean, searchableOnly?: boolean, count?: boolean, axiosOptions?: RawAxiosRequestConfig) => Promise; /** * This updates an existing identity attribute. Making an attribute searchable requires that the `system`, `standard`, and `multi` properties be set to false. * @summary Update identity attribute * @param {string} name The attribute\'s technical name. * @param {IdentityAttribute2} identityAttribute2 * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ putIdentityAttributeV1: (name: string, identityAttribute2: IdentityAttribute2, axiosOptions?: RawAxiosRequestConfig) => Promise; }; /** * IdentityAttributesApi - functional programming interface * @export */ export declare const IdentityAttributesApiFp: (configuration?: Configuration) => { /** * Use this API to create a new identity attribute. * @summary Create identity attribute * @param {IdentityAttribute2} identityAttribute2 * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ createIdentityAttributeV1(identityAttribute2: IdentityAttribute2, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * This deletes an identity attribute with the given name. The `system` and `standard` properties must be set to false before you can delete an identity attribute. * @summary Delete identity attribute * @param {string} name The attribute\'s technical name. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteIdentityAttributeV1(name: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * Use this API to bulk delete identity attributes for a given set of names. Attributes that are currently mapped in an identity profile cannot be deleted. The `system` and `standard` properties must be set to \'false\' before you can delete an identity attribute. * @summary Bulk delete identity attributes * @param {IdentityAttributeNames} identityAttributeNames * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteIdentityAttributesInBulkV1(identityAttributeNames: IdentityAttributeNames, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * This gets an identity attribute for a given technical name. * @summary Get identity attribute * @param {string} name The attribute\'s technical name. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getIdentityAttributeV1(name: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; /** * Use this API to get a collection of identity attributes. * @summary List identity attributes * @param {boolean} [includeSystem] Include \'system\' attributes in the response. * @param {boolean} [includeSilent] Include \'silent\' attributes in the response. * @param {boolean} [searchableOnly] Include only \'searchable\' attributes in the response. * @param {boolean} [count] 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. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listIdentityAttributesV1(includeSystem?: boolean, includeSilent?: boolean, searchableOnly?: boolean, count?: boolean, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>>; /** * This updates an existing identity attribute. Making an attribute searchable requires that the `system`, `standard`, and `multi` properties be set to false. * @summary Update identity attribute * @param {string} name The attribute\'s technical name. * @param {IdentityAttribute2} identityAttribute2 * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ putIdentityAttributeV1(name: string, identityAttribute2: IdentityAttribute2, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>; }; /** * IdentityAttributesApi - factory interface * @export */ export declare const IdentityAttributesApiFactory: (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) => { /** * Use this API to create a new identity attribute. * @summary Create identity attribute * @param {IdentityAttributesApiCreateIdentityAttributeV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ createIdentityAttributeV1(requestParameters: IdentityAttributesApiCreateIdentityAttributeV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise; /** * This deletes an identity attribute with the given name. The `system` and `standard` properties must be set to false before you can delete an identity attribute. * @summary Delete identity attribute * @param {IdentityAttributesApiDeleteIdentityAttributeV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteIdentityAttributeV1(requestParameters: IdentityAttributesApiDeleteIdentityAttributeV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise; /** * Use this API to bulk delete identity attributes for a given set of names. Attributes that are currently mapped in an identity profile cannot be deleted. The `system` and `standard` properties must be set to \'false\' before you can delete an identity attribute. * @summary Bulk delete identity attributes * @param {IdentityAttributesApiDeleteIdentityAttributesInBulkV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteIdentityAttributesInBulkV1(requestParameters: IdentityAttributesApiDeleteIdentityAttributesInBulkV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise; /** * This gets an identity attribute for a given technical name. * @summary Get identity attribute * @param {IdentityAttributesApiGetIdentityAttributeV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getIdentityAttributeV1(requestParameters: IdentityAttributesApiGetIdentityAttributeV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise; /** * Use this API to get a collection of identity attributes. * @summary List identity attributes * @param {IdentityAttributesApiListIdentityAttributesV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listIdentityAttributesV1(requestParameters?: IdentityAttributesApiListIdentityAttributesV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise>; /** * This updates an existing identity attribute. Making an attribute searchable requires that the `system`, `standard`, and `multi` properties be set to false. * @summary Update identity attribute * @param {IdentityAttributesApiPutIdentityAttributeV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ putIdentityAttributeV1(requestParameters: IdentityAttributesApiPutIdentityAttributeV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise; }; /** * Request parameters for createIdentityAttributeV1 operation in IdentityAttributesApi. * @export * @interface IdentityAttributesApiCreateIdentityAttributeV1Request */ export interface IdentityAttributesApiCreateIdentityAttributeV1Request { /** * * @type {IdentityAttribute2} * @memberof IdentityAttributesApiCreateIdentityAttributeV1 */ readonly identityAttribute2: IdentityAttribute2; } /** * Request parameters for deleteIdentityAttributeV1 operation in IdentityAttributesApi. * @export * @interface IdentityAttributesApiDeleteIdentityAttributeV1Request */ export interface IdentityAttributesApiDeleteIdentityAttributeV1Request { /** * The attribute\'s technical name. * @type {string} * @memberof IdentityAttributesApiDeleteIdentityAttributeV1 */ readonly name: string; } /** * Request parameters for deleteIdentityAttributesInBulkV1 operation in IdentityAttributesApi. * @export * @interface IdentityAttributesApiDeleteIdentityAttributesInBulkV1Request */ export interface IdentityAttributesApiDeleteIdentityAttributesInBulkV1Request { /** * * @type {IdentityAttributeNames} * @memberof IdentityAttributesApiDeleteIdentityAttributesInBulkV1 */ readonly identityAttributeNames: IdentityAttributeNames; } /** * Request parameters for getIdentityAttributeV1 operation in IdentityAttributesApi. * @export * @interface IdentityAttributesApiGetIdentityAttributeV1Request */ export interface IdentityAttributesApiGetIdentityAttributeV1Request { /** * The attribute\'s technical name. * @type {string} * @memberof IdentityAttributesApiGetIdentityAttributeV1 */ readonly name: string; } /** * Request parameters for listIdentityAttributesV1 operation in IdentityAttributesApi. * @export * @interface IdentityAttributesApiListIdentityAttributesV1Request */ export interface IdentityAttributesApiListIdentityAttributesV1Request { /** * Include \'system\' attributes in the response. * @type {boolean} * @memberof IdentityAttributesApiListIdentityAttributesV1 */ readonly includeSystem?: boolean; /** * Include \'silent\' attributes in the response. * @type {boolean} * @memberof IdentityAttributesApiListIdentityAttributesV1 */ readonly includeSilent?: boolean; /** * Include only \'searchable\' attributes in the response. * @type {boolean} * @memberof IdentityAttributesApiListIdentityAttributesV1 */ readonly searchableOnly?: boolean; /** * If *true* it will populate the *X-Total-Count* response header with the number of results that would be returned if *limit* and *offset* were ignored. Since requesting a total count can have a performance impact, it is recommended not to send **count=true** if that value will not be used. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {boolean} * @memberof IdentityAttributesApiListIdentityAttributesV1 */ readonly count?: boolean; } /** * Request parameters for putIdentityAttributeV1 operation in IdentityAttributesApi. * @export * @interface IdentityAttributesApiPutIdentityAttributeV1Request */ export interface IdentityAttributesApiPutIdentityAttributeV1Request { /** * The attribute\'s technical name. * @type {string} * @memberof IdentityAttributesApiPutIdentityAttributeV1 */ readonly name: string; /** * * @type {IdentityAttribute2} * @memberof IdentityAttributesApiPutIdentityAttributeV1 */ readonly identityAttribute2: IdentityAttribute2; } /** * IdentityAttributesApi - object-oriented interface * @export * @class IdentityAttributesApi * @extends {BaseAPI} */ export declare class IdentityAttributesApi extends BaseAPI { /** * Use this API to create a new identity attribute. * @summary Create identity attribute * @param {IdentityAttributesApiCreateIdentityAttributeV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof IdentityAttributesApi */ createIdentityAttributeV1(requestParameters: IdentityAttributesApiCreateIdentityAttributeV1Request, axiosOptions?: RawAxiosRequestConfig): Promise>; /** * This deletes an identity attribute with the given name. The `system` and `standard` properties must be set to false before you can delete an identity attribute. * @summary Delete identity attribute * @param {IdentityAttributesApiDeleteIdentityAttributeV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof IdentityAttributesApi */ deleteIdentityAttributeV1(requestParameters: IdentityAttributesApiDeleteIdentityAttributeV1Request, axiosOptions?: RawAxiosRequestConfig): Promise>; /** * Use this API to bulk delete identity attributes for a given set of names. Attributes that are currently mapped in an identity profile cannot be deleted. The `system` and `standard` properties must be set to \'false\' before you can delete an identity attribute. * @summary Bulk delete identity attributes * @param {IdentityAttributesApiDeleteIdentityAttributesInBulkV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof IdentityAttributesApi */ deleteIdentityAttributesInBulkV1(requestParameters: IdentityAttributesApiDeleteIdentityAttributesInBulkV1Request, axiosOptions?: RawAxiosRequestConfig): Promise>; /** * This gets an identity attribute for a given technical name. * @summary Get identity attribute * @param {IdentityAttributesApiGetIdentityAttributeV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof IdentityAttributesApi */ getIdentityAttributeV1(requestParameters: IdentityAttributesApiGetIdentityAttributeV1Request, axiosOptions?: RawAxiosRequestConfig): Promise>; /** * Use this API to get a collection of identity attributes. * @summary List identity attributes * @param {IdentityAttributesApiListIdentityAttributesV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof IdentityAttributesApi */ listIdentityAttributesV1(requestParameters?: IdentityAttributesApiListIdentityAttributesV1Request, axiosOptions?: RawAxiosRequestConfig): Promise>; /** * This updates an existing identity attribute. Making an attribute searchable requires that the `system`, `standard`, and `multi` properties be set to false. * @summary Update identity attribute * @param {IdentityAttributesApiPutIdentityAttributeV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof IdentityAttributesApi */ putIdentityAttributeV1(requestParameters: IdentityAttributesApiPutIdentityAttributeV1Request, axiosOptions?: RawAxiosRequestConfig): Promise>; }