/* tslint:disable */ /* eslint-disable */ /** * Identity Security Cloud API - Roles * 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 globalAxios from 'axios'; // Some imports not used depending on template conditions // @ts-ignore import { DUMMY_BASE_URL, assertParamExists, setApiKeyToObject, setBasicAuthToObject, setBearerAuthToObject, setOAuthToObject, setSearchParams, serializeDataIfNeeded, toPathString, createRequestFunction } from './common'; import type { RequestArgs } from './base'; // @ts-ignore import { BASE_PATH, COLLECTION_FORMATS, BaseAPI, RequiredError, operationServerMap } from './base'; /** * * @export * @interface AccessDuration */ export interface AccessDuration { /** * The numeric value representing the amount of time, which is defined in the **timeUnit**. * @type {number} * @memberof AccessDuration */ 'value'?: number; /** * The unit of time that corresponds to the **value**. It defines the scale of the time period. * @type {string} * @memberof AccessDuration */ 'timeUnit'?: AccessDurationTimeUnitEnum; } export const AccessDurationTimeUnitEnum = { Hours: 'HOURS', Days: 'DAYS', Weeks: 'WEEKS', Months: 'MONTHS' } as const; export type AccessDurationTimeUnitEnum = typeof AccessDurationTimeUnitEnum[keyof typeof AccessDurationTimeUnitEnum]; /** * Metadata that describes an access item * @export * @interface AccessModelMetadata */ export interface AccessModelMetadata { /** * Unique identifier for the metadata type * @type {string} * @memberof AccessModelMetadata */ 'key'?: string; /** * Human readable name of the metadata type * @type {string} * @memberof AccessModelMetadata */ 'name'?: string; /** * Allows selecting multiple values * @type {boolean} * @memberof AccessModelMetadata */ 'multiselect'?: boolean; /** * The state of the metadata item * @type {string} * @memberof AccessModelMetadata */ 'status'?: string; /** * The type of the metadata item * @type {string} * @memberof AccessModelMetadata */ 'type'?: string; /** * The types of objects * @type {Array} * @memberof AccessModelMetadata */ 'objectTypes'?: Array; /** * Describes the metadata item * @type {string} * @memberof AccessModelMetadata */ 'description'?: string; /** * The value to assign to the metadata item * @type {Array} * @memberof AccessModelMetadata */ 'values'?: Array; } /** * An individual value to assign to the metadata item * @export * @interface AccessModelMetadataValuesInner */ export interface AccessModelMetadataValuesInner { /** * The value to assign to the metdata item * @type {string} * @memberof AccessModelMetadataValuesInner */ 'value'?: string; /** * Display name of the value * @type {string} * @memberof AccessModelMetadataValuesInner */ 'name'?: string; /** * The status of the individual value * @type {string} * @memberof AccessModelMetadataValuesInner */ 'status'?: string; } /** * * @export * @interface AccessProfileRef */ export interface AccessProfileRef { /** * ID of the Access Profile * @type {string} * @memberof AccessProfileRef */ 'id'?: string; /** * Type of requested object. This field must be either left null or set to \'ACCESS_PROFILE\' when creating an Access Profile, otherwise a 400 Bad Request error will result. * @type {string} * @memberof AccessProfileRef */ 'type'?: AccessProfileRefTypeEnum; /** * Human-readable display name of the Access Profile. This field is ignored on input. * @type {string} * @memberof AccessProfileRef */ 'name'?: string; } export const AccessProfileRefTypeEnum = { AccessProfile: 'ACCESS_PROFILE' } as const; export type AccessProfileRefTypeEnum = typeof AccessProfileRefTypeEnum[keyof typeof AccessProfileRefTypeEnum]; /** * Reference to an additional owner (identity or governance group). * @export * @interface AdditionalOwnerRef */ export interface AdditionalOwnerRef { /** * Type of the additional owner; IDENTITY for an identity, GOVERNANCE_GROUP for a governance group. * @type {string} * @memberof AdditionalOwnerRef */ 'type'?: AdditionalOwnerRefTypeEnum; /** * ID of the identity or governance group. * @type {string} * @memberof AdditionalOwnerRef */ 'id'?: string; /** * Display name. It may be left null or omitted on input. If set, it must match the current display name of the identity or governance group, otherwise a 400 Bad Request error may result. * @type {string} * @memberof AdditionalOwnerRef */ 'name'?: string | null; } export const AdditionalOwnerRefTypeEnum = { Identity: 'IDENTITY', GovernanceGroup: 'GOVERNANCE_GROUP' } as const; export type AdditionalOwnerRefTypeEnum = typeof AdditionalOwnerRefTypeEnum[keyof typeof AdditionalOwnerRefTypeEnum]; /** * * @export * @interface ApprovalSchemeForRole */ export interface ApprovalSchemeForRole { /** * Describes the individual or group that is responsible for an approval step. Values are as follows. **OWNER**: Owner of the associated Role **MANAGER**: Manager of the Identity making the request **GOVERNANCE_GROUP**: A Governance Group, the ID of which is specified by the **approverId** field **WORKFLOW**: A Workflow, the ID of which is specified by the **approverId** field. Workflow is exclusive to other types of approvals and License required. **ALL_OWNERS**: All owners of the Role, including the primary owner and any secondary owners **ADDITIONAL_OWNER**: An additional owner of the Role, the ID of which is specified by the **approverId** field **ADDITIONAL_GOVERNANCE_GROUP**: An additional Governance Group, the ID of which is specified by the **approverId** field * @type {string} * @memberof ApprovalSchemeForRole */ 'approverType'?: ApprovalSchemeForRoleApproverTypeEnum; /** * Id of the specific approver, used when approverType is GOVERNANCE_GROUP, WORKFLOW, or ADDITIONAL_GOVERNANCE_GROUP. * @type {string} * @memberof ApprovalSchemeForRole */ 'approverId'?: string | null; } export const ApprovalSchemeForRoleApproverTypeEnum = { Owner: 'OWNER', Manager: 'MANAGER', GovernanceGroup: 'GOVERNANCE_GROUP', Workflow: 'WORKFLOW', AllOwners: 'ALL_OWNERS', AdditionalOwner: 'ADDITIONAL_OWNER', AdditionalGovernanceGroup: 'ADDITIONAL_GOVERNANCE_GROUP' } as const; export type ApprovalSchemeForRoleApproverTypeEnum = typeof ApprovalSchemeForRoleApproverTypeEnum[keyof typeof ApprovalSchemeForRoleApproverTypeEnum]; /** * * @export * @interface ArrayInner */ export interface ArrayInner { } /** * * @export * @interface AttributeDTO */ export interface AttributeDTO { /** * Technical name of the Attribute. This is unique and cannot be changed after creation. * @type {string} * @memberof AttributeDTO */ 'key'?: string; /** * The display name of the key. * @type {string} * @memberof AttributeDTO */ 'name'?: string; /** * Indicates whether the attribute can have multiple values. * @type {boolean} * @memberof AttributeDTO */ 'multiselect'?: boolean; /** * The status of the Attribute. * @type {string} * @memberof AttributeDTO */ 'status'?: string; /** * The type of the Attribute. This can be either \"custom\" or \"governance\". * @type {string} * @memberof AttributeDTO */ 'type'?: string; /** * An array of object types this attributes values can be applied to. Possible values are \"all\" or \"entitlement\". Value \"all\" means this attribute can be used with all object types that are supported. * @type {Array} * @memberof AttributeDTO */ 'objectTypes'?: Array | null; /** * The description of the Attribute. * @type {string} * @memberof AttributeDTO */ 'description'?: string; /** * * @type {Array} * @memberof AttributeDTO */ 'values'?: Array | null; } /** * * @export * @interface AttributeDTOList */ export interface AttributeDTOList { /** * * @type {Array} * @memberof AttributeDTOList */ 'attributes'?: Array | null; } /** * * @export * @interface AttributeValueDTO */ export interface AttributeValueDTO { /** * Technical name of the Attribute value. This is unique and cannot be changed after creation. * @type {string} * @memberof AttributeValueDTO */ 'value'?: string; /** * The display name of the Attribute value. * @type {string} * @memberof AttributeValueDTO */ 'name'?: string; /** * The status of the Attribute value. * @type {string} * @memberof AttributeValueDTO */ 'status'?: string; } /** * A dimension attribute * @export * @interface DimensionAttribute */ export interface DimensionAttribute { /** * Name of the attribute * @type {string} * @memberof DimensionAttribute */ 'name'?: string; /** * Display name of the attribute * @type {string} * @memberof DimensionAttribute */ 'displayName'?: string; /** * If an attribute is derived, its value comes from the identity. Otherwise, it can be provided with access request * @type {boolean} * @memberof DimensionAttribute */ 'derived'?: boolean; } /** * * @export * @interface DimensionRef */ export interface DimensionRef { /** * The type of the object to which this reference applies * @type {string} * @memberof DimensionRef */ 'type'?: DimensionRefTypeEnum; /** * ID of the object to which this reference applies * @type {string} * @memberof DimensionRef */ 'id'?: string; /** * Human-readable display name of the object to which this reference applies * @type {string} * @memberof DimensionRef */ 'name'?: string; } export const DimensionRefTypeEnum = { Dimension: 'DIMENSION' } as const; export type DimensionRefTypeEnum = typeof DimensionRefTypeEnum[keyof typeof DimensionRefTypeEnum]; /** * Contains a list of dimension attributes. Required only for Dynamic Roles * @export * @interface DimensionSchema */ export interface DimensionSchema { /** * * @type {Array} * @memberof DimensionSchema */ 'dimensionAttributes'?: Array; } /** * An enumeration of the types of DTOs supported within the IdentityNow infrastructure. * @export * @enum {string} */ export const DtoType = { AccountCorrelationConfig: 'ACCOUNT_CORRELATION_CONFIG', AccessProfile: 'ACCESS_PROFILE', AccessRequestApproval: 'ACCESS_REQUEST_APPROVAL', Account: 'ACCOUNT', Application: 'APPLICATION', Campaign: 'CAMPAIGN', CampaignFilter: 'CAMPAIGN_FILTER', Certification: 'CERTIFICATION', Cluster: 'CLUSTER', ConnectorSchema: 'CONNECTOR_SCHEMA', Entitlement: 'ENTITLEMENT', GovernanceGroup: 'GOVERNANCE_GROUP', Identity: 'IDENTITY', IdentityProfile: 'IDENTITY_PROFILE', IdentityRequest: 'IDENTITY_REQUEST', MachineIdentity: 'MACHINE_IDENTITY', LifecycleState: 'LIFECYCLE_STATE', PasswordPolicy: 'PASSWORD_POLICY', Role: 'ROLE', Rule: 'RULE', SodPolicy: 'SOD_POLICY', Source: 'SOURCE', Tag: 'TAG', TagCategory: 'TAG_CATEGORY', TaskResult: 'TASK_RESULT', ReportResult: 'REPORT_RESULT', SodViolation: 'SOD_VIOLATION', AccountActivity: 'ACCOUNT_ACTIVITY', Workgroup: 'WORKGROUP' } as const; export type DtoType = typeof DtoType[keyof typeof DtoType]; /** * * @export * @interface Entitlement */ export interface Entitlement { /** * The entitlement id * @type {string} * @memberof Entitlement */ 'id'?: string; /** * The entitlement name * @type {string} * @memberof Entitlement */ 'name'?: string; /** * The entitlement attribute name * @type {string} * @memberof Entitlement */ 'attribute'?: string; /** * The value of the entitlement * @type {string} * @memberof Entitlement */ 'value'?: string; /** * The object type of the entitlement from the source schema * @type {string} * @memberof Entitlement */ 'sourceSchemaObjectType'?: string; /** * The description of the entitlement * @type {string} * @memberof Entitlement */ 'description'?: string | null; /** * True if the entitlement is privileged * @type {boolean} * @memberof Entitlement */ 'privileged'?: boolean; /** * True if the entitlement is cloud governed * @type {boolean} * @memberof Entitlement */ 'cloudGoverned'?: boolean; /** * True if the entitlement is able to be directly requested * @type {boolean} * @memberof Entitlement */ 'requestable'?: boolean; /** * * @type {EntitlementOwner} * @memberof Entitlement */ 'owner'?: EntitlementOwner | null; /** * List of additional owner references beyond the primary owner. Each entry may be an identity (IDENTITY) or a governance group (GOVERNANCE_GROUP). * @type {Array} * @memberof Entitlement */ 'additionalOwners'?: Array | null; /** * A map of entitlement fields that have been manually updated. The key is the field name in UPPER_SNAKE_CASE format, and the value is true or false to indicate if the field has been updated. * @type {{ [key: string]: any; }} * @memberof Entitlement */ 'manuallyUpdatedFields'?: { [key: string]: any; } | null; /** * * @type {EntitlementAccessModelMetadata} * @memberof Entitlement */ 'accessModelMetadata'?: EntitlementAccessModelMetadata; /** * Time when the entitlement was created * @type {string} * @memberof Entitlement */ 'created'?: string; /** * Time when the entitlement was last modified * @type {string} * @memberof Entitlement */ 'modified'?: string; /** * * @type {EntitlementSource} * @memberof Entitlement */ 'source'?: EntitlementSource; /** * A map of free-form key-value pairs from the source system * @type {{ [key: string]: any; }} * @memberof Entitlement */ 'attributes'?: { [key: string]: any; }; /** * List of IDs of segments, if any, to which this Entitlement is assigned. * @type {Array} * @memberof Entitlement */ 'segments'?: Array | null; /** * * @type {Array} * @memberof Entitlement */ 'directPermissions'?: Array; } /** * Additional data to classify the entitlement * @export * @interface EntitlementAccessModelMetadata */ export interface EntitlementAccessModelMetadata { /** * * @type {Array} * @memberof EntitlementAccessModelMetadata */ 'attributes'?: Array; } /** * The identity that owns the entitlement * @export * @interface EntitlementOwner */ export interface EntitlementOwner { /** * The identity ID * @type {string} * @memberof EntitlementOwner */ 'id'?: string; /** * The type of object * @type {string} * @memberof EntitlementOwner */ 'type'?: EntitlementOwnerTypeEnum; /** * The display name of the identity * @type {string} * @memberof EntitlementOwner */ 'name'?: string; } export const EntitlementOwnerTypeEnum = { Identity: 'IDENTITY' } as const; export type EntitlementOwnerTypeEnum = typeof EntitlementOwnerTypeEnum[keyof typeof EntitlementOwnerTypeEnum]; /** * Entitlement including a specific set of access. * @export * @interface EntitlementRef */ export interface EntitlementRef { /** * Entitlement\'s DTO type. * @type {string} * @memberof EntitlementRef */ 'type'?: EntitlementRefTypeEnum; /** * Entitlement\'s ID. * @type {string} * @memberof EntitlementRef */ 'id'?: string; /** * Entitlement\'s display name. * @type {string} * @memberof EntitlementRef */ 'name'?: string | null; } export const EntitlementRefTypeEnum = { Entitlement: 'ENTITLEMENT' } as const; export type EntitlementRefTypeEnum = typeof EntitlementRefTypeEnum[keyof typeof EntitlementRefTypeEnum]; /** * * @export * @interface EntitlementSource */ export interface EntitlementSource { /** * The source ID * @type {string} * @memberof EntitlementSource */ 'id'?: string; /** * The source type, will always be \"SOURCE\" * @type {string} * @memberof EntitlementSource */ 'type'?: string; /** * The source name * @type {string} * @memberof EntitlementSource */ 'name'?: string; } /** * * @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; } /** * A JSONPatch Operation as defined by [RFC 6902 - JSON Patch](https://tools.ietf.org/html/rfc6902) * @export * @interface JsonPatchOperation */ export interface JsonPatchOperation { /** * The operation to be performed * @type {string} * @memberof JsonPatchOperation */ 'op': JsonPatchOperationOpEnum; /** * A string JSON Pointer representing the target path to an element to be affected by the operation * @type {string} * @memberof JsonPatchOperation */ 'path': string; /** * * @type {JsonPatchOperationValue} * @memberof JsonPatchOperation */ 'value'?: JsonPatchOperationValue; } export const JsonPatchOperationOpEnum = { Add: 'add', Remove: 'remove', Replace: 'replace', Move: 'move', Copy: 'copy', Test: 'test' } as const; export type JsonPatchOperationOpEnum = typeof JsonPatchOperationOpEnum[keyof typeof JsonPatchOperationOpEnum]; /** * @type JsonPatchOperationValue * The value to be used for the operation, required for \"add\" and \"replace\" operations * @export */ export type JsonPatchOperationValue = Array | boolean | number | object | string; /** * * @export * @interface ListRolesV1401Response */ export interface ListRolesV1401Response { /** * A message describing the error * @type {any} * @memberof ListRolesV1401Response */ 'error'?: any; } /** * * @export * @interface ListRolesV1429Response */ export interface ListRolesV1429Response { /** * A message describing the error * @type {any} * @memberof ListRolesV1429Response */ '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 const LocaleOrigin = { Default: 'DEFAULT', Request: 'REQUEST' } as const; export type LocaleOrigin = typeof LocaleOrigin[keyof typeof LocaleOrigin]; /** * Owner of the object. * @export * @interface OwnerReference */ export interface OwnerReference { /** * Owner type. This field must be either left null or set to \'IDENTITY\' on input, otherwise a 400 Bad Request error will result. * @type {string} * @memberof OwnerReference */ 'type'?: OwnerReferenceTypeEnum; /** * Owner\'s identity ID. * @type {string} * @memberof OwnerReference */ 'id'?: string; /** * Owner\'s name. It may be left null or omitted in a POST or PATCH. If set, it must match the current value of the owner\'s display name, otherwise a 400 Bad Request error will result. * @type {string} * @memberof OwnerReference */ 'name'?: string; } export const OwnerReferenceTypeEnum = { Identity: 'IDENTITY' } as const; export type OwnerReferenceTypeEnum = typeof OwnerReferenceTypeEnum[keyof typeof OwnerReferenceTypeEnum]; /** * Simplified DTO for the Permission objects stored in SailPoint\'s database. The data is aggregated from customer systems and is free-form, so its appearance can vary largely between different clients/customers. * @export * @interface PermissionDTO */ export interface PermissionDTO { /** * All the rights (e.g. actions) that this permission allows on the target * @type {Array} * @memberof PermissionDTO */ 'rights'?: Array; /** * The target the permission would grants rights on. * @type {string} * @memberof PermissionDTO */ 'target'?: string; } /** * * @export * @interface RequestabilityForRole */ export interface RequestabilityForRole { /** * Whether the requester of the containing object must provide comments justifying the request * @type {boolean} * @memberof RequestabilityForRole */ 'commentsRequired'?: boolean | null; /** * Whether an approver must provide comments when denying the request * @type {boolean} * @memberof RequestabilityForRole */ 'denialCommentsRequired'?: boolean | null; /** * Indicates whether reauthorization is required for the request. * @type {boolean} * @memberof RequestabilityForRole */ 'reauthorizationRequired'?: boolean | null; /** * Indicates whether the requester of the containing object must provide access end date. * @type {boolean} * @memberof RequestabilityForRole */ 'requireEndDate'?: boolean; /** * * @type {AccessDuration} * @memberof RequestabilityForRole */ 'maxPermittedAccessDuration'?: AccessDuration | null; /** * List describing the steps in approving the request * @type {Array} * @memberof RequestabilityForRole */ 'approvalSchemes'?: Array; /** * * @type {DimensionSchema} * @memberof RequestabilityForRole */ 'dimensionSchema'?: DimensionSchema; /** * The ID of the form definition used for the access request. If specified, the form is presented to the requester during the access request process. * @type {string} * @memberof RequestabilityForRole */ 'formDefinitionId'?: string | null; } /** * * @export * @interface RevocabilityForRole */ export interface RevocabilityForRole { /** * Whether the requester of the containing object must provide comments justifying the request * @type {boolean} * @memberof RevocabilityForRole */ 'commentsRequired'?: boolean | null; /** * Whether an approver must provide comments when denying the request * @type {boolean} * @memberof RevocabilityForRole */ 'denialCommentsRequired'?: boolean | null; /** * List describing the steps in approving the revocation request * @type {Array} * @memberof RevocabilityForRole */ 'approvalSchemes'?: Array; } /** * A Role * @export * @interface Role */ export interface Role { /** * The id of the Role. This field must be left null when creating an Role, otherwise a 400 Bad Request error will result. * @type {string} * @memberof Role */ 'id'?: string; /** * The human-readable display name of the Role * @type {string} * @memberof Role */ 'name': string; /** * Date the Role was created * @type {string} * @memberof Role */ 'created'?: string; /** * Date the Role was last modified. * @type {string} * @memberof Role */ 'modified'?: string; /** * A human-readable description of the Role * @type {string} * @memberof Role */ 'description'?: string | null; /** * * @type {OwnerReference} * @memberof Role */ 'owner': OwnerReference | null; /** * List of additional owner references beyond the primary owner. Each entry may be an identity (IDENTITY) or a governance group (GOVERNANCE_GROUP). * @type {Array} * @memberof Role */ 'additionalOwners'?: Array | null; /** * * @type {Array} * @memberof Role */ 'accessProfiles'?: Array | null; /** * * @type {Array} * @memberof Role */ 'entitlements'?: Array; /** * * @type {RoleMembershipSelector} * @memberof Role */ 'membership'?: RoleMembershipSelector | null; /** * This field is not directly modifiable and is generally expected to be *null*. In very rare instances, some Roles may have been created using membership selection criteria that are no longer fully supported. While these Roles will still work, they should be migrated to STANDARD or IDENTITY_LIST selection criteria. This field exists for informational purposes as an aid to such migration. * @type {{ [key: string]: any; }} * @memberof Role */ 'legacyMembershipInfo'?: { [key: string]: any; } | null; /** * Whether the Role is enabled or not. * @type {boolean} * @memberof Role */ 'enabled'?: boolean; /** * Whether the Role can be the target of access requests. * @type {boolean} * @memberof Role */ 'requestable'?: boolean; /** * * @type {RequestabilityForRole} * @memberof Role */ 'accessRequestConfig'?: RequestabilityForRole; /** * * @type {RevocabilityForRole} * @memberof Role */ 'revocationRequestConfig'?: RevocabilityForRole; /** * List of IDs of segments, if any, to which this Role is assigned. * @type {Array} * @memberof Role */ 'segments'?: Array | null; /** * Whether the Role is dimensional. * @type {boolean} * @memberof Role */ 'dimensional'?: boolean | null; /** * List of references to dimensions to which this Role is assigned. This field is only relevant if the Role is dimensional. * @type {Array} * @memberof Role */ 'dimensionRefs'?: Array | null; /** * * @type {AttributeDTOList} * @memberof Role */ 'accessModelMetadata'?: AttributeDTOList; /** * The privilege level of the role, if applicable. * @type {string} * @memberof Role */ 'privilegeLevel'?: string | null; } /** * Type which indicates how a particular Identity obtained a particular Role * @export * @enum {string} */ export const RoleAssignmentSourceType = { AccessRequest: 'ACCESS_REQUEST', RoleMembership: 'ROLE_MEMBERSHIP' } as const; export type RoleAssignmentSourceType = typeof RoleAssignmentSourceType[keyof typeof RoleAssignmentSourceType]; /** * * @export * @interface RoleBulkDeleteRequest */ export interface RoleBulkDeleteRequest { /** * List of IDs of Roles to be deleted. * @type {Array} * @memberof RoleBulkDeleteRequest */ 'roleIds': Array; } /** * * @export * @interface RoleBulkUpdateResponse */ export interface RoleBulkUpdateResponse { /** * ID of the task which is executing the bulk update. This also used in to the bulk-update/_** API to track status. * @type {string} * @memberof RoleBulkUpdateResponse */ 'id'?: string; /** * Type of the bulk update object. * @type {string} * @memberof RoleBulkUpdateResponse */ 'type'?: string; /** * The status of the bulk update request, could also checked by getBulkUpdateStatus API * @type {string} * @memberof RoleBulkUpdateResponse */ 'status'?: RoleBulkUpdateResponseStatusEnum; /** * Time when the bulk update request was created * @type {string} * @memberof RoleBulkUpdateResponse */ 'created'?: string; } export const RoleBulkUpdateResponseStatusEnum = { Created: 'CREATED', PreProcess: 'PRE_PROCESS', PreProcessCompleted: 'PRE_PROCESS_COMPLETED', PostProcess: 'POST_PROCESS', Completed: 'COMPLETED', ChunkPending: 'CHUNK_PENDING', ChunkProcessing: 'CHUNK_PROCESSING' } as const; export type RoleBulkUpdateResponseStatusEnum = typeof RoleBulkUpdateResponseStatusEnum[keyof typeof RoleBulkUpdateResponseStatusEnum]; /** * Refers to a specific Identity attribute, Account attibute, or Entitlement used in Role membership criteria * @export * @interface RoleCriteriaKey */ export interface RoleCriteriaKey { /** * * @type {RoleCriteriaKeyType} * @memberof RoleCriteriaKey */ 'type': RoleCriteriaKeyType; /** * The name of the attribute or entitlement to which the associated criteria applies. * @type {string} * @memberof RoleCriteriaKey */ 'property': string; /** * ID of the Source from which an account attribute or entitlement is drawn. Required if type is ACCOUNT or ENTITLEMENT * @type {string} * @memberof RoleCriteriaKey */ 'sourceId'?: string | null; } /** * Indicates whether the associated criteria represents an expression on identity attributes, account attributes, or entitlements, respectively. * @export * @enum {string} */ export const RoleCriteriaKeyType = { Identity: 'IDENTITY', Account: 'ACCOUNT', Entitlement: 'ENTITLEMENT' } as const; export type RoleCriteriaKeyType = typeof RoleCriteriaKeyType[keyof typeof RoleCriteriaKeyType]; /** * Defines STANDARD type Role membership * @export * @interface RoleCriteriaLevel1 */ export interface RoleCriteriaLevel1 { /** * * @type {RoleCriteriaOperation} * @memberof RoleCriteriaLevel1 */ 'operation'?: RoleCriteriaOperation; /** * * @type {RoleCriteriaKey} * @memberof RoleCriteriaLevel1 */ 'key'?: RoleCriteriaKey | null; /** * String value to test the Identity attribute, Account attribute, or Entitlement specified in the key w/r/t the specified operation. If this criteria is a leaf node, that is, if the operation is one of EQUALS, NOT_EQUALS, CONTAINS, DOES_NOT_CONTAIN, STARTS_WITH, or ENDS_WITH, this field is required. Otherwise, specifying it is an error. * @type {string} * @memberof RoleCriteriaLevel1 */ 'stringValue'?: string | null; /** * Array of child criteria. Required if the operation is AND or OR, otherwise it must be left null. A maximum of three levels of criteria are supported, including leaf nodes. Additionally, AND nodes can only be children or OR nodes and vice-versa. * @type {Array} * @memberof RoleCriteriaLevel1 */ 'children'?: Array | null; } /** * Defines STANDARD type Role membership * @export * @interface RoleCriteriaLevel2 */ export interface RoleCriteriaLevel2 { /** * * @type {RoleCriteriaOperation} * @memberof RoleCriteriaLevel2 */ 'operation'?: RoleCriteriaOperation; /** * * @type {RoleCriteriaKey} * @memberof RoleCriteriaLevel2 */ 'key'?: RoleCriteriaKey | null; /** * String value to test the Identity attribute, Account attribute, or Entitlement specified in the key w/r/t the specified operation. If this criteria is a leaf node, that is, if the operation is one of EQUALS, NOT_EQUALS, CONTAINS, DOES_NOT_CONTAIN, STARTS_WITH, or ENDS_WITH, this field is required. Otherwise, specifying it is an error. * @type {string} * @memberof RoleCriteriaLevel2 */ 'stringValue'?: string | null; /** * Array of child criteria. Required if the operation is AND or OR, otherwise it must be left null. A maximum of three levels of criteria are supported, including leaf nodes. Additionally, AND nodes can only be children or OR nodes and vice-versa. * @type {Array} * @memberof RoleCriteriaLevel2 */ 'children'?: Array | null; } /** * Defines STANDARD type Role membership * @export * @interface RoleCriteriaLevel3 */ export interface RoleCriteriaLevel3 { /** * * @type {RoleCriteriaOperation} * @memberof RoleCriteriaLevel3 */ 'operation'?: RoleCriteriaOperation; /** * * @type {RoleCriteriaKey} * @memberof RoleCriteriaLevel3 */ 'key'?: RoleCriteriaKey | null; /** * String value to test the Identity attribute, Account attribute, or Entitlement specified in the key w/r/t the specified operation. If this criteria is a leaf node, that is, if the operation is one of EQUALS, NOT_EQUALS, CONTAINS, DOES_NOT_CONTAIN, STARTS_WITH, or ENDS_WITH, this field is required. Otherwise, specifying it is an error. * @type {string} * @memberof RoleCriteriaLevel3 */ 'stringValue'?: string | null; } /** * An operation * @export * @enum {string} */ export const RoleCriteriaOperation = { Equals: 'EQUALS', NotEquals: 'NOT_EQUALS', Contains: 'CONTAINS', DoesNotContain: 'DOES_NOT_CONTAIN', StartsWith: 'STARTS_WITH', EndsWith: 'ENDS_WITH', GreaterThan: 'GREATER_THAN', LessThan: 'LESS_THAN', GreaterThanEquals: 'GREATER_THAN_EQUALS', LessThanEquals: 'LESS_THAN_EQUALS', And: 'AND', Or: 'OR' } as const; export type RoleCriteriaOperation = typeof RoleCriteriaOperation[keyof typeof RoleCriteriaOperation]; /** * * @export * @interface RoleGetAllBulkUpdateResponse */ export interface RoleGetAllBulkUpdateResponse { /** * ID of the task which is executing the bulk update. This also used in to the bulk-update/_** API to track status. * @type {string} * @memberof RoleGetAllBulkUpdateResponse */ 'id'?: string; /** * Type of the bulk update object. * @type {string} * @memberof RoleGetAllBulkUpdateResponse */ 'type'?: string; /** * The status of the bulk update request, only list unfinished request\'s status, the status could also checked by getBulkUpdateStatus API * @type {string} * @memberof RoleGetAllBulkUpdateResponse */ 'status'?: RoleGetAllBulkUpdateResponseStatusEnum; /** * Time when the bulk update request was created * @type {string} * @memberof RoleGetAllBulkUpdateResponse */ 'created'?: string; } export const RoleGetAllBulkUpdateResponseStatusEnum = { Created: 'CREATED', PreProcess: 'PRE_PROCESS', PostProcess: 'POST_PROCESS', ChunkPending: 'CHUNK_PENDING', ChunkProcessing: 'CHUNK_PROCESSING' } as const; export type RoleGetAllBulkUpdateResponseStatusEnum = typeof RoleGetAllBulkUpdateResponseStatusEnum[keyof typeof RoleGetAllBulkUpdateResponseStatusEnum]; /** * A subset of the fields of an Identity which is a member of a Role. * @export * @interface RoleIdentity */ export interface RoleIdentity { /** * The ID of the Identity * @type {string} * @memberof RoleIdentity */ 'id'?: string; /** * The alias / username of the Identity * @type {string} * @memberof RoleIdentity */ 'aliasName'?: string; /** * The human-readable display name of the Identity * @type {string} * @memberof RoleIdentity */ 'name'?: string; /** * Email address of the Identity * @type {string} * @memberof RoleIdentity */ 'email'?: string; /** * * @type {RoleAssignmentSourceType} * @memberof RoleIdentity */ 'roleAssignmentSource'?: RoleAssignmentSourceType; } /** * AMMFilterValues * @export * @interface RoleListFilterDTO */ export interface RoleListFilterDTO { /** * Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, sw* **created**: *gt, lt, ge, le* **modified**: *gt, lt, ge, le* **owner.id**: *eq, in* **requestable**: *eq* * @type {string} * @memberof RoleListFilterDTO */ 'filters'?: string | null; /** * * @type {Array} * @memberof RoleListFilterDTO */ 'ammKeyValues'?: Array | null; } /** * * @export * @interface RoleListFilterDTOAmmKeyValuesInner */ export interface RoleListFilterDTOAmmKeyValuesInner { /** * attribute key of a metadata. * @type {string} * @memberof RoleListFilterDTOAmmKeyValuesInner */ 'attribute'?: string; /** * A list of attribute key names to filter roles. If the values is empty, will only filter by attribute key. * @type {Array} * @memberof RoleListFilterDTOAmmKeyValuesInner */ 'values'?: Array; } /** * A reference to an Identity in an IDENTITY_LIST role membership criteria. * @export * @interface RoleMembershipIdentity */ export interface RoleMembershipIdentity { /** * * @type {DtoType} * @memberof RoleMembershipIdentity */ 'type'?: DtoType; /** * Identity id * @type {string} * @memberof RoleMembershipIdentity */ 'id'?: string; /** * Human-readable display name of the Identity. * @type {string} * @memberof RoleMembershipIdentity */ 'name'?: string | null; /** * User name of the Identity * @type {string} * @memberof RoleMembershipIdentity */ 'aliasName'?: string | null; } /** * When present, specifies that the Role is to be granted to Identities which either satisfy specific criteria or which are members of a given list of Identities. * @export * @interface RoleMembershipSelector */ export interface RoleMembershipSelector { /** * * @type {RoleMembershipSelectorType} * @memberof RoleMembershipSelector */ 'type'?: RoleMembershipSelectorType; /** * * @type {RoleCriteriaLevel1} * @memberof RoleMembershipSelector */ 'criteria'?: RoleCriteriaLevel1 | null; /** * Defines role membership as being exclusive to the specified Identities, when type is IDENTITY_LIST. * @type {Array} * @memberof RoleMembershipSelector */ 'identities'?: Array | null; } /** * This enum characterizes the type of a Role\'s membership selector. Only the following two are fully supported: STANDARD: Indicates that Role membership is defined in terms of a criteria expression IDENTITY_LIST: Indicates that Role membership is conferred on the specific identities listed * @export * @enum {string} */ export const RoleMembershipSelectorType = { Standard: 'STANDARD', IdentityList: 'IDENTITY_LIST' } as const; export type RoleMembershipSelectorType = typeof RoleMembershipSelectorType[keyof typeof RoleMembershipSelectorType]; /** * This API initialize a a Bulk update by filter request of Role metadata. The maximum meta data values that one single role assigned can not exceed 25. Custom metadata need suit licensed. * @export * @interface RoleMetadataBulkUpdateByFilterRequest */ export interface RoleMetadataBulkUpdateByFilterRequest { /** * Filtering is supported for the following fields and operators: **id** : *eq, in* **name** : *eq, sw* **created** : *gt, lt, ge, le* **modified** : *gt, lt, ge, le* **owner.id** : *eq, in* **requestable** : *eq* * @type {string} * @memberof RoleMetadataBulkUpdateByFilterRequest */ 'filters': string; /** * The operation to be performed * @type {string} * @memberof RoleMetadataBulkUpdateByFilterRequest */ 'operation': RoleMetadataBulkUpdateByFilterRequestOperationEnum; /** * The choice of update scope. * @type {string} * @memberof RoleMetadataBulkUpdateByFilterRequest */ 'replaceScope'?: RoleMetadataBulkUpdateByFilterRequestReplaceScopeEnum; /** * The metadata to be updated, including attribute key and value. * @type {Array} * @memberof RoleMetadataBulkUpdateByFilterRequest */ 'values': Array; } export const RoleMetadataBulkUpdateByFilterRequestOperationEnum = { Add: 'ADD', Remove: 'REMOVE', Replace: 'REPLACE' } as const; export type RoleMetadataBulkUpdateByFilterRequestOperationEnum = typeof RoleMetadataBulkUpdateByFilterRequestOperationEnum[keyof typeof RoleMetadataBulkUpdateByFilterRequestOperationEnum]; export const RoleMetadataBulkUpdateByFilterRequestReplaceScopeEnum = { All: 'ALL', Attribute: 'ATTRIBUTE' } as const; export type RoleMetadataBulkUpdateByFilterRequestReplaceScopeEnum = typeof RoleMetadataBulkUpdateByFilterRequestReplaceScopeEnum[keyof typeof RoleMetadataBulkUpdateByFilterRequestReplaceScopeEnum]; /** * * @export * @interface RoleMetadataBulkUpdateByFilterRequestValuesInner */ export interface RoleMetadataBulkUpdateByFilterRequestValuesInner { /** * the key of metadata attribute * @type {string} * @memberof RoleMetadataBulkUpdateByFilterRequestValuesInner */ 'attributeKey'?: string; /** * the values of attribute to be updated * @type {Array} * @memberof RoleMetadataBulkUpdateByFilterRequestValuesInner */ 'values': Array | null; } /** * This API initialize a Bulk update by Id request of Role metadata. The maximum role count in a single update request is 3000. The maximum meta data values that one single role assigned can not exceed 25. Custom metadata need suit licensed. * @export * @interface RoleMetadataBulkUpdateByIdRequest */ export interface RoleMetadataBulkUpdateByIdRequest { /** * Roles\' Id to be updated * @type {Array} * @memberof RoleMetadataBulkUpdateByIdRequest */ 'roles': Array; /** * The operation to be performed * @type {string} * @memberof RoleMetadataBulkUpdateByIdRequest */ 'operation': RoleMetadataBulkUpdateByIdRequestOperationEnum; /** * The choice of update scope. * @type {string} * @memberof RoleMetadataBulkUpdateByIdRequest */ 'replaceScope'?: RoleMetadataBulkUpdateByIdRequestReplaceScopeEnum; /** * The metadata to be updated, including attribute key and value. * @type {Array} * @memberof RoleMetadataBulkUpdateByIdRequest */ 'values': Array; } export const RoleMetadataBulkUpdateByIdRequestOperationEnum = { Add: 'ADD', Remove: 'REMOVE', Replace: 'REPLACE' } as const; export type RoleMetadataBulkUpdateByIdRequestOperationEnum = typeof RoleMetadataBulkUpdateByIdRequestOperationEnum[keyof typeof RoleMetadataBulkUpdateByIdRequestOperationEnum]; export const RoleMetadataBulkUpdateByIdRequestReplaceScopeEnum = { All: 'ALL', Attribute: 'ATTRIBUTE' } as const; export type RoleMetadataBulkUpdateByIdRequestReplaceScopeEnum = typeof RoleMetadataBulkUpdateByIdRequestReplaceScopeEnum[keyof typeof RoleMetadataBulkUpdateByIdRequestReplaceScopeEnum]; /** * * @export * @interface RoleMetadataBulkUpdateByIdRequestValuesInner */ export interface RoleMetadataBulkUpdateByIdRequestValuesInner { /** * the key of metadata attribute * @type {string} * @memberof RoleMetadataBulkUpdateByIdRequestValuesInner */ 'attribute': string; /** * the values of attribute to be updated * @type {Array} * @memberof RoleMetadataBulkUpdateByIdRequestValuesInner */ 'values': Array | null; } /** * Bulk update by query request of Role metadata. The maximum meta data values that one single role assigned can not exceed 25. Custom metadata need suit licensed. For more information about the query could refer to [V3 API Perform Search](https://developer.sailpoint.com/docs/api/search-post-v-1) * @export * @interface RoleMetadataBulkUpdateByQueryRequest */ export interface RoleMetadataBulkUpdateByQueryRequest { /** * query the identities to be updated * @type {object} * @memberof RoleMetadataBulkUpdateByQueryRequest */ 'query': object; /** * The operation to be performed * @type {string} * @memberof RoleMetadataBulkUpdateByQueryRequest */ 'operation': RoleMetadataBulkUpdateByQueryRequestOperationEnum; /** * The choice of update scope. * @type {string} * @memberof RoleMetadataBulkUpdateByQueryRequest */ 'replaceScope'?: RoleMetadataBulkUpdateByQueryRequestReplaceScopeEnum; /** * The metadata to be updated, including attribute key and value. * @type {Array} * @memberof RoleMetadataBulkUpdateByQueryRequest */ 'values': Array; } export const RoleMetadataBulkUpdateByQueryRequestOperationEnum = { Add: 'ADD', Remove: 'REMOVE', Replace: 'REPLACE' } as const; export type RoleMetadataBulkUpdateByQueryRequestOperationEnum = typeof RoleMetadataBulkUpdateByQueryRequestOperationEnum[keyof typeof RoleMetadataBulkUpdateByQueryRequestOperationEnum]; export const RoleMetadataBulkUpdateByQueryRequestReplaceScopeEnum = { All: 'ALL', Attribute: 'ATTRIBUTE' } as const; export type RoleMetadataBulkUpdateByQueryRequestReplaceScopeEnum = typeof RoleMetadataBulkUpdateByQueryRequestReplaceScopeEnum[keyof typeof RoleMetadataBulkUpdateByQueryRequestReplaceScopeEnum]; /** * * @export * @interface RoleMetadataBulkUpdateByQueryRequestValuesInner */ export interface RoleMetadataBulkUpdateByQueryRequestValuesInner { /** * the key of metadata attribute * @type {string} * @memberof RoleMetadataBulkUpdateByQueryRequestValuesInner */ 'attributeKey'?: string; /** * the values of attribute to be updated * @type {Array} * @memberof RoleMetadataBulkUpdateByQueryRequestValuesInner */ 'attributeValue'?: Array; } /** * Task result. * @export * @interface TaskResultDto */ export interface TaskResultDto { /** * Task result DTO type. * @type {string} * @memberof TaskResultDto */ 'type'?: TaskResultDtoTypeEnum; /** * Task result ID. * @type {string} * @memberof TaskResultDto */ 'id'?: string; /** * Task result display name. * @type {string} * @memberof TaskResultDto */ 'name'?: string | null; } export const TaskResultDtoTypeEnum = { TaskResult: 'TASK_RESULT' } as const; export type TaskResultDtoTypeEnum = typeof TaskResultDtoTypeEnum[keyof typeof TaskResultDtoTypeEnum]; /** * RolesApi - axios parameter creator * @export */ export const RolesApiAxiosParamCreator = function (configuration?: Configuration) { return { /** * This API creates a role. You must have a token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority to call this API. In addition, a ROLE_SUBADMIN may not create a role including an access profile if that access profile is associated with a source the ROLE_SUBADMIN is not associated with themselves. The maximum supported length for the description field is 2000 characters. Longer descriptions will be preserved for existing roles. However, any new roles as well as any updates to existing descriptions will be limited to 2000 characters. * @summary Create a role * @param {Role} role * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ createRoleV1: async (role: Role, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'role' is not null or undefined assertParamExists('createRoleV1', 'role', role) const localVarPath = `/roles/v1`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(role, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This endpoint initiates a bulk deletion of one or more roles. When the request is successful, the endpoint returns the bulk delete\'s task result ID. To follow the task, you can use [Get Task Status by ID](https://developer.sailpoint.com/docs/api/get-task-status-v-1), which will return the task result\'s status and information. This endpoint can only bulk delete up to a limit of 50 roles per request. A user with ROLE_SUBADMIN authority can only call this endpoint if all roles included in the request are associated with sources with management workgroups the ROLE_SUBADMIN is a member of. * @summary Delete role(s) * @param {RoleBulkDeleteRequest} roleBulkDeleteRequest * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteBulkRolesV1: async (roleBulkDeleteRequest: RoleBulkDeleteRequest, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'roleBulkDeleteRequest' is not null or undefined assertParamExists('deleteBulkRolesV1', 'roleBulkDeleteRequest', roleBulkDeleteRequest) const localVarPath = `/roles/v1/bulk-delete`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(roleBulkDeleteRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API initialize a request to remove a single Access Model Metadata from a role by attribute key and value. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. * @summary Remove a metadata from role. * @param {string} id The role\'s id. * @param {string} attributeKey Technical name of the Attribute. * @param {string} attributeValue Technical name of the Attribute Value. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteMetadataFromRoleByKeyAndValueV1: async (id: string, attributeKey: string, attributeValue: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('deleteMetadataFromRoleByKeyAndValueV1', 'id', id) // verify required parameter 'attributeKey' is not null or undefined assertParamExists('deleteMetadataFromRoleByKeyAndValueV1', 'attributeKey', attributeKey) // verify required parameter 'attributeValue' is not null or undefined assertParamExists('deleteMetadataFromRoleByKeyAndValueV1', 'attributeValue', attributeValue) const localVarPath = `/roles/v1/{id}/access-model-metadata/{attributeKey}/values/{attributeValue}` .replace(`{${"id"}}`, encodeURIComponent(String(id))) .replace(`{${"attributeKey"}}`, encodeURIComponent(String(attributeKey))) .replace(`{${"attributeValue"}}`, encodeURIComponent(String(attributeValue))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API deletes a Role by its ID. A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. In addition, a token with ROLE_SUBADMIN authority may only call this API if all Access Profiles included in the Role are associated to Sources with management workgroups of which the ROLE_SUBADMIN is a member. * @summary Delete a role * @param {string} id ID of the Role * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteRoleV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('deleteRoleV1', 'id', id) const localVarPath = `/roles/v1/{id}` .replace(`{${"id"}}`, encodeURIComponent(String(id))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'DELETE', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API initial a request for one bulk update\'s status by bulk update Id returns the status of the bulk update process. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. * @summary Get bulk-update status by id * @param {string} id The Id of the bulk update task. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getBulkUpdateStatusByIdV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getBulkUpdateStatusByIdV1', 'id', id) const localVarPath = `/roles/v1/access-model-metadata/bulk-update/id` .replace(`{${"id"}}`, encodeURIComponent(String(id))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API returns a list of all unfinished bulk update process status of the tenant. * @summary Get bulk-update statuses * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getBulkUpdateStatusV1: async (axiosOptions: RawAxiosRequestConfig = {}): Promise => { const localVarPath = `/roles/v1/access-model-metadata/bulk-update`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * * @summary List identities assigned a role * @param {string} id ID of the Role for which the assigned Identities are to be listed * @param {number} [limit] Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {number} [offset] 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. * @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 {string} [filters] Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **aliasName**: *eq, sw* **email**: *eq, sw* **name**: *eq, sw, co* * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, aliasName, email** * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getRoleAssignedIdentitiesV1: async (id: string, limit?: number, offset?: number, count?: boolean, filters?: string, sorters?: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getRoleAssignedIdentitiesV1', 'id', id) const localVarPath = `/roles/v1/{id}/assigned-identities` .replace(`{${"id"}}`, encodeURIComponent(String(id))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (count !== undefined) { localVarQueryParameter['count'] = count; } if (filters !== undefined) { localVarQueryParameter['filters'] = filters; } if (sorters !== undefined) { localVarQueryParameter['sorters'] = sorters; } setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * Get a list of entitlements associated with a specified role. * @summary List role\'s entitlements * @param {string} id Containing role\'s ID. * @param {number} [limit] Note that for this API the maximum value for limit is 50. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {number} [offset] 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. * @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 {string} [filters] Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, sw* **attribute**: *eq, sw* **value**: *eq, sw* **created**: *gt, lt, ge, le* **modified**: *gt, lt, ge, le* **owner.id**: *eq, in* **source.id**: *eq, in* * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, attribute, value, created, modified** * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getRoleEntitlementsV1: async (id: string, limit?: number, offset?: number, count?: boolean, filters?: string, sorters?: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getRoleEntitlementsV1', 'id', id) const localVarPath = `/roles/v1/{id}/entitlements` .replace(`{${"id"}}`, encodeURIComponent(String(id))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (count !== undefined) { localVarQueryParameter['count'] = count; } if (filters !== undefined) { localVarQueryParameter['filters'] = filters; } if (sorters !== undefined) { localVarQueryParameter['sorters'] = sorters; } setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API returns a Role by its ID. A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. In addition, a token with ROLE_SUBADMIN authority may only call this API if all Access Profiles included in the Role are associated to Sources with management workgroups of which the ROLE_SUBADMIN is a member. * @summary Get a role * @param {string} id ID of the Role * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getRoleV1: async (id: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('getRoleV1', 'id', id) const localVarPath = `/roles/v1/{id}` .replace(`{${"id"}}`, encodeURIComponent(String(id))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API returns a list of Roles. A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. * @summary List roles * @param {string} [forSubadmin] If provided, filters the returned list according to what is visible to the indicated ROLE_SUBADMIN Identity. The value of the parameter is either an Identity ID, or the special value **me**, which is shorthand for the calling Identity\'s ID. A 400 Bad Request error is returned if the **for-subadmin** parameter is specified for an Identity that is not a subadmin. * @param {number} [limit] Note that for this API the maximum value for limit is 50. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {number} [offset] 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. * @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 {string} [filters] Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, sw* **created**: *gt, ge, le* **modified**: *lt, ge, le* **owner.id**: *eq, in* **requestable**: *eq* **dimensional**: *eq* * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @param {string} [forSegmentIds] If present and not empty, additionally filters Roles to those which are assigned to the Segment(s) with the specified IDs. If segmentation is currently unavailable, specifying this parameter results in an error. * @param {boolean} [includeUnsegmented] Whether or not the response list should contain unsegmented Roles. If *for-segment-ids* is absent or empty, specifying *include-unsegmented* as false results in an error. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listRolesV1: async (forSubadmin?: string, limit?: number, offset?: number, count?: boolean, filters?: string, sorters?: string, forSegmentIds?: string, includeUnsegmented?: boolean, axiosOptions: RawAxiosRequestConfig = {}): Promise => { const localVarPath = `/roles/v1`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'GET', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; if (forSubadmin !== undefined) { localVarQueryParameter['for-subadmin'] = forSubadmin; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (count !== undefined) { localVarQueryParameter['count'] = count; } if (filters !== undefined) { localVarQueryParameter['filters'] = filters; } if (sorters !== undefined) { localVarQueryParameter['sorters'] = sorters; } if (forSegmentIds !== undefined) { localVarQueryParameter['for-segment-ids'] = forSegmentIds; } if (includeUnsegmented !== undefined) { localVarQueryParameter['include-unsegmented'] = includeUnsegmented; } setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API updates an existing role using [JSON Patch](https://tools.ietf.org/html/rfc6902) syntax. The following fields are patchable: * name * description * enabled * owner * additionalOwners * accessProfiles * entitlements * membership * requestable * accessRequestConfig * revokeRequestConfig * segments * accessModelMetadata A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. In addition, a token with ROLE_SUBADMIN authority may only call this API if all access profiles included in the role are associated to Sources with management workgroups of which the ROLE_SUBADMIN is a member. The maximum supported length for the description field is 2000 characters. Longer descriptions will be preserved for existing roles, however, any new roles as well as any updates to existing descriptions will be limited to 2000 characters. When you use this API to modify a role\'s membership identities, you can only modify up to a limit of 500 membership identities at a time. * @summary Patch a specified role * @param {string} id ID of the Role to patch * @param {Array} jsonPatchOperation * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ patchRoleV1: async (id: string, jsonPatchOperation: Array, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('patchRoleV1', 'id', id) // verify required parameter 'jsonPatchOperation' is not null or undefined assertParamExists('patchRoleV1', 'jsonPatchOperation', jsonPatchOperation) const localVarPath = `/roles/v1/{id}` .replace(`{${"id"}}`, encodeURIComponent(String(id))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'PATCH', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarHeaderParameter['Content-Type'] = 'application/json-patch+json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(jsonPatchOperation, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API returns a list of Role that filter by metadata and filter, it support filter by both path parameter and attribute key and values. A token with API, ORG_ADMIN, ROLE_ADMIN, ROLE_SUBADMIN, HELPDESK, CERT_ADMIN, REPORT_ADMIN or SOURCE_ADMIN authority is required to call this API. * @summary Filter roles by metadata * @param {string} [forSubadmin] If provided, filters the returned list according to what is visible to the indicated ROLE_SUBADMIN Identity. The value of the parameter is either an Identity ID, or the special value **me**, which is shorthand for the calling Identity\'s ID. A 400 Bad Request error is returned if the **for-subadmin** parameter is specified for an Identity that is not a subadmin. * @param {number} [limit] Max number of results to return See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {number} [offset] 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. * @param {boolean} [count] Boolean indicating whether a total count is returned, factoring in any filter parameters, in the X-Total-Count response header. The value is the total size of the collection that would be returned if limit and offset were ignored. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @param {string} [forSegmentIds] If present and not empty, additionally filters Roles to those which are assigned to the Segment(s) with the specified IDs. If segmentation is currently unavailable, specifying this parameter results in an error. * @param {boolean} [includeUnsegmented] Whether or not the response list should contain unsegmented Roles. If *for-segment-ids* is absent or empty, specifying *include-unsegmented* as false results in an error. * @param {RoleListFilterDTO} [roleListFilterDTO] * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ searchRolesByFilterV1: async (forSubadmin?: string, limit?: number, offset?: number, count?: boolean, sorters?: string, forSegmentIds?: string, includeUnsegmented?: boolean, roleListFilterDTO?: RoleListFilterDTO, axiosOptions: RawAxiosRequestConfig = {}): Promise => { const localVarPath = `/roles/v1/filter`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; if (forSubadmin !== undefined) { localVarQueryParameter['for-subadmin'] = forSubadmin; } if (limit !== undefined) { localVarQueryParameter['limit'] = limit; } if (offset !== undefined) { localVarQueryParameter['offset'] = offset; } if (count !== undefined) { localVarQueryParameter['count'] = count; } if (sorters !== undefined) { localVarQueryParameter['sorters'] = sorters; } if (forSegmentIds !== undefined) { localVarQueryParameter['for-segment-ids'] = forSegmentIds; } if (includeUnsegmented !== undefined) { localVarQueryParameter['include-unsegmented'] = includeUnsegmented; } localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(roleListFilterDTO, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API initialize a request to add a single Access Model Metadata to a role by attribute key and attribute value. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum number of attributes in one role is 25. Custom metadata update, including ADD and REPLACE need suit licensed. * @summary Add a metadata to role. * @param {string} id The Id of a role * @param {string} attributeKey Technical name of the Attribute. * @param {string} attributeValue Technical name of the Attribute Value. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateAttributeKeyAndValueToRoleV1: async (id: string, attributeKey: string, attributeValue: string, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'id' is not null or undefined assertParamExists('updateAttributeKeyAndValueToRoleV1', 'id', id) // verify required parameter 'attributeKey' is not null or undefined assertParamExists('updateAttributeKeyAndValueToRoleV1', 'attributeKey', attributeKey) // verify required parameter 'attributeValue' is not null or undefined assertParamExists('updateAttributeKeyAndValueToRoleV1', 'attributeValue', attributeValue) const localVarPath = `/roles/v1/{id}/access-model-metadata/{attributeKey}/values/{attributeValue}` .replace(`{${"id"}}`, encodeURIComponent(String(id))) .replace(`{${"attributeKey"}}`, encodeURIComponent(String(attributeKey))) .replace(`{${"attributeValue"}}`, encodeURIComponent(String(attributeValue))); // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API initiates a bulk update of metadata for one or more Roles by filter. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum metadata value count for a single role is 25. Custom metadata update, including add, replace need suit licensed. * @summary Bulk-update roles\' metadata by filters * @param {RoleMetadataBulkUpdateByFilterRequest} roleMetadataBulkUpdateByFilterRequest * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateRolesMetadataByFilterV1: async (roleMetadataBulkUpdateByFilterRequest: RoleMetadataBulkUpdateByFilterRequest, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'roleMetadataBulkUpdateByFilterRequest' is not null or undefined assertParamExists('updateRolesMetadataByFilterV1', 'roleMetadataBulkUpdateByFilterRequest', roleMetadataBulkUpdateByFilterRequest) const localVarPath = `/roles/v1/access-model-metadata/bulk-update/filter`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(roleMetadataBulkUpdateByFilterRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API initiates a bulk update of metadata for one or more Roles by a list of Role Ids. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum role count in a single update request is 3000. The maximum metadata value count for a single role is 25. Custom metadata update, including add, replace need suit licensed. * @summary Bulk-update roles\' metadata by id * @param {RoleMetadataBulkUpdateByIdRequest} roleMetadataBulkUpdateByIdRequest * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateRolesMetadataByIdsV1: async (roleMetadataBulkUpdateByIdRequest: RoleMetadataBulkUpdateByIdRequest, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'roleMetadataBulkUpdateByIdRequest' is not null or undefined assertParamExists('updateRolesMetadataByIdsV1', 'roleMetadataBulkUpdateByIdRequest', roleMetadataBulkUpdateByIdRequest) const localVarPath = `/roles/v1/access-model-metadata/bulk-update/ids`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(roleMetadataBulkUpdateByIdRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, /** * This API initiates a bulk update of metadata for one or more Roles by query. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum metadata value count for a single role is 25. Custom metadata update, including add, replace need suit licensed. * @summary Bulk-update roles\' metadata by query * @param {RoleMetadataBulkUpdateByQueryRequest} roleMetadataBulkUpdateByQueryRequest * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateRolesMetadataByQueryV1: async (roleMetadataBulkUpdateByQueryRequest: RoleMetadataBulkUpdateByQueryRequest, axiosOptions: RawAxiosRequestConfig = {}): Promise => { // verify required parameter 'roleMetadataBulkUpdateByQueryRequest' is not null or undefined assertParamExists('updateRolesMetadataByQueryV1', 'roleMetadataBulkUpdateByQueryRequest', roleMetadataBulkUpdateByQueryRequest) const localVarPath = `/roles/v1/access-model-metadata/bulk-update/query`; // use dummy base URL string because the URL constructor only accepts absolute URLs. const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL); let baseOptions; if (configuration) { baseOptions = configuration.baseOptions; } const localVarRequestOptions = { method: 'POST', ...baseOptions, ...axiosOptions}; const localVarHeaderParameter = {} as any; const localVarQueryParameter = {} as any; localVarHeaderParameter['Content-Type'] = 'application/json'; setSearchParams(localVarUrlObj, localVarQueryParameter); let headersFromBaseOptions = baseOptions && baseOptions.headers ? baseOptions.headers : {}; localVarRequestOptions.headers = {...localVarHeaderParameter, ...headersFromBaseOptions, ...axiosOptions.headers}; localVarRequestOptions.data = serializeDataIfNeeded(roleMetadataBulkUpdateByQueryRequest, localVarRequestOptions, configuration) return { url: toPathString(localVarUrlObj), axiosOptions: localVarRequestOptions, }; }, } }; /** * RolesApi - functional programming interface * @export */ export const RolesApiFp = function(configuration?: Configuration) { const localVarAxiosParamCreator = RolesApiAxiosParamCreator(configuration) return { /** * This API creates a role. You must have a token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority to call this API. In addition, a ROLE_SUBADMIN may not create a role including an access profile if that access profile is associated with a source the ROLE_SUBADMIN is not associated with themselves. The maximum supported length for the description field is 2000 characters. Longer descriptions will be preserved for existing roles. However, any new roles as well as any updates to existing descriptions will be limited to 2000 characters. * @summary Create a role * @param {Role} role * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async createRoleV1(role: Role, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.createRoleV1(role, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.createRoleV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This endpoint initiates a bulk deletion of one or more roles. When the request is successful, the endpoint returns the bulk delete\'s task result ID. To follow the task, you can use [Get Task Status by ID](https://developer.sailpoint.com/docs/api/get-task-status-v-1), which will return the task result\'s status and information. This endpoint can only bulk delete up to a limit of 50 roles per request. A user with ROLE_SUBADMIN authority can only call this endpoint if all roles included in the request are associated with sources with management workgroups the ROLE_SUBADMIN is a member of. * @summary Delete role(s) * @param {RoleBulkDeleteRequest} roleBulkDeleteRequest * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async deleteBulkRolesV1(roleBulkDeleteRequest: RoleBulkDeleteRequest, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteBulkRolesV1(roleBulkDeleteRequest, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.deleteBulkRolesV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API initialize a request to remove a single Access Model Metadata from a role by attribute key and value. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. * @summary Remove a metadata from role. * @param {string} id The role\'s id. * @param {string} attributeKey Technical name of the Attribute. * @param {string} attributeValue Technical name of the Attribute Value. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async deleteMetadataFromRoleByKeyAndValueV1(id: string, attributeKey: string, attributeValue: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteMetadataFromRoleByKeyAndValueV1(id, attributeKey, attributeValue, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.deleteMetadataFromRoleByKeyAndValueV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API deletes a Role by its ID. A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. In addition, a token with ROLE_SUBADMIN authority may only call this API if all Access Profiles included in the Role are associated to Sources with management workgroups of which the ROLE_SUBADMIN is a member. * @summary Delete a role * @param {string} id ID of the Role * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async deleteRoleV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.deleteRoleV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.deleteRoleV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API initial a request for one bulk update\'s status by bulk update Id returns the status of the bulk update process. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. * @summary Get bulk-update status by id * @param {string} id The Id of the bulk update task. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getBulkUpdateStatusByIdV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getBulkUpdateStatusByIdV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.getBulkUpdateStatusByIdV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API returns a list of all unfinished bulk update process status of the tenant. * @summary Get bulk-update statuses * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getBulkUpdateStatusV1(axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getBulkUpdateStatusV1(axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.getBulkUpdateStatusV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * * @summary List identities assigned a role * @param {string} id ID of the Role for which the assigned Identities are to be listed * @param {number} [limit] Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {number} [offset] 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. * @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 {string} [filters] Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **aliasName**: *eq, sw* **email**: *eq, sw* **name**: *eq, sw, co* * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, aliasName, email** * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getRoleAssignedIdentitiesV1(id: string, limit?: number, offset?: number, count?: boolean, filters?: string, sorters?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getRoleAssignedIdentitiesV1(id, limit, offset, count, filters, sorters, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.getRoleAssignedIdentitiesV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * Get a list of entitlements associated with a specified role. * @summary List role\'s entitlements * @param {string} id Containing role\'s ID. * @param {number} [limit] Note that for this API the maximum value for limit is 50. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {number} [offset] 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. * @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 {string} [filters] Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, sw* **attribute**: *eq, sw* **value**: *eq, sw* **created**: *gt, lt, ge, le* **modified**: *gt, lt, ge, le* **owner.id**: *eq, in* **source.id**: *eq, in* * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, attribute, value, created, modified** * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getRoleEntitlementsV1(id: string, limit?: number, offset?: number, count?: boolean, filters?: string, sorters?: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.getRoleEntitlementsV1(id, limit, offset, count, filters, sorters, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.getRoleEntitlementsV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API returns a Role by its ID. A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. In addition, a token with ROLE_SUBADMIN authority may only call this API if all Access Profiles included in the Role are associated to Sources with management workgroups of which the ROLE_SUBADMIN is a member. * @summary Get a role * @param {string} id ID of the Role * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async getRoleV1(id: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.getRoleV1(id, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.getRoleV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API returns a list of Roles. A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. * @summary List roles * @param {string} [forSubadmin] If provided, filters the returned list according to what is visible to the indicated ROLE_SUBADMIN Identity. The value of the parameter is either an Identity ID, or the special value **me**, which is shorthand for the calling Identity\'s ID. A 400 Bad Request error is returned if the **for-subadmin** parameter is specified for an Identity that is not a subadmin. * @param {number} [limit] Note that for this API the maximum value for limit is 50. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {number} [offset] 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. * @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 {string} [filters] Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, sw* **created**: *gt, ge, le* **modified**: *lt, ge, le* **owner.id**: *eq, in* **requestable**: *eq* **dimensional**: *eq* * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @param {string} [forSegmentIds] If present and not empty, additionally filters Roles to those which are assigned to the Segment(s) with the specified IDs. If segmentation is currently unavailable, specifying this parameter results in an error. * @param {boolean} [includeUnsegmented] Whether or not the response list should contain unsegmented Roles. If *for-segment-ids* is absent or empty, specifying *include-unsegmented* as false results in an error. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async listRolesV1(forSubadmin?: string, limit?: number, offset?: number, count?: boolean, filters?: string, sorters?: string, forSegmentIds?: string, includeUnsegmented?: boolean, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.listRolesV1(forSubadmin, limit, offset, count, filters, sorters, forSegmentIds, includeUnsegmented, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.listRolesV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API updates an existing role using [JSON Patch](https://tools.ietf.org/html/rfc6902) syntax. The following fields are patchable: * name * description * enabled * owner * additionalOwners * accessProfiles * entitlements * membership * requestable * accessRequestConfig * revokeRequestConfig * segments * accessModelMetadata A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. In addition, a token with ROLE_SUBADMIN authority may only call this API if all access profiles included in the role are associated to Sources with management workgroups of which the ROLE_SUBADMIN is a member. The maximum supported length for the description field is 2000 characters. Longer descriptions will be preserved for existing roles, however, any new roles as well as any updates to existing descriptions will be limited to 2000 characters. When you use this API to modify a role\'s membership identities, you can only modify up to a limit of 500 membership identities at a time. * @summary Patch a specified role * @param {string} id ID of the Role to patch * @param {Array} jsonPatchOperation * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async patchRoleV1(id: string, jsonPatchOperation: Array, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.patchRoleV1(id, jsonPatchOperation, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.patchRoleV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API returns a list of Role that filter by metadata and filter, it support filter by both path parameter and attribute key and values. A token with API, ORG_ADMIN, ROLE_ADMIN, ROLE_SUBADMIN, HELPDESK, CERT_ADMIN, REPORT_ADMIN or SOURCE_ADMIN authority is required to call this API. * @summary Filter roles by metadata * @param {string} [forSubadmin] If provided, filters the returned list according to what is visible to the indicated ROLE_SUBADMIN Identity. The value of the parameter is either an Identity ID, or the special value **me**, which is shorthand for the calling Identity\'s ID. A 400 Bad Request error is returned if the **for-subadmin** parameter is specified for an Identity that is not a subadmin. * @param {number} [limit] Max number of results to return See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {number} [offset] 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. * @param {boolean} [count] Boolean indicating whether a total count is returned, factoring in any filter parameters, in the X-Total-Count response header. The value is the total size of the collection that would be returned if limit and offset were ignored. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @param {string} [sorters] Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @param {string} [forSegmentIds] If present and not empty, additionally filters Roles to those which are assigned to the Segment(s) with the specified IDs. If segmentation is currently unavailable, specifying this parameter results in an error. * @param {boolean} [includeUnsegmented] Whether or not the response list should contain unsegmented Roles. If *for-segment-ids* is absent or empty, specifying *include-unsegmented* as false results in an error. * @param {RoleListFilterDTO} [roleListFilterDTO] * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async searchRolesByFilterV1(forSubadmin?: string, limit?: number, offset?: number, count?: boolean, sorters?: string, forSegmentIds?: string, includeUnsegmented?: boolean, roleListFilterDTO?: RoleListFilterDTO, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise>> { const localVarAxiosArgs = await localVarAxiosParamCreator.searchRolesByFilterV1(forSubadmin, limit, offset, count, sorters, forSegmentIds, includeUnsegmented, roleListFilterDTO, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.searchRolesByFilterV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API initialize a request to add a single Access Model Metadata to a role by attribute key and attribute value. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum number of attributes in one role is 25. Custom metadata update, including ADD and REPLACE need suit licensed. * @summary Add a metadata to role. * @param {string} id The Id of a role * @param {string} attributeKey Technical name of the Attribute. * @param {string} attributeValue Technical name of the Attribute Value. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async updateAttributeKeyAndValueToRoleV1(id: string, attributeKey: string, attributeValue: string, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.updateAttributeKeyAndValueToRoleV1(id, attributeKey, attributeValue, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.updateAttributeKeyAndValueToRoleV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API initiates a bulk update of metadata for one or more Roles by filter. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum metadata value count for a single role is 25. Custom metadata update, including add, replace need suit licensed. * @summary Bulk-update roles\' metadata by filters * @param {RoleMetadataBulkUpdateByFilterRequest} roleMetadataBulkUpdateByFilterRequest * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async updateRolesMetadataByFilterV1(roleMetadataBulkUpdateByFilterRequest: RoleMetadataBulkUpdateByFilterRequest, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.updateRolesMetadataByFilterV1(roleMetadataBulkUpdateByFilterRequest, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.updateRolesMetadataByFilterV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API initiates a bulk update of metadata for one or more Roles by a list of Role Ids. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum role count in a single update request is 3000. The maximum metadata value count for a single role is 25. Custom metadata update, including add, replace need suit licensed. * @summary Bulk-update roles\' metadata by id * @param {RoleMetadataBulkUpdateByIdRequest} roleMetadataBulkUpdateByIdRequest * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async updateRolesMetadataByIdsV1(roleMetadataBulkUpdateByIdRequest: RoleMetadataBulkUpdateByIdRequest, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.updateRolesMetadataByIdsV1(roleMetadataBulkUpdateByIdRequest, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.updateRolesMetadataByIdsV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, /** * This API initiates a bulk update of metadata for one or more Roles by query. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum metadata value count for a single role is 25. Custom metadata update, including add, replace need suit licensed. * @summary Bulk-update roles\' metadata by query * @param {RoleMetadataBulkUpdateByQueryRequest} roleMetadataBulkUpdateByQueryRequest * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ async updateRolesMetadataByQueryV1(roleMetadataBulkUpdateByQueryRequest: RoleMetadataBulkUpdateByQueryRequest, axiosOptions?: RawAxiosRequestConfig): Promise<(axios?: AxiosInstance, basePath?: string) => AxiosPromise> { const localVarAxiosArgs = await localVarAxiosParamCreator.updateRolesMetadataByQueryV1(roleMetadataBulkUpdateByQueryRequest, axiosOptions); const localVarOperationServerIndex = configuration?.serverIndex ?? 0; const localVarOperationServerBasePath = operationServerMap['RolesApi.updateRolesMetadataByQueryV1']?.[localVarOperationServerIndex]?.url; return (axios, basePath) => createRequestFunction(localVarAxiosArgs, globalAxios, BASE_PATH, configuration)(axios, localVarOperationServerBasePath || basePath); }, } }; /** * RolesApi - factory interface * @export */ export const RolesApiFactory = function (configuration?: Configuration, basePath?: string, axios?: AxiosInstance) { const localVarFp = RolesApiFp(configuration) return { /** * This API creates a role. You must have a token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority to call this API. In addition, a ROLE_SUBADMIN may not create a role including an access profile if that access profile is associated with a source the ROLE_SUBADMIN is not associated with themselves. The maximum supported length for the description field is 2000 characters. Longer descriptions will be preserved for existing roles. However, any new roles as well as any updates to existing descriptions will be limited to 2000 characters. * @summary Create a role * @param {RolesApiCreateRoleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ createRoleV1(requestParameters: RolesApiCreateRoleV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.createRoleV1(requestParameters.role, axiosOptions).then((request) => request(axios, basePath)); }, /** * This endpoint initiates a bulk deletion of one or more roles. When the request is successful, the endpoint returns the bulk delete\'s task result ID. To follow the task, you can use [Get Task Status by ID](https://developer.sailpoint.com/docs/api/get-task-status-v-1), which will return the task result\'s status and information. This endpoint can only bulk delete up to a limit of 50 roles per request. A user with ROLE_SUBADMIN authority can only call this endpoint if all roles included in the request are associated with sources with management workgroups the ROLE_SUBADMIN is a member of. * @summary Delete role(s) * @param {RolesApiDeleteBulkRolesV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteBulkRolesV1(requestParameters: RolesApiDeleteBulkRolesV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.deleteBulkRolesV1(requestParameters.roleBulkDeleteRequest, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API initialize a request to remove a single Access Model Metadata from a role by attribute key and value. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. * @summary Remove a metadata from role. * @param {RolesApiDeleteMetadataFromRoleByKeyAndValueV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteMetadataFromRoleByKeyAndValueV1(requestParameters: RolesApiDeleteMetadataFromRoleByKeyAndValueV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.deleteMetadataFromRoleByKeyAndValueV1(requestParameters.id, requestParameters.attributeKey, requestParameters.attributeValue, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API deletes a Role by its ID. A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. In addition, a token with ROLE_SUBADMIN authority may only call this API if all Access Profiles included in the Role are associated to Sources with management workgroups of which the ROLE_SUBADMIN is a member. * @summary Delete a role * @param {RolesApiDeleteRoleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ deleteRoleV1(requestParameters: RolesApiDeleteRoleV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.deleteRoleV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API initial a request for one bulk update\'s status by bulk update Id returns the status of the bulk update process. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. * @summary Get bulk-update status by id * @param {RolesApiGetBulkUpdateStatusByIdV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getBulkUpdateStatusByIdV1(requestParameters: RolesApiGetBulkUpdateStatusByIdV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getBulkUpdateStatusByIdV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API returns a list of all unfinished bulk update process status of the tenant. * @summary Get bulk-update statuses * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getBulkUpdateStatusV1(axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.getBulkUpdateStatusV1(axiosOptions).then((request) => request(axios, basePath)); }, /** * * @summary List identities assigned a role * @param {RolesApiGetRoleAssignedIdentitiesV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getRoleAssignedIdentitiesV1(requestParameters: RolesApiGetRoleAssignedIdentitiesV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.getRoleAssignedIdentitiesV1(requestParameters.id, requestParameters.limit, requestParameters.offset, requestParameters.count, requestParameters.filters, requestParameters.sorters, axiosOptions).then((request) => request(axios, basePath)); }, /** * Get a list of entitlements associated with a specified role. * @summary List role\'s entitlements * @param {RolesApiGetRoleEntitlementsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getRoleEntitlementsV1(requestParameters: RolesApiGetRoleEntitlementsV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.getRoleEntitlementsV1(requestParameters.id, requestParameters.limit, requestParameters.offset, requestParameters.count, requestParameters.filters, requestParameters.sorters, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API returns a Role by its ID. A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. In addition, a token with ROLE_SUBADMIN authority may only call this API if all Access Profiles included in the Role are associated to Sources with management workgroups of which the ROLE_SUBADMIN is a member. * @summary Get a role * @param {RolesApiGetRoleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ getRoleV1(requestParameters: RolesApiGetRoleV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.getRoleV1(requestParameters.id, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API returns a list of Roles. A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. * @summary List roles * @param {RolesApiListRolesV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ listRolesV1(requestParameters: RolesApiListRolesV1Request = {}, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.listRolesV1(requestParameters.forSubadmin, requestParameters.limit, requestParameters.offset, requestParameters.count, requestParameters.filters, requestParameters.sorters, requestParameters.forSegmentIds, requestParameters.includeUnsegmented, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API updates an existing role using [JSON Patch](https://tools.ietf.org/html/rfc6902) syntax. The following fields are patchable: * name * description * enabled * owner * additionalOwners * accessProfiles * entitlements * membership * requestable * accessRequestConfig * revokeRequestConfig * segments * accessModelMetadata A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. In addition, a token with ROLE_SUBADMIN authority may only call this API if all access profiles included in the role are associated to Sources with management workgroups of which the ROLE_SUBADMIN is a member. The maximum supported length for the description field is 2000 characters. Longer descriptions will be preserved for existing roles, however, any new roles as well as any updates to existing descriptions will be limited to 2000 characters. When you use this API to modify a role\'s membership identities, you can only modify up to a limit of 500 membership identities at a time. * @summary Patch a specified role * @param {RolesApiPatchRoleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ patchRoleV1(requestParameters: RolesApiPatchRoleV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.patchRoleV1(requestParameters.id, requestParameters.jsonPatchOperation, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API returns a list of Role that filter by metadata and filter, it support filter by both path parameter and attribute key and values. A token with API, ORG_ADMIN, ROLE_ADMIN, ROLE_SUBADMIN, HELPDESK, CERT_ADMIN, REPORT_ADMIN or SOURCE_ADMIN authority is required to call this API. * @summary Filter roles by metadata * @param {RolesApiSearchRolesByFilterV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ searchRolesByFilterV1(requestParameters: RolesApiSearchRolesByFilterV1Request = {}, axiosOptions?: RawAxiosRequestConfig): AxiosPromise> { return localVarFp.searchRolesByFilterV1(requestParameters.forSubadmin, requestParameters.limit, requestParameters.offset, requestParameters.count, requestParameters.sorters, requestParameters.forSegmentIds, requestParameters.includeUnsegmented, requestParameters.roleListFilterDTO, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API initialize a request to add a single Access Model Metadata to a role by attribute key and attribute value. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum number of attributes in one role is 25. Custom metadata update, including ADD and REPLACE need suit licensed. * @summary Add a metadata to role. * @param {RolesApiUpdateAttributeKeyAndValueToRoleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateAttributeKeyAndValueToRoleV1(requestParameters: RolesApiUpdateAttributeKeyAndValueToRoleV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.updateAttributeKeyAndValueToRoleV1(requestParameters.id, requestParameters.attributeKey, requestParameters.attributeValue, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API initiates a bulk update of metadata for one or more Roles by filter. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum metadata value count for a single role is 25. Custom metadata update, including add, replace need suit licensed. * @summary Bulk-update roles\' metadata by filters * @param {RolesApiUpdateRolesMetadataByFilterV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateRolesMetadataByFilterV1(requestParameters: RolesApiUpdateRolesMetadataByFilterV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.updateRolesMetadataByFilterV1(requestParameters.roleMetadataBulkUpdateByFilterRequest, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API initiates a bulk update of metadata for one or more Roles by a list of Role Ids. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum role count in a single update request is 3000. The maximum metadata value count for a single role is 25. Custom metadata update, including add, replace need suit licensed. * @summary Bulk-update roles\' metadata by id * @param {RolesApiUpdateRolesMetadataByIdsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateRolesMetadataByIdsV1(requestParameters: RolesApiUpdateRolesMetadataByIdsV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.updateRolesMetadataByIdsV1(requestParameters.roleMetadataBulkUpdateByIdRequest, axiosOptions).then((request) => request(axios, basePath)); }, /** * This API initiates a bulk update of metadata for one or more Roles by query. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum metadata value count for a single role is 25. Custom metadata update, including add, replace need suit licensed. * @summary Bulk-update roles\' metadata by query * @param {RolesApiUpdateRolesMetadataByQueryV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} */ updateRolesMetadataByQueryV1(requestParameters: RolesApiUpdateRolesMetadataByQueryV1Request, axiosOptions?: RawAxiosRequestConfig): AxiosPromise { return localVarFp.updateRolesMetadataByQueryV1(requestParameters.roleMetadataBulkUpdateByQueryRequest, axiosOptions).then((request) => request(axios, basePath)); }, }; }; /** * Request parameters for createRoleV1 operation in RolesApi. * @export * @interface RolesApiCreateRoleV1Request */ export interface RolesApiCreateRoleV1Request { /** * * @type {Role} * @memberof RolesApiCreateRoleV1 */ readonly role: Role } /** * Request parameters for deleteBulkRolesV1 operation in RolesApi. * @export * @interface RolesApiDeleteBulkRolesV1Request */ export interface RolesApiDeleteBulkRolesV1Request { /** * * @type {RoleBulkDeleteRequest} * @memberof RolesApiDeleteBulkRolesV1 */ readonly roleBulkDeleteRequest: RoleBulkDeleteRequest } /** * Request parameters for deleteMetadataFromRoleByKeyAndValueV1 operation in RolesApi. * @export * @interface RolesApiDeleteMetadataFromRoleByKeyAndValueV1Request */ export interface RolesApiDeleteMetadataFromRoleByKeyAndValueV1Request { /** * The role\'s id. * @type {string} * @memberof RolesApiDeleteMetadataFromRoleByKeyAndValueV1 */ readonly id: string /** * Technical name of the Attribute. * @type {string} * @memberof RolesApiDeleteMetadataFromRoleByKeyAndValueV1 */ readonly attributeKey: string /** * Technical name of the Attribute Value. * @type {string} * @memberof RolesApiDeleteMetadataFromRoleByKeyAndValueV1 */ readonly attributeValue: string } /** * Request parameters for deleteRoleV1 operation in RolesApi. * @export * @interface RolesApiDeleteRoleV1Request */ export interface RolesApiDeleteRoleV1Request { /** * ID of the Role * @type {string} * @memberof RolesApiDeleteRoleV1 */ readonly id: string } /** * Request parameters for getBulkUpdateStatusByIdV1 operation in RolesApi. * @export * @interface RolesApiGetBulkUpdateStatusByIdV1Request */ export interface RolesApiGetBulkUpdateStatusByIdV1Request { /** * The Id of the bulk update task. * @type {string} * @memberof RolesApiGetBulkUpdateStatusByIdV1 */ readonly id: string } /** * Request parameters for getRoleAssignedIdentitiesV1 operation in RolesApi. * @export * @interface RolesApiGetRoleAssignedIdentitiesV1Request */ export interface RolesApiGetRoleAssignedIdentitiesV1Request { /** * ID of the Role for which the assigned Identities are to be listed * @type {string} * @memberof RolesApiGetRoleAssignedIdentitiesV1 */ readonly id: string /** * Max number of results to return. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {number} * @memberof RolesApiGetRoleAssignedIdentitiesV1 */ readonly limit?: number /** * 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. * @type {number} * @memberof RolesApiGetRoleAssignedIdentitiesV1 */ readonly offset?: number /** * 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 RolesApiGetRoleAssignedIdentitiesV1 */ readonly count?: boolean /** * Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **aliasName**: *eq, sw* **email**: *eq, sw* **name**: *eq, sw, co* * @type {string} * @memberof RolesApiGetRoleAssignedIdentitiesV1 */ readonly filters?: string /** * Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **id, name, aliasName, email** * @type {string} * @memberof RolesApiGetRoleAssignedIdentitiesV1 */ readonly sorters?: string } /** * Request parameters for getRoleEntitlementsV1 operation in RolesApi. * @export * @interface RolesApiGetRoleEntitlementsV1Request */ export interface RolesApiGetRoleEntitlementsV1Request { /** * Containing role\'s ID. * @type {string} * @memberof RolesApiGetRoleEntitlementsV1 */ readonly id: string /** * Note that for this API the maximum value for limit is 50. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {number} * @memberof RolesApiGetRoleEntitlementsV1 */ readonly limit?: number /** * 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. * @type {number} * @memberof RolesApiGetRoleEntitlementsV1 */ readonly offset?: number /** * 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 RolesApiGetRoleEntitlementsV1 */ readonly count?: boolean /** * Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, sw* **attribute**: *eq, sw* **value**: *eq, sw* **created**: *gt, lt, ge, le* **modified**: *gt, lt, ge, le* **owner.id**: *eq, in* **source.id**: *eq, in* * @type {string} * @memberof RolesApiGetRoleEntitlementsV1 */ readonly filters?: string /** * Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, attribute, value, created, modified** * @type {string} * @memberof RolesApiGetRoleEntitlementsV1 */ readonly sorters?: string } /** * Request parameters for getRoleV1 operation in RolesApi. * @export * @interface RolesApiGetRoleV1Request */ export interface RolesApiGetRoleV1Request { /** * ID of the Role * @type {string} * @memberof RolesApiGetRoleV1 */ readonly id: string } /** * Request parameters for listRolesV1 operation in RolesApi. * @export * @interface RolesApiListRolesV1Request */ export interface RolesApiListRolesV1Request { /** * If provided, filters the returned list according to what is visible to the indicated ROLE_SUBADMIN Identity. The value of the parameter is either an Identity ID, or the special value **me**, which is shorthand for the calling Identity\'s ID. A 400 Bad Request error is returned if the **for-subadmin** parameter is specified for an Identity that is not a subadmin. * @type {string} * @memberof RolesApiListRolesV1 */ readonly forSubadmin?: string /** * Note that for this API the maximum value for limit is 50. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {number} * @memberof RolesApiListRolesV1 */ readonly limit?: number /** * 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. * @type {number} * @memberof RolesApiListRolesV1 */ readonly offset?: number /** * 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 RolesApiListRolesV1 */ readonly count?: boolean /** * Filter results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#filtering-results) Filtering is supported for the following fields and operators: **id**: *eq, in* **name**: *eq, sw* **created**: *gt, ge, le* **modified**: *lt, ge, le* **owner.id**: *eq, in* **requestable**: *eq* **dimensional**: *eq* * @type {string} * @memberof RolesApiListRolesV1 */ readonly filters?: string /** * Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @type {string} * @memberof RolesApiListRolesV1 */ readonly sorters?: string /** * If present and not empty, additionally filters Roles to those which are assigned to the Segment(s) with the specified IDs. If segmentation is currently unavailable, specifying this parameter results in an error. * @type {string} * @memberof RolesApiListRolesV1 */ readonly forSegmentIds?: string /** * Whether or not the response list should contain unsegmented Roles. If *for-segment-ids* is absent or empty, specifying *include-unsegmented* as false results in an error. * @type {boolean} * @memberof RolesApiListRolesV1 */ readonly includeUnsegmented?: boolean } /** * Request parameters for patchRoleV1 operation in RolesApi. * @export * @interface RolesApiPatchRoleV1Request */ export interface RolesApiPatchRoleV1Request { /** * ID of the Role to patch * @type {string} * @memberof RolesApiPatchRoleV1 */ readonly id: string /** * * @type {Array} * @memberof RolesApiPatchRoleV1 */ readonly jsonPatchOperation: Array } /** * Request parameters for searchRolesByFilterV1 operation in RolesApi. * @export * @interface RolesApiSearchRolesByFilterV1Request */ export interface RolesApiSearchRolesByFilterV1Request { /** * If provided, filters the returned list according to what is visible to the indicated ROLE_SUBADMIN Identity. The value of the parameter is either an Identity ID, or the special value **me**, which is shorthand for the calling Identity\'s ID. A 400 Bad Request error is returned if the **for-subadmin** parameter is specified for an Identity that is not a subadmin. * @type {string} * @memberof RolesApiSearchRolesByFilterV1 */ readonly forSubadmin?: string /** * Max number of results to return See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {number} * @memberof RolesApiSearchRolesByFilterV1 */ readonly limit?: number /** * 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. * @type {number} * @memberof RolesApiSearchRolesByFilterV1 */ readonly offset?: number /** * Boolean indicating whether a total count is returned, factoring in any filter parameters, in the X-Total-Count response header. The value is the total size of the collection that would be returned if limit and offset were ignored. See [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters) for more information. * @type {boolean} * @memberof RolesApiSearchRolesByFilterV1 */ readonly count?: boolean /** * Sort results using the standard syntax described in [V3 API Standard Collection Parameters](https://developer.sailpoint.com/idn/api/standard-collection-parameters#sorting-results) Sorting is supported for the following fields: **name, created, modified** * @type {string} * @memberof RolesApiSearchRolesByFilterV1 */ readonly sorters?: string /** * If present and not empty, additionally filters Roles to those which are assigned to the Segment(s) with the specified IDs. If segmentation is currently unavailable, specifying this parameter results in an error. * @type {string} * @memberof RolesApiSearchRolesByFilterV1 */ readonly forSegmentIds?: string /** * Whether or not the response list should contain unsegmented Roles. If *for-segment-ids* is absent or empty, specifying *include-unsegmented* as false results in an error. * @type {boolean} * @memberof RolesApiSearchRolesByFilterV1 */ readonly includeUnsegmented?: boolean /** * * @type {RoleListFilterDTO} * @memberof RolesApiSearchRolesByFilterV1 */ readonly roleListFilterDTO?: RoleListFilterDTO } /** * Request parameters for updateAttributeKeyAndValueToRoleV1 operation in RolesApi. * @export * @interface RolesApiUpdateAttributeKeyAndValueToRoleV1Request */ export interface RolesApiUpdateAttributeKeyAndValueToRoleV1Request { /** * The Id of a role * @type {string} * @memberof RolesApiUpdateAttributeKeyAndValueToRoleV1 */ readonly id: string /** * Technical name of the Attribute. * @type {string} * @memberof RolesApiUpdateAttributeKeyAndValueToRoleV1 */ readonly attributeKey: string /** * Technical name of the Attribute Value. * @type {string} * @memberof RolesApiUpdateAttributeKeyAndValueToRoleV1 */ readonly attributeValue: string } /** * Request parameters for updateRolesMetadataByFilterV1 operation in RolesApi. * @export * @interface RolesApiUpdateRolesMetadataByFilterV1Request */ export interface RolesApiUpdateRolesMetadataByFilterV1Request { /** * * @type {RoleMetadataBulkUpdateByFilterRequest} * @memberof RolesApiUpdateRolesMetadataByFilterV1 */ readonly roleMetadataBulkUpdateByFilterRequest: RoleMetadataBulkUpdateByFilterRequest } /** * Request parameters for updateRolesMetadataByIdsV1 operation in RolesApi. * @export * @interface RolesApiUpdateRolesMetadataByIdsV1Request */ export interface RolesApiUpdateRolesMetadataByIdsV1Request { /** * * @type {RoleMetadataBulkUpdateByIdRequest} * @memberof RolesApiUpdateRolesMetadataByIdsV1 */ readonly roleMetadataBulkUpdateByIdRequest: RoleMetadataBulkUpdateByIdRequest } /** * Request parameters for updateRolesMetadataByQueryV1 operation in RolesApi. * @export * @interface RolesApiUpdateRolesMetadataByQueryV1Request */ export interface RolesApiUpdateRolesMetadataByQueryV1Request { /** * * @type {RoleMetadataBulkUpdateByQueryRequest} * @memberof RolesApiUpdateRolesMetadataByQueryV1 */ readonly roleMetadataBulkUpdateByQueryRequest: RoleMetadataBulkUpdateByQueryRequest } /** * RolesApi - object-oriented interface * @export * @class RolesApi * @extends {BaseAPI} */ export class RolesApi extends BaseAPI { /** * This API creates a role. You must have a token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority to call this API. In addition, a ROLE_SUBADMIN may not create a role including an access profile if that access profile is associated with a source the ROLE_SUBADMIN is not associated with themselves. The maximum supported length for the description field is 2000 characters. Longer descriptions will be preserved for existing roles. However, any new roles as well as any updates to existing descriptions will be limited to 2000 characters. * @summary Create a role * @param {RolesApiCreateRoleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public createRoleV1(requestParameters: RolesApiCreateRoleV1Request, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).createRoleV1(requestParameters.role, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This endpoint initiates a bulk deletion of one or more roles. When the request is successful, the endpoint returns the bulk delete\'s task result ID. To follow the task, you can use [Get Task Status by ID](https://developer.sailpoint.com/docs/api/get-task-status-v-1), which will return the task result\'s status and information. This endpoint can only bulk delete up to a limit of 50 roles per request. A user with ROLE_SUBADMIN authority can only call this endpoint if all roles included in the request are associated with sources with management workgroups the ROLE_SUBADMIN is a member of. * @summary Delete role(s) * @param {RolesApiDeleteBulkRolesV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public deleteBulkRolesV1(requestParameters: RolesApiDeleteBulkRolesV1Request, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).deleteBulkRolesV1(requestParameters.roleBulkDeleteRequest, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API initialize a request to remove a single Access Model Metadata from a role by attribute key and value. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. * @summary Remove a metadata from role. * @param {RolesApiDeleteMetadataFromRoleByKeyAndValueV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public deleteMetadataFromRoleByKeyAndValueV1(requestParameters: RolesApiDeleteMetadataFromRoleByKeyAndValueV1Request, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).deleteMetadataFromRoleByKeyAndValueV1(requestParameters.id, requestParameters.attributeKey, requestParameters.attributeValue, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API deletes a Role by its ID. A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. In addition, a token with ROLE_SUBADMIN authority may only call this API if all Access Profiles included in the Role are associated to Sources with management workgroups of which the ROLE_SUBADMIN is a member. * @summary Delete a role * @param {RolesApiDeleteRoleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public deleteRoleV1(requestParameters: RolesApiDeleteRoleV1Request, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).deleteRoleV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API initial a request for one bulk update\'s status by bulk update Id returns the status of the bulk update process. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. * @summary Get bulk-update status by id * @param {RolesApiGetBulkUpdateStatusByIdV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public getBulkUpdateStatusByIdV1(requestParameters: RolesApiGetBulkUpdateStatusByIdV1Request, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).getBulkUpdateStatusByIdV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API returns a list of all unfinished bulk update process status of the tenant. * @summary Get bulk-update statuses * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public getBulkUpdateStatusV1(axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).getBulkUpdateStatusV1(axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * * @summary List identities assigned a role * @param {RolesApiGetRoleAssignedIdentitiesV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public getRoleAssignedIdentitiesV1(requestParameters: RolesApiGetRoleAssignedIdentitiesV1Request, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).getRoleAssignedIdentitiesV1(requestParameters.id, requestParameters.limit, requestParameters.offset, requestParameters.count, requestParameters.filters, requestParameters.sorters, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * Get a list of entitlements associated with a specified role. * @summary List role\'s entitlements * @param {RolesApiGetRoleEntitlementsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public getRoleEntitlementsV1(requestParameters: RolesApiGetRoleEntitlementsV1Request, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).getRoleEntitlementsV1(requestParameters.id, requestParameters.limit, requestParameters.offset, requestParameters.count, requestParameters.filters, requestParameters.sorters, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API returns a Role by its ID. A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. In addition, a token with ROLE_SUBADMIN authority may only call this API if all Access Profiles included in the Role are associated to Sources with management workgroups of which the ROLE_SUBADMIN is a member. * @summary Get a role * @param {RolesApiGetRoleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public getRoleV1(requestParameters: RolesApiGetRoleV1Request, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).getRoleV1(requestParameters.id, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API returns a list of Roles. A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. * @summary List roles * @param {RolesApiListRolesV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public listRolesV1(requestParameters: RolesApiListRolesV1Request = {}, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).listRolesV1(requestParameters.forSubadmin, requestParameters.limit, requestParameters.offset, requestParameters.count, requestParameters.filters, requestParameters.sorters, requestParameters.forSegmentIds, requestParameters.includeUnsegmented, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API updates an existing role using [JSON Patch](https://tools.ietf.org/html/rfc6902) syntax. The following fields are patchable: * name * description * enabled * owner * additionalOwners * accessProfiles * entitlements * membership * requestable * accessRequestConfig * revokeRequestConfig * segments * accessModelMetadata A token with API, ORG_ADMIN, ROLE_ADMIN, or ROLE_SUBADMIN authority is required to call this API. In addition, a token with ROLE_SUBADMIN authority may only call this API if all access profiles included in the role are associated to Sources with management workgroups of which the ROLE_SUBADMIN is a member. The maximum supported length for the description field is 2000 characters. Longer descriptions will be preserved for existing roles, however, any new roles as well as any updates to existing descriptions will be limited to 2000 characters. When you use this API to modify a role\'s membership identities, you can only modify up to a limit of 500 membership identities at a time. * @summary Patch a specified role * @param {RolesApiPatchRoleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public patchRoleV1(requestParameters: RolesApiPatchRoleV1Request, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).patchRoleV1(requestParameters.id, requestParameters.jsonPatchOperation, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API returns a list of Role that filter by metadata and filter, it support filter by both path parameter and attribute key and values. A token with API, ORG_ADMIN, ROLE_ADMIN, ROLE_SUBADMIN, HELPDESK, CERT_ADMIN, REPORT_ADMIN or SOURCE_ADMIN authority is required to call this API. * @summary Filter roles by metadata * @param {RolesApiSearchRolesByFilterV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public searchRolesByFilterV1(requestParameters: RolesApiSearchRolesByFilterV1Request = {}, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).searchRolesByFilterV1(requestParameters.forSubadmin, requestParameters.limit, requestParameters.offset, requestParameters.count, requestParameters.sorters, requestParameters.forSegmentIds, requestParameters.includeUnsegmented, requestParameters.roleListFilterDTO, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API initialize a request to add a single Access Model Metadata to a role by attribute key and attribute value. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum number of attributes in one role is 25. Custom metadata update, including ADD and REPLACE need suit licensed. * @summary Add a metadata to role. * @param {RolesApiUpdateAttributeKeyAndValueToRoleV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public updateAttributeKeyAndValueToRoleV1(requestParameters: RolesApiUpdateAttributeKeyAndValueToRoleV1Request, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).updateAttributeKeyAndValueToRoleV1(requestParameters.id, requestParameters.attributeKey, requestParameters.attributeValue, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API initiates a bulk update of metadata for one or more Roles by filter. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum metadata value count for a single role is 25. Custom metadata update, including add, replace need suit licensed. * @summary Bulk-update roles\' metadata by filters * @param {RolesApiUpdateRolesMetadataByFilterV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public updateRolesMetadataByFilterV1(requestParameters: RolesApiUpdateRolesMetadataByFilterV1Request, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).updateRolesMetadataByFilterV1(requestParameters.roleMetadataBulkUpdateByFilterRequest, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API initiates a bulk update of metadata for one or more Roles by a list of Role Ids. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum role count in a single update request is 3000. The maximum metadata value count for a single role is 25. Custom metadata update, including add, replace need suit licensed. * @summary Bulk-update roles\' metadata by id * @param {RolesApiUpdateRolesMetadataByIdsV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public updateRolesMetadataByIdsV1(requestParameters: RolesApiUpdateRolesMetadataByIdsV1Request, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).updateRolesMetadataByIdsV1(requestParameters.roleMetadataBulkUpdateByIdRequest, axiosOptions).then((request) => request(this.axios, this.basePath)); } /** * This API initiates a bulk update of metadata for one or more Roles by query. A token with ORG_ADMIN, ROLE_ADMIN ROLE_SUBADMIN authority is required to call this API. The maximum metadata value count for a single role is 25. Custom metadata update, including add, replace need suit licensed. * @summary Bulk-update roles\' metadata by query * @param {RolesApiUpdateRolesMetadataByQueryV1Request} requestParameters Request parameters. * @param {*} [axiosOptions] Override http request option. * @throws {RequiredError} * @memberof RolesApi */ public updateRolesMetadataByQueryV1(requestParameters: RolesApiUpdateRolesMetadataByQueryV1Request, axiosOptions?: RawAxiosRequestConfig) { return RolesApiFp(this.configuration).updateRolesMetadataByQueryV1(requestParameters.roleMetadataBulkUpdateByQueryRequest, axiosOptions).then((request) => request(this.axios, this.basePath)); } }