openapi: 3.0.3 info: title: Visier Administration APIs description: Visier APIs for managing your tenant or tenants in Visier. You can programmatically manage user accounts in Visier, the profiles and permissions assigned to users, and to make changes in projects and publish projects to production. Administrating tenant users can use administration APIs to manage their analytic tenants and consolidated analytics tenants.
**Note:** If you submit API requests for changes that cause a project to publish to production (such as assigning permissions to users or updating permissions), each request is individually published to production, resulting in hundreds or thousands of production versions. We recommend that you use the `ProjectID` request header to make changes in a project, if `ProjectID` is available for the API endpoint. license: name: Apache License, Version 2.0 url: https://www.apache.org/licenses/LICENSE-2.0 version: 22222222.99201.3040 paths: /v1/admin/capabilities: get: tags: - Permissions summary: Retrieve a list of all permission capabilities description: "Retrieve all the permission capabilities in your tenant.\n You can use the returned capabilities in other API calls when creating or updating permissions to assign the capability to the permission.\n\n To specify the project in which to retrieve the permission capabilities, provide a project UUID in the `ProjectID` request header." operationId: Permissions_GetCapabilities parameters: - name: tenantCode in: query description: Specify the tenant to retrieve the capabilities from. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.GetCapabilitiesAPIResponseDTO' /v1/admin/capabilities/{capabilityId}: get: tags: - Permissions summary: Retrieve a permission capability's details description: "Retrieve the details of a specific capability.\n\n To specify the project in which to retrieve the permission capability, provide a project UUID in the `ProjectID` request header." operationId: Permissions_GetCapability parameters: - name: capabilityId in: path description: The unique identifier of the capability you want to retrieve. required: true schema: type: string - name: tenantCode in: query description: Specify the tenant to retrieve a capability from. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.CapabilityDTO' /v1/admin/content-packages: get: tags: - Permissions summary: Retrieve a list of all content packages description: "Retrieve the list of available content packages.\n You can use the returned content packages in other API calls when creating or updating permissions to add the content package to the permission.\n\n To specify the project in which to retrieve the available content packages, provide a project UUID in the `ProjectID` request header." operationId: Permissions_GetContentPackages parameters: - name: tenantCode in: query description: Specify the tenant to retrieve the content packages from. schema: type: string - name: searchString in: query description: "Optional search string to return only content packages whose display name or description contains that search string.\n If searchString is empty or not provided, the response returns a list of all content packages." schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.GetContentPackagesAPIResponseDTO' /v1/admin/content-packages/{contentPackageId}: get: tags: - Permissions summary: Retrieve a content package's details description: "Retrieve the details of a specific content package.\n\n To specify the project in which to retrieve a content package, provide a project UUID in the `ProjectID` request header." operationId: Permissions_GetContentPackage parameters: - name: contentPackageId in: path description: The unique identifier of the content package you want to retrieve. required: true schema: type: string - name: tenantCode in: query description: Specify the tenant to retrieve a content package from. schema: type: string - name: with in: query description: "Controls the amount of detail to return in the response. Omit to return basic information.\n * `details`: Include the content package's artifacts, grouped by artifact type." schema: type: array items: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.ContentPackageDTO' /v1/admin/data-access-sets: get: tags: - Permissions summary: Retrieve a list of all data access sets description: "Retrieve a list of all shareable data access sets. Data access sets define the level of access that users have to properties and property values for the analytic object in a permission. Data access sets also grant access to properties of subjects that are referenced by the analytic object in the permission.\n You can assign data access sets to a permission when creating or updating permissions.\n\n To specify the project in which to retrieve the shareable data access sets, provide a project UUID in the `ProjectID` request header.\n\n **Note:** If the number of valid data access sets exceeds the default limit of 100, the response status code is 206. To retrieve more than 100 data access sets, set `limit` to a higher number." operationId: Permissions_GetDataAccessSets parameters: - name: analyticObjectId in: query description: Specify the analytic object ID to retrieve the shareable data access sets for. Default is all analytic objects. schema: type: string - name: with in: query description: "The information about the data access set to include in the request response.\n * If empty, returns basic information for the data access set, including its unique ID, display name, description, and analytic object ID.\n * If `details`, returns basic information and property data access information (`propertyAccessConfigs`)." schema: type: array items: type: string - name: limit in: query description: The maximum number of data access sets to return. Default is 100. Maximum is 1000. schema: type: integer format: int32 - name: correlationIds in: query description: "If defined, `correlationIds` limits the response to the data access sets associated with the specified correlation IDs.\n You can specify multiple correlation IDs in the `correlationIds` parameter separated by commas; for example, `correlationIds=123,abc,456`.\n\n **Note**:\n - Correlation IDs must be between 3 and 64 characters long and may only contain alphanumeric characters, underscores and hyphens.\n - Correlation IDs have a lifetime of up to 7 days after creation. After a correlation ID expires, you can only retrieve specific data access sets using the data access set ID.\n - Correlation IDs are optional during data access set creation and are only applicable to those objects created with a defined correlation ID." schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.GetDataAccessSetsAPIResponseDTO' put: tags: - Permissions summary: Update shareable data access sets description: "Update shareable data access sets. Shareable data access sets let you reuse common data access configurations in multiple permissions.\n\n To specify the project in which to update shareable data access sets, provide a project UUID in the `ProjectID` request header." operationId: Permissions_UpdateDataAccessSets parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.BulkDataAccessSetRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.BulkDataAccessSetResponseDTO' post: tags: - Permissions summary: Create shareable data access sets description: "Create shareable data access sets. Shareable data access sets let you reuse common data access configurations in multiple permissions.\n\n To specify the project in which to create shareable data access sets, provide a project UUID in the `ProjectID` request header." operationId: Permissions_CreateDataAccessSets parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.BulkDataAccessSetRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.BulkDataAccessSetResponseDTO' delete: tags: - Permissions summary: Delete shareable data access sets description: "Delete shareable data access sets.\n\n To specify the project in which to delete shareable data access sets, provide a project UUID in the `ProjectID` request header." operationId: Permissions_DeleteDataAccessSets parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.BulkDataAccessSetDeleteRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.BulkDataAccessSetResponseDTO' /v1/admin/data-access-sets/revert-to-parent: post: tags: - Permissions summary: Revert data access sets description: "Revert a shareable data access set to its parent version. For example, if you revert a:\n - Tenant override object: The object reverts to the Blueprint version or, for administrating tenants who revert an analytic tenant's object, the administrating tenant's object version.\n - Tenant object: The API request fails. The object is unique to your tenant and no parent version exists.\n - Blueprint object: Nothing happens. The object is inherited from the parent and there is nothing to revert on this tenant." operationId: Permissions_RevertDataAccessSetsToParent parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.BulkDataAccessSetRevertRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.BulkDataAccessSetResponseDTO' /v1/admin/data-access-sets/{dataAccessSetId}: get: tags: - Permissions summary: Retrieve a data access set's details description: "Retrieve the details of a specific shareable data access set. You must know the ID of the data access set to retrieve its details. To retrieve data access set IDs, see `GET v1/admin/data-access-sets`.\n\n To specify the project in which to retrieve the shareable data access set, provide a project UUID in the `ProjectID` request header." operationId: Permissions_GetDataAccessSet parameters: - name: dataAccessSetId in: path description: The unique identifier of the data access set you want to retrieve. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.DataAccessSetDTO' /v1/admin/data-security-objects: get: tags: - Permissions summary: Retrieve a list of data security objects description: "Retrieve the list of available data security objects.\n Data security objects are analytic objects and their related objects that are available to define\n permissions' data security profiles.\n\n To specify the project in which to retrieve the available data security objects, provide a project UUID in the `ProjectID` request header." operationId: Permissions_GetDataSecurityObjects parameters: - name: id in: query description: "The unique identifiers of the data security objects (analytic objects) to retrieve.\n Default is all data security objects." schema: type: array items: type: string - name: includeDetails in: query description: "If `true`, the response includes the analytic objects (display name, ID, and object type), related objects,\n securable properties, and securable dimensions. If `false`, the response only includes analytic objects\n (display name, ID, and object type). Default is `false`." schema: type: boolean - name: tenantCode in: query description: Specify the tenant to retrieve data security objects from. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.GetDataSecurityObjectsAPIResponseDTO' /v1/admin/permissions: get: tags: - Permissions summary: Retrieve a list of all permissions description: "Retrieve the full list of user permissions in your tenant.\n\n To specify the project in which to retrieve permissions, provide a project UUID in the `ProjectID` request header." operationId: Permissions_GetPermissions parameters: - name: tenantCode in: query description: Specify the tenant to retrieve the permissions from. schema: type: string - name: includeDetails in: query description: "If `true`, returns the permission's details. If `false`, only returns the permissions' ID, display name,\n and description. Default is `false`." schema: type: boolean - name: includeDetailsWithStatus in: query description: "If `true`, returns the validity statuses for the permission's properties in data access sets and the\n permission's dimensions, dimension members, and hierarchy properties in member filters. If `false`,\n doesn't return validity status information. Default is `false`." schema: type: boolean - name: correlationIds in: query description: "If defined, `correlationIds` limits the response to the permissions associated with the specified correlation IDs.\n You can specify multiple correlation IDs in the `correlationIds` parameter separated by commas; for example, `correlationIds=123,abc,456`.\n\n **Note**:\n - Correlation IDs must be between 3 and 64 characters long and may only contain alphanumeric characters, underscores and hyphens.\n - Correlation IDs have a lifetime of up to 7 days after creation. After a correlation ID expires, you can only retrieve specific permissions using the permission ID.\n - Correlation IDs are optional during permission creation and are only applicable to those objects created with a defined correlation ID." schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.GetPermissionsAPIResponseDTO' put: tags: - Permissions summary: Update permissions description: "Update existing permissions.\n\n To specify the project in which to update permissions, provide a project UUID in the `ProjectID` request header." operationId: Permissions_UpdatePermissions parameters: - name: tenantCode in: query description: Specify the tenant to update permissions in. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean - name: FastMode in: header description: If `true`, the API skips loading the tenant's data environment. Use `FastMode` to reduce latency when you don't need to perform dynamic permission checks, such as checking for the Super Admin permission assignment. Without the environment, permission checks that depend on dynamic, data-driven security, such as group assignments using dynamic populations, fall back to checks resolvable from the requesting user's static user group or direct assignments. Default is `false`. schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.PermissionsListDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.PermissionBulkOperationResponseDTO' post: tags: - Permissions summary: Create permissions description: "Create new permissions. Administrating tenant users can specify the tenant in which to add these permissions.\n\n To specify the project in which to create permissions, provide a project UUID in the `ProjectID` request header." operationId: Permissions_CreatePermissions parameters: - name: tenantCode in: query description: Specify the tenant to create permissions in. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean - name: FastMode in: header description: If `true`, the API skips loading the tenant's data environment. Use `FastMode` to reduce latency when you don't need to perform dynamic permission checks, such as checking for the Super Admin permission assignment. Without the environment, permission checks that depend on dynamic, data-driven security, such as group assignments using dynamic populations, fall back to checks resolvable from the requesting user's static user group or direct assignments. Default is `false`. schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.PermissionsListDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.PermissionBulkOperationResponseDTO' delete: tags: - Permissions summary: Delete permissions description: "Delete existing permissions.\n\n To specify the project in which to delete permissions, provide a project UUID in the `ProjectID` request header." operationId: Permissions_DeletePermissions parameters: - name: tenantCode in: query description: Specify the tenant to delete permissions from. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.DeletePermissionsRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.PermissionBulkOperationResponseDTO' /v1/admin/permissions/revert-to-parent: post: tags: - Permissions summary: Revert permissions description: "Revert a permission to its parent version. For example, if you revert a:\n - Tenant override object: The object reverts to the Blueprint version or, for administrating tenants who revert an analytic tenant's object, the administrating tenant's object version.\n - Tenant object: The API request fails. The object is unique to your tenant and no parent version exists.\n - Blueprint object: Nothing happens. The object is inherited from the parent and there is nothing to revert on this tenant." operationId: Permissions_RevertPermissionsToParent parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.RevertPermissionsRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.PermissionBulkOperationResponseDTO' /v1/admin/permissions/users: put: tags: - UsersV1 summary: Assign permissions to users description: "This API allows you to assign a permission to specific users. Administrating tenant users can assign permissions\n to users in the administrating tenant and in the analytic tenants those users belong to.\n\n To assign permissions to users in a project for the administrating tenant, provide a project UUID in the `ProjectID` request header.\n Administrating tenants can assign permissions to users in analytic tenants by providing a tenant code and project ID in the request body." operationId: UsersV1_AssignPermissions parameters: - name: ProjectID in: header description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version. schema: type: string format: uuid - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean - name: SessionBasedPermissions in: header description: If `true`, the API call assigns user permissions that are only valid for the specified `SessionRepoId` without creating a new production version. When a user signs in to your application with the `SessionRepoId`, their session-based permissions are valid until the user session ends. Cannot be `true` if `NonVersioned` is `true`. Default is `false`.
**Note:** This header is in **limited availability**. If you are interested in using it, please contact your Customer Success Manager (CSM). schema: type: boolean - name: SessionRepoId in: header description: Optionally, specify a session repository ID to overwrite the user's permissions that are associated with the `SessionRepoId`. Only valid with `SessionBasedPermissions`. If omitted and `SessionBasedPermissions` is `true`, the API creates a new `SessionRepoId`. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.AssignRevokePermissionsRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.AssignRevokePermissionsResponseDTO' delete: tags: - UsersV1 summary: Remove permissions from users description: "This API allows you to remove a permission from specific users. Administrating tenant users can remove permissions\n from users in the administrating tenant and in the analytic tenants those users belong to.\n\n To remove permission from users in a project for the administrating tenant, provide a project UUID in the `ProjectID` request header.\n Administrating tenants can remove permissions from users in analytic tenants by providing a tenant code and project ID in the request body." operationId: UsersV1_RemovePermissions parameters: - name: ProjectID in: header description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version. schema: type: string format: uuid - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.AssignRevokePermissionsRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.AssignRevokePermissionsResponseDTO' /v1/admin/permissions/{permissionId}: get: tags: - Permissions summary: Retrieve a permission's details description: "Retrieve the details for a specified permission.\n\n To specify the project in which to retrieve the permission, provide a project UUID in the `ProjectID` request header." operationId: Permissions_GetPermission parameters: - name: permissionId in: path description: The unique identifier of the permission you want to retrieve. required: true schema: type: string - name: tenantCode in: query description: Specify the tenant to retrieve a permission from. schema: type: string - name: includeDetailsWithStatus in: query description: "If `true`, returns the validity statuses for the permission's properties in data access sets and the\n permission's dimensions, dimension members, and hierarchy properties in member filters. If `false`,\n doesn't return validity status information. Default is `false`." schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.PermissionDTO' /v1/admin/permissions/{permissionId}/users: get: tags: - UsersV1 summary: Retrieve users that are assigned a specific permission description: "This API allows you to retrieve all the users that are assigned a specified permission. You must know the ID\n of the permission you want to retrieve users for.\n\n To specify the project in which to retrieve users assigned to a specific permission for the login tenant, provide\n a project UUID in the `ProjectID` request header. If omitted, the request retrieves users assigned to a specific permission from production." operationId: UsersV1_GetPermissionAssignedUsers parameters: - name: permissionId in: path description: The unique identifier of the permission you want to retrieve users for. required: true schema: type: string - name: includeUserGroups in: query description: "If `true`, the response returns a list of all users that are assigned the permission, including users that are\n assigned the permission through a user group.\n If `false`, the response returns a list of the users that are directly assigned the permission." schema: type: boolean - name: tenantFilter in: query description: Specify the tenant to retrieve the list of users from. schema: type: string - name: limit in: query description: The number of results to return. The maximum number of tenants to retrieve is 100. schema: type: integer format: int32 - name: start in: query description: The index to start retrieving results from, also known as offset. The index begins at 0. schema: type: integer format: int32 - name: ProjectID in: header description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version. schema: type: string format: uuid - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.PermissionAssignedUsersDTO' /v1/admin/production-versions: get: tags: - ProductionVersions summary: Retrieve a list of all production versions description: Retrieve a list of all projects that were published to production, ordered from latest published to earliest published. operationId: ProductionVersions_GetProductionVersions parameters: - name: limit in: query description: The maximum number of production versions to return. Default is 400. schema: type: integer format: int32 - name: start in: query description: The starting index of the first production version to return. Default is 0. schema: type: integer format: int32 - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.GetProductionVersionsAPIResponseDTO' post: tags: - ProductionVersions summary: Perform an operation on production versions description: "Perform operations on production versions, such as exporting a production project's committed changes. \n \n If exporting, please specify `Accept: application/zip, application/json` in the header. The API returns exported changes in ZIP format and error messages in JSON format. If your request returns an error and it doesn't accept `application/json`, you will receive an HTTP 406 status code instead of the appropriate error response body." operationId: ProductionVersions_PostProductionVersions parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.ProductionVersionsAPIOperationRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.ProductionVersionsAPIOperationResponseDTO' /v1/admin/production-versions/{productionVersionId}: post: tags: - ProductionVersions summary: Perform an operation on a production version description: "Perform operations on a specific production version. The following operations are supported:\n * `rollBackTo`: Create a project that rolls back the production version to the specified version. The project contains uncommitted changes that reverse the published versions after the target production version." operationId: ProductionVersions_PostProductionVersion parameters: - name: productionVersionId in: path description: The production version to use as the target of the operation; for example, the production version to roll back to for the `rollBackTo` operation. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.ProductionVersionAPIOperationRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.ProductionVersionAPIOperationResponseDTO' /v1/admin/profiles: get: tags: - Profiles summary: Retrieve a list of all profiles description: "Get a list of all available profiles. For administrating tenants,\n this retrieves all administrating tenant profiles." operationId: Profiles_GetAllProfiles parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.ProfilesGetAPIResponseDTO' /v1/admin/profiles/accessible-tenants: get: tags: - Profiles summary: Retrieve a list of analytic tenant profiles description: "Retrieve a list of profiles available for analytic tenants.\n\n **Note:** Administrating tenants only." operationId: Profiles_GetAnalyticProfiles responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.ProfilesGetAPIResponseDTO' /v1/admin/profiles/accessible-tenants/{profileId}: get: tags: - Profiles summary: Retrieve the details of an analytic tenant profile description: "Get the details of an analytic tenant profile.\n\n **Note:** Administrating tenants only." operationId: Profiles_GetAnalyticProfileDetail parameters: - name: profileId in: path description: The ID of the profile to retrieve details for. required: true schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.ProfileGetAPIResponseDTO' /v1/admin/profiles/accessible-tenants/{profileId}/assign: put: tags: - Profiles summary: Assign an analytic tenant profile to administrating tenant users description: "Assign an analytic tenant profile to a list of administrating tenant users\n for a list of analytic tenants.\n\n **Note:**\n - Administrating tenants only.\n - You can revoke a profile from a user with this request by updating the validityEndTime to be\n \"less than\" the current time (that is, in the past)." operationId: Profiles_AssignAnalyticProfile parameters: - name: profileId in: path description: The ID of the profile to assign. required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.AccessibleTenantProfileAssignmentRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.AccessibleTenantProfileAssignmentResponseDTO' /v1/admin/profiles/accessible-tenants/{profileId}/remove: delete: tags: - Profiles summary: Remove an analytic tenant profile from administrating tenant users description: "Remove an analytic tenant profile from a list of administrating tenant users for a list of analytic tenants.\n\n **Note:** Administrating tenants only." operationId: Profiles_RemoveAnalyticProfile parameters: - name: profileId in: path description: The ID of the profile to remove. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.AccessibleTenantProfileRevokeRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.AccessibleTenantProfileRevokeResponseDTO' /v1/admin/profiles/{profileId}: get: tags: - Profiles summary: Retrieve the details of a profile description: "Get the details of a specific profile. For administrating tenants, this retrieves\n the details of administrating tenant profiles." operationId: Profiles_GetProfileDetail parameters: - name: profileId in: path description: The ID of the profile to retrieve details for. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.ProfileGetAPIResponseDTO' /v1/admin/profiles/{profileId}/assign: put: tags: - Profiles summary: Assign a profile to a list of users description: "Assign a profile to a list of users. For administrating tenants,\n this assigns an administrating tenant profile to a list of users." operationId: Profiles_AssignProfile parameters: - name: profileId in: path description: The ID of the profile to assign to a list of users. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.LocalTenantProfileAssignmentRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.LocalTenantProfileAssignmentResponseDTO' /v1/admin/profiles/{profileId}/remove: delete: tags: - Profiles summary: Remove a profile from a list of users description: "Remove a profile from a list of users. For administrating tenants, this\n removes an administrating tenant profile from a list of users." operationId: Profiles_RemoveProfile parameters: - name: profileId in: path description: The ID of the profile to remove to a list of users. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.LocalTenantProfileRevokeRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.LocalTenantProfileRevokeResponseDTO' /v1/admin/projects: get: tags: - Projects summary: Retrieve a list of draft projects accessible to the user description: "Get a list of draft projects accessible to the requesting user in the tenant.\n\n A project is accessible if it is owned by the user or shared to the user." operationId: Projects_GetProjects parameters: - name: with in: query description: "The types of draft projects to include in the request response.\n * If empty, returns all the `Open` draft projects.\n * If `Open`, returns all Open draft projects.\n * If `Approval`, returns all draft projects in the approval stage. Changes cannot made in Approval projects.\n * If `Rejected`, returns all draft projects that have been rejected. Changes cannot be committed in Rejected projects.\n * If `Archived`, returns all draft projects that have been archived. Changes cannot be committed in Archived projects." schema: type: array items: type: string - name: limit in: query description: The number of projects to return per type. The maximum number of projects to retrieve per type is 1000. The default is 100. schema: type: integer format: int32 - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.GetProjectsAPIResponseDTO' post: tags: - Projects summary: Create a new draft project description: Create a new draft project in the tenant. operationId: Projects_CreateProject parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.ProjectDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.ProjectDTO' /v1/admin/projects/{projectId}: get: tags: - Projects summary: Retrieve a draft project's information description: "Retrieve the details of an accessible draft project. You must know the ID of the project to retrieve its details. To retrieve draft project IDs, see `GET /v1/admin/projects`.\n\n A project is accessible if it is owned by the user or shared to the user." operationId: Projects_GetProject parameters: - name: projectId in: path description: The unique identifier of the draft project you want to retrieve. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.ProjectDTO' post: tags: - Projects summary: Perform an operation on a draft project description: "Perform operations on a draft project. The following operations are supported:\n * `commitAndPublish`: Commits project changes and publishes the project to production." operationId: Projects_RunProjectOperation parameters: - name: projectId in: path required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.ProjectOperationRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.ProjectOperationResponseDTO' delete: tags: - Projects summary: Delete a draft project description: Delete a draft project in the tenant. The project will first be archived if applicable. operationId: Projects_DeleteProject parameters: - name: projectId in: path description: The unique ID of the draft project to be deleted. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.ProjectDTO' /v1/admin/projects/{projectId}/commits: get: tags: - Projects summary: Retrieve a list of all committed changes in a project description: Retrieve the full list of all committed changes in a project. operationId: Projects_GetProjectCommits parameters: - name: projectId in: path description: The unique identifier of the draft project you want to retrieve the committed changes for. required: true schema: type: string - name: limit in: query description: The maximum number of committed changes to return. Default is 400. schema: type: integer format: int32 - name: start in: query description: The starting index of the first committed change to return. Default is 0. schema: type: integer format: int32 - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.ProjectCommitsAPIResponseDTO' put: tags: - Projects summary: Import committed changes into a project description: 'Import a ZIP file that contains a list of committed changes into a draft project. The file must be an export from `POST /v1/admin/production-versions`. Use this API after making changes in a development environment to copy the changes to a draft project in your production environment.' operationId: Projects_PutProjectCommits parameters: - name: projectId in: path required: true description: The unique identifier of the draft project you want to import committed changes into. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: required: true content: application/zip: schema: type: string format: binary responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ProjectCommitsAPIResponseDTO' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /v1/admin/security-artifacts/sync-to-non-versioned: post: tags: - Permissions summary: Synchronize versioned security artifacts description: "Copies permissions, data access sets, user groups, and user direct assignments from the versioned environment to the non-versioned environment. This operation immediately applies the security configurations, independent of data versioning.\n\n The versioned environment utilizes projects and data versions while the non-versioned environment applies changes directly.\n\n This endpoint always synchronizes permissions and data access sets. You can optionally synchronize user group assignments and direct permissions assignments to users.\n\n Use this to apply security configurations immediately without waiting for data version changes. This is particularly useful for administrating tenants syncing security artifacts to analytic tenants." operationId: Permissions_SyncToNonVersioned parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.NonVersionedSyncRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.NonVersionedSyncResponseDTO' /v1/admin/system-status: get: tags: - SystemStatus summary: Check the overall current status of Visier's systems description: "Check the current overall status of Visier's systems.\n\n The overall status is one of:\n * ``UP`` : All systems are operational.\n * `DOWN`: At least one system is not fully operational." operationId: SystemStatus_SystemStatus parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/systemstatus.SystemStatusDTO' post: tags: - SystemStatus summary: Check the overall current status of Visier's systems description: "Check the current overall status of Visier's systems.\n\n The overall status is one of:\n * ``UP`` : All systems are operational.\n * `DOWN`: At least one system is not fully operational." operationId: SystemStatus_PostSystemStatus parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/systemstatus.SystemStatusDTO' /v1/admin/tenants: get: tags: - TenantsV1 summary: Retrieve a list of all analytic tenants description: "Retrieve the full list of analytic tenants managed by you with their current states and the\n content modules assigned to them, and all other relevant details for the tenants if requested." operationId: TenantsV1_GetTenants parameters: - name: limit in: query description: The limit of analytic tenant details to retrieve. schema: type: integer format: int32 - name: start in: query description: The index to start retrieving results from, also known as offset. The index begins at 0. schema: type: integer format: int32 - name: details in: query description: If `true`, the response returns information about the data version and modules. schema: type: boolean responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.AllTenantsStatusAPIDTO' post: tags: - TenantsV1 summary: Add an analytic tenant description: "Prior to processing and loading an analytic tenant's data files, you must provision, or create, that tenant.\n A provisioned analytic tenant is automatically enabled. If the tenant's data is loaded after provisioning, that\n data is immediately accessible by their users.\n\n Create an analytic tenant and identify the applications assigned to the tenant. Visier\n organizes content under a set of modules.\n\n Contact Visier Support to determine the list of modules allocated to you." operationId: TenantsV1_AddTenant requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.TenantProvisionAPIDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.TenantProvisionAPIDTO' /v1/admin/tenants/batch: post: tags: - TenantsV1 summary: Add analytic tenants description: "Prior to processing and loading an analytic tenant's data files, you must provision, or create, that tenant.\n A provisioned analytic tenant is automatically enabled. If the tenant's data is loaded after provisioning, that\n data is immediately accessible by their users.\n\n Create one or more analytic tenants and identify the applications assigned to the tenants. The maximum number of tenants to create in one request is 200.\n\n Contact Visier Support to determine the list of modules allocated to you." operationId: TenantsV1_AddTenants requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.BatchTenantProvisionAPIDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.BatchTenantProvisionAPIDTO' /v1/admin/tenants/{tenantId}: get: tags: - TenantsV1 summary: Retrieve an analytic tenant's details description: "Retrieve all details for a specified analytic tenant. Doing so allows you to see the current state\n of the tenant, the content modules assigned to it, and all other relevant details for the tenant." operationId: TenantsV1_GetTenant parameters: - name: tenantId in: path description: "The ID of the tenant. For example, WFF_{XXX}~{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the analytic tenant code." required: true schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.TenantDetailAPIDTO' put: tags: - TenantsV1 summary: Update an analytic tenant description: "You may need to update analytic tenants as they grow and as your organization upgrades the content available to\n them. You may also encounter a scenario where an analytic tenant transitions across different industries.\n\n To ensure that the analytic tenant receives accurate benchmarks and predictive functionality, update their\n industry code in the Visier system.\n\n You can use this API to update any field on an analytic tenant, except `tenantCode`." operationId: TenantsV1_UpdateTenant parameters: - name: tenantId in: path description: The ID of the tenant to update. required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.UpdateTenantModel' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.TenantProvisionAPIDTO' delete: tags: - TenantsV1 summary: Deprovision an analytic tenant description: "Warning! Deprovisioning an analytic tenant is not reversible.\n Before deprovisioning, you must disable an analytic tenant. For more information, see **`/v1/admin/tenants/{tenantId}/disable`**.\n\n This API removes an analytic tenant permanently from the Visier system. If you are unsure whether an analytic tenant\n may be re-enabled on any of the Visier modules at any time, you may instead want to disable the analytic tenant.\n\n If successful, the response returns the status \"Deprovisioned\". This indicates that the tenant is scheduled for\n deprovisioning, which may take several days to complete." operationId: TenantsV1_DeleteTenant parameters: - name: tenantId in: path description: "The ID of the tenant. For example, WFF_{XXX}~{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the analytic tenant code." required: true schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.TenantStatusAPIDTO' /v1/admin/tenants/{tenantId}/disable: put: tags: - TenantsV1 summary: Disable an analytic tenant description: "Disable an analytic tenant and remove access to Visier visualizations for the tenant's users.\n\n You must disable an analytic tenant before deprovisioning, or removing, it from the system." operationId: TenantsV1_DisableTenant parameters: - name: tenantId in: path description: "The ID of the tenant. For example, WFF_{XXX}~{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the analytic tenant code." required: true schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.TenantStatusAPIDTO' /v1/admin/tenants/{tenantId}/enable: put: tags: - TenantsV1 summary: Enable an analytic tenant description: "An analytic tenant is enabled when you provision or create the tenant.\n\n Use this API to enable a tenant that you have specifically disabled; for example, if you previously did not\n want that tenant to have access to Visier visualizations, but now do." operationId: TenantsV1_EnableTenant parameters: - name: tenantId in: path description: "The ID of the tenant. For example, WFF_{XXX}~{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the analytic tenant code." required: true schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.TenantStatusAPIDTO' /v1/admin/user-groups: get: tags: - UsersV1 summary: Retrieve a list of all user groups description: "This API allows you to retrieve the full list of user groups in a tenant.\n\n To specify the project in which to retrieve user groups for a tenant, provide a project UUID in the `ProjectID` request header. If omitted, the request retrieves user information from production." operationId: UsersV1_GetAllUserGroups parameters: - name: tenantCode in: query description: Specify the tenant to retrieve the list of user groups from. schema: type: string - name: limit in: query description: The number of results to return. The maximum number of users to retrieve is 1000. schema: type: integer format: uint32 - name: start in: query description: The index to start retrieving results from, also known as offset. schema: type: integer format: uint32 - name: ProjectID in: header description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version. schema: type: string format: uuid - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupsGetAPIResponseDTO' /v1/admin/user-groups/permissions: put: tags: - UsersV1 summary: Assign permissions to user groups description: "This API allows you to assign a permission to specific user groups. This assigns the permission to all users in the user group.\n\n To assign permissions to user groups in a project, provide a project UUID in the `ProjectID` request header." operationId: UsersV1_AssignPermissionsToUserGroups parameters: - name: ProjectID in: header description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version. schema: type: string format: uuid - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.PermissionsToUserGroupsRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.PermissionsToUserGroupForTenantDTO' delete: tags: - UsersV1 summary: Remove permissions from user groups description: "This API allows you to remove a permission from specific user groups.\n\n To remove permissions from user groups in a project, provide a project UUID in the `ProjectID` request header." operationId: UsersV1_RevokePermissionsFromUserGroups parameters: - name: ProjectID in: header description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version. schema: type: string format: uuid - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.PermissionsToUserGroupsRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.PermissionsToUserGroupForTenantDTO' /v1/admin/user-groups/users: put: tags: - UsersV1 summary: Assign users to user groups description: "This API allows you to assign users to specific user groups.\n\n To assign users to user groups in a project for the administrating tenant, provide a project UUID in the `ProjectID` request header.\n Administrating tenants can assign users to user groups in multiple analytic tenants by providing a tenant code and project ID in the request body.\n\n We recommend that administrating tenants set the analytic tenant in which to execute the API call using the `TargetTenantID` request header." operationId: UsersV1_AddUsersToUserGroup parameters: - name: ProjectID in: header description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version. schema: type: string format: uuid - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean - name: Prefer in: header description: 'When `NonVersioned: true`, use `Prefer` to optionally specify if API calls should be subject to locking. Locking prevents incremental changes in multiple API calls from overwriting each other. The `Prefer` header works alongside a tenant feature flag. When enabled, the default is `nvLock=global`. When disabled, the default is not to lock API calls. Contact Visier Technical Support to enable the tenant feature flag. Valid values for the `Prefer` header: * `nvLock=global`: Run API calls sequentially. Sequential API calls prevent calls from unintentionally overwriting each other. * `nvLock=artifact`: Allow API calls in parallel. Parallel API calls only work if the calls do not conflict with each other. If a change wasn''t applied, the request fails and returns the HTTP 409 conflict error. Run the request again until successful. * `nvLock=none`: Disable the global lock if the tenant feature flag is enabled.' schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.UsersToUserGroupsRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.SecurityAssignmentResponseDTO' delete: tags: - UsersV1 summary: Remove users from user groups description: "This API allows you to remove users from specific user groups.\n\n To remove users from user groups in a project for the administrating tenant, provide a project UUID in the `ProjectID` request header.\n Administrating tenants can remove users to user groups in multiple analytic tenants by providing a tenant code and project ID in the request body.\n\n We recommend that administrating tenants set the analytic tenant in which to execute the API call using the `TargetTenantID` request header." operationId: UsersV1_RemoveUsersFromUserGroup parameters: - name: ProjectID in: header description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version. schema: type: string format: uuid - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean - name: Prefer in: header description: 'When `NonVersioned: true`, use `Prefer` to optionally specify if API calls should be subject to locking. Locking prevents incremental changes in multiple API calls from overwriting each other. The `Prefer` header works alongside a tenant feature flag. When enabled, the default is `nvLock=global`. When disabled, the default is not to lock API calls. Contact Visier Technical Support to enable the tenant feature flag. Valid values for the `Prefer` header: * `nvLock=global`: Run API calls sequentially. Sequential API calls prevent calls from unintentionally overwriting each other. * `nvLock=artifact`: Allow API calls in parallel. Parallel API calls only work if the calls do not conflict with each other. If a change wasn''t applied, the request fails and returns the HTTP 409 conflict error. Run the request again until successful. * `nvLock=none`: Disable the global lock if the tenant feature flag is enabled.' schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.UsersToUserGroupsRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.SecurityAssignmentResponseDTO' /v1/admin/user-groups/{userGroupId}/users: get: tags: - UsersV1 summary: Retrieve a list of user group users description: "This API allows you to retrieve the list of users explicitly assigned to a user group. Users that are implicitly\n included in the user group through the user group's dynamic filters are not returned by this endpoint.\n\n To specify the project in which to retrieve user group users for the login tenant, provide\n a project UUID in the `ProjectID` request header. If omitted, the request retrieves user group users from production." operationId: UsersV1_GetUserGroupUsers parameters: - name: userGroupId in: path description: The ID of user group. required: true schema: type: string - name: tenantFilter in: query description: Specifies the tenant to retrieve the list of users from. schema: type: string - name: limit in: query description: The number of results to return. The maximum number of tenants to retrieve is 100. schema: type: integer format: uint32 - name: start in: query description: The index to start retrieving results from, also known as offset. The index begins at 0. schema: type: integer format: uint32 - name: ProjectID in: header description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version. schema: type: string format: uuid - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupsUsersDTO' /v1/admin/users: get: tags: - UsersV1 summary: Retrieve a list of all users description: "This API allows you to retrieve the full list of users and their current states.\n\n To specify the project in which to retrieve user information, provide a project UUID in the `ProjectID` request header. If omitted, the request retrieves user information from production." operationId: UsersV1_GetAllUsers parameters: - name: tenantCode in: query description: Specify the tenant to retrieve a list of users from. schema: type: string - name: assignedProfiles in: query description: If true, the response returns a list of the user's assigned profiles. schema: type: boolean - name: assignedPermissions in: query description: If true, the response returns the user's assigned permissions. schema: type: boolean - name: assignedUserGroups in: query description: If true, the response returns the user's assigned user groups. schema: type: boolean - name: limit in: query description: The number of results to return. The maximum number of users to retrieve is 1000. schema: type: integer format: uint32 - name: start in: query description: The index to start retrieving results from, also known as offset. The index begins at 0. schema: type: integer format: uint32 - name: ProjectID in: header description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version. schema: type: string format: uuid - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.AllUsersGetAPIResponseDTO' post: tags: - UsersV1 summary: Add a user description: Create a new user. Administrating tenant users can specify the tenant in which to add a user. operationId: UsersV1_AddUser parameters: - name: tenantCode in: query description: Specify the tenant to create a user in. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.UserCreationAPIRequestDTO' required: true responses: '201': description: OK content: application/json: schema: $ref: '#/components/schemas/UserCreationAPIResponseDTO' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /v1/admin/users/{userId}: get: tags: - UsersV1 summary: Retrieve a user's details description: "This API allows you to retrieve all details for a specified user.\n\n To specify the project in which to retrieve user information, provide a project UUID in the `ProjectID` request header. If omitted, the request retrieves user information from production." operationId: UsersV1_GetUserDetail parameters: - name: userId in: path description: The ID of the user you want to retrieve. required: true schema: type: string - name: tenantCode in: query description: Specify the tenant to retrieve a user from. schema: type: string - name: assignedProfiles in: query description: If true, the response returns a list of the user's assigned profiles. schema: type: boolean - name: assignedPermissions in: query description: If true, the response returns the user's assigned permissions. schema: type: boolean - name: assignedUserGroups in: query description: If true, the response returns the user's assigned user groups. schema: type: boolean - name: ProjectID in: header description: Optionally, specify a project in which to make the request. If omitted, the request uses the production version. schema: type: string format: uuid - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.UserGetAPIResponseDTO' put: tags: - UsersV1 summary: Update a user description: Update an existing user's information, such as their display name or if the user is enabled in Visier. operationId: UsersV1_UpdateUser parameters: - name: userId in: path description: The ID of the user you want to update. required: true schema: type: string - name: tenantCode in: query description: Specify the tenant to update a user in. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.UserUpdateAPIRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.UserUpdateAPIRequestDTO' delete: tags: - UsersV1 summary: Delete a user description: Delete an existing user. Administrating tenant users can specify the tenant from which to delete a user. operationId: UsersV1_DeleteUser parameters: - name: userId in: path description: The ID of the user you want to delete. required: true schema: type: string - name: tenantCode in: query description: Specify the tenant to delete a user in. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.DeleteUserResponse' /v1/admin/users/{userId}/accessible-tenant-profiles: get: tags: - Profiles summary: Retrieve an administrating tenant user's analytic tenant profiles description: "Retrieve a specified user's assigned profiles for analytic tenants.\n\n **Note:** Administrating tenants only." operationId: Profiles_GetAnalyticUserProfile parameters: - name: userId in: path description: The ID of the user you want to retrieve. required: true schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.AllProfileAssignedForAccessibleTenantDTO' /v1/admin/users/{userId}/profiles: get: tags: - Profiles summary: Retrieve a user's profiles description: "Retrieve a specified user's assigned profiles. For administrating tenants,\n this retrieves a user's administrating tenant profiles." operationId: Profiles_GetUserProfile parameters: - name: userId in: path description: The ID of the user you want to retrieve. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.AllProfileAssignedForLocalTenantDTO' /v1/admin/vee/instructions: get: tags: - VeeConfiguration summary: Retrieve Vee instructions description: Retrieve all Vee instructions for a tenant. Administrating tenants can specify the tenant from which to retrieve instructions using the `TargetTenantID` header. operationId: VeeConfiguration_GetVeeInstructions parameters: - name: category in: query description: Optionally filter instructions by category. When omitted, all instructions are returned. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.InstructionsAPIResponseDTO' post: tags: - VeeConfiguration summary: Create a Vee instruction description: Create a new Vee instruction for a tenant. Administrating tenants can specify the tenant in which to create the instruction using the `TargetTenantID` header. operationId: VeeConfiguration_CreateVeeInstruction parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.InstructionAPIResponseDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.InstructionAPIResponseDTO' /v1/admin/vee/instructions/{instructionId}: get: tags: - VeeConfiguration summary: Retrieve a Vee instruction's details description: Retrieve the details of a specific Vee instruction. Administrating tenants can specify the tenant from which to retrieve the instruction using the `TargetTenantID` header. operationId: VeeConfiguration_GetVeeInstruction parameters: - name: instructionId in: path description: The ID of the Vee instruction to retrieve. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.InstructionAPIResponseDTO' put: tags: - VeeConfiguration summary: Update a Vee instruction description: "Update an existing Vee instruction. The instruction definition in your API call replaces the prior definition. You must provide the entire definition in the `PUT` call. If you omit values for optional fields, those values reset to their respective defaults.\n\n Administrating tenants can specify the tenant in which to update the instruction using the `TargetTenantID` header." operationId: VeeConfiguration_UpdateVeeInstruction parameters: - name: instructionId in: path description: The ID of the Vee instruction to update. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.InstructionAPIResponseDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.InstructionAPIResponseDTO' delete: tags: - VeeConfiguration summary: Delete a Vee instruction description: Delete a Vee instruction by its unique identifier. Administrating tenants can specify the tenant from which to delete the instruction using the `TargetTenantID` header. operationId: VeeConfiguration_DeleteVeeInstruction parameters: - name: instructionId in: path description: The ID of the Vee instruction to delete. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.InstructionAPIResponseDTO' /v1/admin/vee/safeguards: get: tags: - VeeConfiguration summary: Retrieve Vee safeguards description: Retrieve all Vee safeguards for a tenant. Administrating tenants can specify the tenant from which to retrieve safeguards using the `TargetTenantID` header. operationId: VeeConfiguration_GetVeeSafeguards parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.SafeguardsAPIResponseDTO' post: tags: - VeeConfiguration summary: Create a Vee safeguard description: Create a new Vee safeguard for a tenant. Administrating tenants can specify the tenant in which to create the safeguard using the `TargetTenantID` header. operationId: VeeConfiguration_CreateVeeSafeguard parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.SafeguardAPIResponseDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.SafeguardAPIResponseDTO' /v1/admin/vee/safeguards/{safeguardId}: get: tags: - VeeConfiguration summary: Retrieve a Vee safeguard's details description: Retrieve the details of a specific Vee safeguard. Administrating tenants can specify the tenant from which to retrieve the safeguard using the `TargetTenantID` header. operationId: VeeConfiguration_GetVeeSafeguard parameters: - name: safeguardId in: path description: The ID of the Vee safeguard to retrieve. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.SafeguardAPIResponseDTO' put: tags: - VeeConfiguration summary: Update a Vee safeguard description: "Update an existing Vee safeguard. The safeguard definition in your API call replaces the prior definition. You must provide the entire definition in the `PUT` call. If you omit values for optional fields, those values reset to their respective defaults.\n\n Administrating tenants can specify the tenant in which to update the safeguard using the `TargetTenantID` header." operationId: VeeConfiguration_UpdateVeeSafeguard parameters: - name: safeguardId in: path description: The ID of the Vee safeguard to update. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.SafeguardAPIResponseDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.SafeguardAPIResponseDTO' delete: tags: - VeeConfiguration summary: Delete a Vee safeguard description: Delete a Vee safeguard by its unique identifier. Administrating tenants can specify the tenant from which to delete the safeguard using the `TargetTenantID` header. operationId: VeeConfiguration_DeleteVeeSafeguard parameters: - name: safeguardId in: path description: The ID of the Vee safeguard to delete. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.SafeguardAPIResponseDTO' /v1/op/validation/tenants: get: tags: - TenantsV1 summary: Validate metric values for all analytic tenants description: "As you onboard more analytic tenants, you can validate the data visible to your users to ensure it matches the\n source systems from which it was exported and that it matches what your expectations are for this data.\n\n The metric values included in the response are the tenant's configured summary metrics. Administrators can\n configure summary metrics in a project:\n - Sign in to Visier as an administrator.\n - In a project, on the navigation bar, click the **Home** button.\n - Click **Dashboard**, and then click **Edit Summary Metrics**.\n - Select the metrics that you want to validate, and then close the **Summary Metrics** dialog.\n - Publish the project to production." operationId: TenantsV1_ValidateTenants parameters: - name: limit in: query description: The limit of analytic tenant details to retrieve. schema: type: integer format: int32 - name: start in: query description: The index to start retrieving results from, also known as offset. The index begins at 0. schema: type: integer format: int32 - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/dp_automation.TenantPreviewEntriesSummaryListDTO' /v1/op/validation/tenants/{tenantId}: get: tags: - TenantsV1 summary: Validate an analytic tenant's metric values description: "Retrieve the metric values for an individual analytic tenant. The metric values included in the\n response are the tenant's configured summary metrics. Administrators can configure summary metrics in a project:\n - Sign in to Visier as an administrator.\n - In a project, on the navigation bar, click the **Home button**.\n - Click **Dashboard**, and then click **Edit Summary Metrics**.\n - Select the metrics that you want to validate, and then close the **Summary Metrics** dialog.\n - Publish the project to production." operationId: TenantsV1_ValidateTenant parameters: - name: tenantId in: path description: "The ID of the tenant. For example, WFF_{XXX}~{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the analytic tenant code." required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/dp_automation.TenantPreviewEntriesSummaryDTO' /v1alpha/admin/api-network-subnets: get: tags: - NetworkSubnets summary: Retrieve a list of API network subnets description: "Retrieve a list of all IP addresses that can call Visier APIs.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: NetworkSubnets_GetApiSubnets parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.NetworkSubnetsMessageResponse' put: tags: - NetworkSubnets summary: Update API network subnets description: "Overwrite the existing list of IP addresses that can call Visier APIs with a new list. IP addresses must use the Classless Inter-Domain Routing (CIDR) format: xxx.xxx.xxx.xxx/xx.\n\n When updating allowed network subnets, the definition in your API call replaces the prior definition. You must provide the entire definition in the PUT call. If you omit IP addresses from the update request, those IP addresses are removed from the allowlist We recommend that you retrieve the current list of allowed network subnets before you update the list.\n\n **Note**: By updating the allowed network subnets, you may remove your current IP address from the allowlist. If this happens, you will lock yourself out from making additional API calls. Visier does not allow lock outs unless you set `confirmLockout` to `true`. Default is `false`.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: NetworkSubnets_SetApiSubnets parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.NetworkSubnetsMessageRequest' required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.NetworkSubnetsMessageResponse' post: tags: - NetworkSubnets summary: Add API network subnets description: "Add IP addresses to the list of allowed network subnets that can call Visier APIs. IP addresses must use the Classless Inter-Domain Routing (CIDR) format: xxx.xxx.xxx.xxx/xx.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: NetworkSubnets_AddApiSubnets requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.NetworkSubnetsMessageRequest' required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.NetworkSubnetsMessageResponse' delete: tags: - NetworkSubnets summary: Delete API network subnets description: "Remove IP addresses from the list of allowed network subnets that can call Visier APIs. IP addresses must use the Classless Inter-Domain Routing (CIDR) format: xxx.xxx.xxx.xxx/xx.\n\n When updating allowed network subnets, the definition in your API call replaces the prior definition. You must provide the entire definition in the PUT call. If you omit IP addresses from the update request, those IP addresses are removed from the allowlist We recommend that you retrieve the current list of allowed network subnets before you update the list.\n\n **Note**: By deleting the allowed network subnets, you may remove your current IP address from the allowlist. If this happens, you will lock yourself out from making additional API calls. Visier does not allow lock outs unless you set `confirmLockout` to `true`. Default is `false`.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: NetworkSubnets_DeleteApiSubnets parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.NetworkSubnetsMessageRequest' required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.NetworkSubnetsMessageResponse' /v1alpha/admin/consolidated-analytics/tenants: get: tags: - ConsolidatedAnalytics summary: Retrieve a list of all consolidated analytics tenants description: "Retrieve the full list of consolidated analytics tenants in your administrating tenant.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: ConsolidatedAnalytics_ListTenants parameters: - name: limit in: query description: The maximum number of tenants to return. The maximum value is 1000. Default is 400. schema: type: integer format: int32 - name: start in: query description: The starting index of the first tenant to return. Default is 0. schema: type: integer format: int32 responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.ConsolidatedAnalyticsAPITenantListResponseDTO' post: tags: - ConsolidatedAnalytics summary: Create a consolidated analytics tenant description: "Create a consolidated analytics tenant.\n\n A new CA tenant has no source tenants and no excluded sources.\n\n **Note:** CA tenant codes must have a prefix of CA. For example, WFF_{XXX}~CA{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the consolidated analytic tenant code.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: ConsolidatedAnalytics_CreateTenant requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.ConsolidatedAnalyticsAPITenantCreateRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.ConsolidatedAnalyticsAPITenantCreateRequestDTO' /v1alpha/admin/consolidated-analytics/tenants-with-details: get: tags: - ConsolidatedAnalytics summary: Retrieve the details of all consolidated analytics tenants description: "Retrieve the full list of consolidated analytics tenants and their details in your administrating tenant.\n\n **Note:** If your consolidated analytics tenants have thousands of source tenants, we recommend that you use the `GET /admin/consolidated-analytics/tenants` endpoint to get all CA tenants and then use the `GET /admin/consolidated-analytics/tenants/{tenantId}/source-tenants` and `GET /admin/consolidated-analytics/tenants/{tenantId}/excluded-sources` endpoints to retrieve information about specific CA tenants.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: ConsolidatedAnalytics_ListTenantsWithDetails parameters: - name: limit in: query description: The maximum number of tenants to return. The maximum value is 1000. Default is 400. schema: type: integer format: int32 - name: start in: query description: The starting index of the first tenant to return. Default is 0. schema: type: integer format: int32 responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.ConsolidatedAnalyticsAPITenantWithDetailsListResponseDTO' /v1alpha/admin/consolidated-analytics/tenants/{tenantId}/excluded-sources: get: tags: - ConsolidatedAnalytics summary: Retrieve a consolidated analytics tenant's excluded sources description: "Retrieve a CA tenant's excluded sources.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: ConsolidatedAnalytics_ListExcludedSources parameters: - name: tenantId in: path description: "The ID of the tenant. For example, WFF_{XXX}~CA{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the consolidated analytic tenant code." required: true schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.ConsolidatedAnalyticsAPIExcludedSourceListDTO' put: tags: - ConsolidatedAnalytics summary: Set a consolidated analytics tenant's excluded sources description: "Define the excluded sources for a consolidated analytics tenant.\n\n After you create a CA tenant, you may optionally define a list of excluded sources. The excluded sources are the sources whose data is excluded from the CA tenant.\n You can also use this API to replace the list of excluded sources for an existing CA tenant.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: ConsolidatedAnalytics_SetExcludedSources parameters: - name: tenantId in: path description: "The ID of the tenant. For example, WFF_{XXX}~CA{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the consolidated analytic tenant code." required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.ExcludedSourcesBody' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.ConsolidatedAnalyticsAPIExcludedSourceListDTO' delete: tags: - ConsolidatedAnalytics summary: Remove excluded sources from a consolidated analytics tenants description: "Remove excluded sources from the list of excluded sources for a consolidated analytics tenant.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: ConsolidatedAnalytics_RemoveExcludedSources parameters: - name: tenantId in: path description: "The ID of the tenant. For example, WFF_{XXX}~CA{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the consolidated analytic tenant code." required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.ExcludedSourcesBody' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.ConsolidatedAnalyticsAPIExcludedSourceListDTO' patch: tags: - ConsolidatedAnalytics summary: Add excluded sources to a consolidated analytics tenant description: "Add excluded sources to the list of excluded sources for a consolidated analytics tenant.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: ConsolidatedAnalytics_AddExcludedSources parameters: - name: tenantId in: path description: "The ID of the tenant. For example, WFF_{XXX}~CA{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the consolidated analytic tenant code." required: true schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.ExcludedSourcesBody' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.ConsolidatedAnalyticsAPIExcludedSourceListDTO' /v1alpha/admin/consolidated-analytics/tenants/{tenantId}/source-tenants: get: tags: - ConsolidatedAnalytics summary: Retrieve a consolidated analytics tenant's source tenants description: "Retrieve a CA tenant's source tenants.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: ConsolidatedAnalytics_ListSourceTenants parameters: - name: tenantId in: path description: "The ID of the tenant. For example, WFF_{XXX}~CA{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the consolidated analytic tenant code." required: true schema: type: string - name: limit in: query description: The maximum number of source tenants to return. The maximum value is 1000. Default is 400. schema: type: integer format: int32 - name: start in: query description: The starting index of the first source tenant to return. Default is 0. schema: type: integer format: int32 responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.ConsolidatedAnalyticsAPISourceTenantListDTO' put: tags: - ConsolidatedAnalytics summary: Set a consolidated analytics tenant's source tenants description: "Define the source tenants for a consolidated analytics tenant.\n\n After you create a CA tenant, you must define a list of its source tenants. The source tenants are the tenants whose data is aggregated in the CA tenant.\n You can also use this API to replace the list of source tenants for an existing CA tenant.\n\n If successful, the response returns an updated list of source tenants.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: ConsolidatedAnalytics_SetSourceTenants parameters: - name: tenantId in: path description: "The ID of the tenant. For example, WFF_{XXX}~CA{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the consolidated analytic tenant code." required: true schema: type: string - name: limit in: query description: The maximum number of source tenants to return. The maximum value is 1000. Default is 400. schema: type: integer format: int32 requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.TenantCodeBody' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.ConsolidatedAnalyticsAPISourceTenantListDTO' delete: tags: - ConsolidatedAnalytics summary: Remove source tenants from a consolidated analytics tenants description: "Remove source tenants from the list of source tenants for a consolidated analytics tenant.\n\n If successful, the response returns an updated list of source tenants.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: ConsolidatedAnalytics_RemoveSourceTenants parameters: - name: tenantId in: path description: "The ID of the tenant. For example, WFF_{XXX}~CA{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the consolidated analytic tenant code." required: true schema: type: string - name: limit in: query description: The maximum number of source tenants to return. The maximum value is 1000. Default is 400. schema: type: integer format: int32 requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.TenantCodeBody' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.ConsolidatedAnalyticsAPISourceTenantListDTO' patch: tags: - ConsolidatedAnalytics summary: Add source tenants to a consolidated analytics tenant description: "Add source tenants to the list of source tenants for a consolidated analytics tenant.\n\n If successful, the response returns an updated list of source tenants.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: ConsolidatedAnalytics_AddSourceTenants parameters: - name: tenantId in: path description: "The ID of the tenant. For example, WFF_{XXX}~CA{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the consolidated analytic tenant code." required: true schema: type: string - name: limit in: query description: The maximum number of source tenants to return. The maximum value is 1000. Default is 400. schema: type: integer format: int32 requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.TenantCodeBody' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.ConsolidatedAnalyticsAPISourceTenantListDTO' /v1alpha/admin/email-domains: get: tags: - EmailDomains summary: Retrieve a list of allowed email domains description: "Retrieve the full list of allowed email domains.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: EmailDomains_ListAllowedEmailDomains responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.EmailDomainsDTO' put: tags: - EmailDomains summary: Add domains to the list of allowed domains description: "Add email address domains to the allowed domains list. The response returns an updated list of allowed email domains.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: EmailDomains_AddAllowedEmailDomains requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.EmailDomainsDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.EmailDomainsDTO' delete: tags: - EmailDomains summary: Remove domains from the list of allowed domains description: "Delete email address domains from the allowed domains list. The response returns an updated list of allowed email domains.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: EmailDomains_DeleteAllowedEmailDomains requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.DeleteEmailDomainsDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.DeleteEmailDomainsDTO' /v1alpha/admin/encryption-keys: get: tags: - EncryptionKeys summary: Retrieve a list of all encryption keys description: "Retrieve a list of all encryption keys. The response returns information about each key, including the key name, algorithm, user who generated the key, the generation date, and expiration date.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: EncryptionKeys_ListAllEncryptionKeysMetadata responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/designer.crypto.TenantEncryptionKeyDetailListDTO' post: tags: - EncryptionKeys summary: Generate an encryption key description: "Create an encryption key using a specific algorithm. The algorithm must be one of `HmacSHA224`, `HmacSHA256`, `HmacSHA384`, or `HmacSHA512`.\n \n In the request body, set the algorithm, give the key a display name and, optionally, set the UTC expiration date for the key pair in ISO-8601 format. Must be between 2 and 10 years. Default is 2 years.\n \n The maximum number of encryption keys per tenant is 5.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: EncryptionKeys_GenerateEncryptionKeys requestBody: content: application/json: schema: $ref: '#/components/schemas/designer.crypto.GenerateKeyRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/designer.crypto.TenantEncryptionKeyDTO' /v1alpha/admin/encryption-keys/{keyName}: delete: tags: - EncryptionKeys summary: Delete an encryption key description: "Delete a specific encryption key.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: EncryptionKeys_DeleteEncryptionKeys parameters: - name: keyName in: path description: The encryption key's display name. The name may only contain alphanumeric or dash (-) characters and must be between 3 and 36 characters long. required: true schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.KeyName' /v1alpha/admin/product/releases: get: tags: - ReleaseVersionConfiguration summary: Retrieve available product releases description: "Retrieve a list of release versions available for each product. The response returns information such as the unique ID of the product, the latest release version, and when the latest release version of the product will automatically be activated. Sometimes, the previous and latest versions are the same.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: ReleaseVersionConfiguration_GetAvailableReleases responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.ProductReleasesDTO' /v1alpha/admin/product/versions: get: tags: - ReleaseVersionConfiguration summary: Retrieve active product release versions description: "Retrieve the currently active product release versions for a tenant.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: ReleaseVersionConfiguration_GetReleaseVersions parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.ProductVersionsDTO' patch: tags: - ReleaseVersionConfiguration summary: Activate product release versions description: "Set the product release version to activate it on the selected tenants. Analytic tenants will automatically inherit the release version from the administrating tenant. You cannot rollback to a previous version.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: ReleaseVersionConfiguration_SetReleaseVersions requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.ProductVersionsDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.ProductVersionsUpdateResponseDTO' /v1alpha/admin/sidecar-app-configs/{applicationId}: get: tags: - SidecarSolutions summary: Retrieve a sidecar solution's settings description: "Retrieve the settings for a specific sidecar solution. You must know the solution ID of your sidecar solution. To get the ID, contact Visier Technical Support.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: SidecarSolutions_GetSidecarSolutionSettings parameters: - name: applicationId in: path description: The unique identifier of the solution to configure. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.SidecarSolutionSettingsDTO' put: tags: - SidecarSolutions summary: Update a sidecar solution's settings description: "Update a sidecar solution's settings. The response returns the settings after updating. When updating setting, we recommend that you first retrieve the existing settings using `GET`. You can use the `GET` response in your `PUT` request definition.\n\n In `PUT` requests, the definition in your API call replaces the prior definition. You must provide the entire definition in the `PUT` call. If you omit values from the update request, those values are removed.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: SidecarSolutions_SetSidecarAppConfigs parameters: - name: applicationId in: path description: The unique identifier of the solution to configure. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.SidecarSolutionSettingsDTO' required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.SidecarSolutionSettingsDTO' delete: tags: - SidecarSolutions summary: Delete a sidecar solution's settings description: "Delete the settings for a sidecar solution. This deletes all the settings for the solution.\n\n
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: SidecarSolutions_DeleteSidecarAppConfigs parameters: - name: applicationId in: path description: The unique identifier of the solution to configure. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.SidecarSolutionRequestDTO' required: true responses: '200': description: OK content: {} /v1beta/admin/sources: post: tags: - Sources summary: Perform an operation on all sources description: "Perform operations on all sources. The following operations are supported:\n * `exportSources`: Export a ZIP file that contains a list of all sources in the application.\n * `cloneFilesIntoSource`: Clone a source's files into a different source.\n\n
**Note:** This API is in **beta**. While in beta, APIs are interface-stable and implementation may change without notice. Rarely, interface changes may occur that are not backwards-compatible and require advance communication.\n If you are interested in using this API, please contact your Customer Success Manager (CSM)." operationId: Sources_RunSourcesOperation parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.SourcesAPIOperationRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.ExportSourcesAPIOperationResponseDTO' put: tags: - Sources summary: Import a list of sources description: 'Import a list of sources in ZIP format. The file must be an export from `POST /v1beta/admin/sources`. Use this API after making changes in a development environment to copy the changes to your production environment.
**Note:** This API is in **beta**. While in beta, APIs are interface-stable and implementation may change without notice. Rarely, interface changes may occur that are not backwards-compatible and require advance communication. If you are interested in using this API, please contact your Customer Success Manager (CSM).' operationId: Sources_PutSources parameters: - name: replaceAllExistingSources in: query description: If `false`, adds the sources from the ZIP to the sources in the target tenant. If `true`, removes all sources in the target tenant and adds the sources from the ZIP. Default is `false`. schema: type: boolean - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: required: true content: application/zip: schema: type: string format: binary responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SourcesAPIPutResponseDTO' default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /v2/admin/tenants: get: tags: - TenantsV2 summary: Retrieve a list of all analytic tenants description: "Retrieve the full list of analytic tenants managed by you with their current states and the content\n modules assigned to them, and all other relevant details for the tenants if requested." operationId: TenantsV2_ListTenants parameters: - name: limit in: query description: "The limit of analytic tenants to return. The limit is `1000` if the following fields are not included in the `mask`.\n - `homeAnalysisId`\n - `homeAnalysisByUserGroup`\n - `clickThroughLink`\n - `defaultCurrency`\n\n The limit is `400` if any of the above fields are included in the `mask` or if `mask` is not specified." schema: type: integer format: int32 - name: start in: query description: The starting index of the first tenant to return. Default is 0. schema: type: integer format: int32 - name: mask in: query description: "A list of fields to include in the response, separated by commas. If not specified, includes all fields in the response. Valid values:\n - `tenantCode`\n - `tenantDisplayName`\n - `currentDataVersion`\n - `traits`\n - `dataVersionDate`\n - `provisionDate`\n - `vanityUrlName`\n - `status`\n - `canAdministerOtherTenants`\n - `industryCode`\n - `industryInfo`\n - `purchasedModules`\n - `manuallyAddedModules`\n - `embeddableDomains`\n - `allowedOAuthIdpUrlDomains`\n - `customProperties`\n - `ssoInstanceIssuers`\n - `homeAnalysisId`\n - `homeAnalysisByUserGroup`\n - `clickThroughLink`\n - `clickThroughLinkEnabled`\n - `defaultCurrency`\n - `primaryBusinessLocation`\n - `effectiveIndustryCode`\n - `companySize`\n\n If `mask` is specified in both request body and on the query string, the effective `mask` is the set union of both inputs." schema: type: string - name: dataProfile in: query description: 'Returns tenants with the specified data profile. Valid values: `Regular`, `Integration`, `Demo`, `Cat`, `Test`, `ProductIntelligence`. If omitted, returns all tenants.' schema: type: string - name: tenantCodes in: query description: "A comma-separated string of the tenants to retrieve details for. Specify tenant codes in one of the following formats:\n - Full tenant code. Example: `WFF_j1r~c1o`.\n - Short tenant code. Example: `c1o`.\n\n Use the same format for all tenants. Do not use both formats in one request.\n\n Examples:\n - Full: `tenantCodes=WFF_j1r~c1o,WFF_j1r~e1a,WFF_j1r~i1o`\n - Short: `tenantCodes=c1o,e1a,i1o`\n\n The limit of analytic tenants to return is `1000` if the following fields are not included in the `mask` argument.\n - `homeAnalysisId`\n - `homeAnalysisByUserGroup`\n - `clickThroughLink`\n - `defaultCurrency`\n\n The limit is `400` if any of the above fields are included in the `mask` or if `mask` is not specified.\n\n **Note:** It is recommended to use the request body for long lists of tenant codes. The specified tenant codes are combined (set union)\n with the `tenantCodes` query parameter if values for both are provided." schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.TenantNamesFilterDTO' responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.TenantManagementAPIListResponseDTO' post: tags: - TenantsV2 summary: Add an analytic tenant description: "Prior to processing and loading an analytic tenant's data files, you must provision, or create, that tenant. A\n provisioned analytic tenant is automatically enabled. If the tenant's data is loaded after provisioning, that data\n is immediately accessible by their users.\n\n Create an analytic tenant and identify the\n applications assigned to the tenant. Visier organizes content under a set of modules.\n\n Contact Visier Support to determine the list of modules allocated to you.\n\n **Note:** API requests that contain `homeAnalysisId`, `homeAnalysisByUserGroup`, `clickThroughLink`, or\n `defaultCurrency` take longer to run because they require publishing a project to production." operationId: TenantsV2_CreateTenant parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.TenantManagementAPIUpdateRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.TenantManagementAPIUpdateResponseDTO' /v2/admin/tenants/{tenantId}: get: tags: - TenantsV2 summary: Retrieve an analytic tenant's details description: "Retrieve the details for a specified analytic tenant. Doing so allows you to see the current state\n of the tenant, the content modules assigned to it, and all other relevant details for the tenant." operationId: TenantsV2_TenantInfo parameters: - name: tenantId in: path description: The ID of the tenant to retrieve. required: true schema: type: string - name: mask in: query description: "A list of fields to include in the response, separated by commas. If not specified, includes all fields in the response. Valid values:\n - `tenantCode`\n - `tenantDisplayName`\n - `currentDataVersion`\n - `traits`\n - `dataVersionDate`\n - `provisionDate`\n - `vanityUrlName`\n - `status`\n - `canAdministerOtherTenants`\n - `industryCode`\n - `industryInfo`\n - `purchasedModules`\n - `manuallyAddedModules`\n - `embeddableDomains`\n - `allowedOAuthIdpUrlDomains`\n - `customProperties`\n - `ssoInstanceIssuers`\n - `homeAnalysisId`\n - `homeAnalysisByUserGroup`\n - `clickThroughLink`\n - `clickThroughLinkEnabled`\n - `defaultCurrency`\n - `primaryBusinessLocation`\n - `effectiveIndustryCode`\n - `companySize`\n\n If `mask` is specified in both request body and on the query string, the effective `mask` is the set union of both inputs." schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.MaskMessage' responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.TenantManagementAPIGetResponseDTO' put: tags: - TenantsV2 summary: Update an analytic tenant description: "You may need to update analytic tenants as they grow and as your organization upgrades the content available to them.\n You may also encounter a scenario where an analytic tenant transitions across different industries. To make updates\n to your tenants, use this API.\n\n * To ensure that the analytic tenant receives accurate benchmarks and predictive functionality, update their industry code in the Visier system.\n * To programmatically assign the Home analysis that analytic tenants see at login, use this API to set the default Home analysis for a tenant and specific user groups of that tenant.\n\n You can use this API to update any field on an analytic tenant, except `tenantCode`.\n\n **Note:** API requests that contain `homeAnalysisId`, `homeAnalysisByUserGroup`, `clickThroughLink`, or\n `defaultCurrency` take longer to run because they require publishing a project to production." operationId: TenantsV2_UpdateTenant parameters: - name: tenantId in: path description: The ID of the tenant to update. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.TenantManagementAPIUpdateRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.TenantManagementAPIUpdateResponseDTO' delete: tags: - TenantsV2 summary: Deprovision an analytic tenant description: "Warning! Deprovisioning an analytic tenant is not reversible.\n Before deprovisioning, you must disable an analytic tenant. For more information, see **`/v1/admin/tenants/{tenantId}/disable`**.\n\n This API removes an analytic tenant permanently from the Visier system. If you are unsure whether an analytic tenant\n may be re-enabled on any of the Visier modules at any time, you may instead want to disable the analytic tenant.\n\n If successful, the response returns the status \"Deprovisioned\". This indicates that the tenant is scheduled for\n deprovisioning, which may take several days to complete." operationId: TenantsV2_DeleteTenant parameters: - name: tenantId in: path description: "The ID of the tenant. For example, WFF_{XXX}~{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the analytic tenant code." required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.TenantStatusAPIDTO' /v2/admin/user-groups: get: tags: - UserGroupsV2 summary: Retrieve a list of user groups description: "Retrieve a collection of user groups. Use `with` to control the amount of detail returned in the response.\n `with` supports these values:\n * **permissions**: Include the user group's permissions.\n * **users**: Include the users in the user group.\n * **details**: Include all available information.\n\n This API can return a maximum of 1000 user groups. The default number of user groups to return is 100.\n\n To specify the project in which to return user groups, provide a project UUID in the `ProjectID` request header.\n\n
To specify the tenant in which to retrieve user groups, administrating tenants can provide an analytic tenant code in the `TargetTenantID` request header." operationId: UserGroupsV2_GetUserGroups parameters: - name: with in: query description: "Controls the amount of detail to return in the response. Omit to return basic information.\n * **permissions**: Include the user group's permissions.\n * **users**: Include the users in the user group.\n * **details**: Include all available information." schema: enum: - permissions - users - details type: string format: enum - name: limit in: query description: The number of results to return. The maximum number of user groups to retrieve is 1000. The default is 100. schema: type: integer format: uint32 - name: start in: query description: The index to start retrieving results from, also known as offset. The index begins at 0. schema: type: integer format: uint32 - name: displayNameFilter in: query description: "The display name filter to narrow the set of user groups to return. This filter must be defined using glob syntax with the following wildcards and is case-sensitive. The value in parentheses is the equivalent hex code, which is used when URL-encoding the filter string:\n - `'*'` (`%2A`) matches any sequence of characters.\n - `'?'` (`%3F`) matches a single character.\n - `' '` (`%20`) matches a space character.\n \n Example: \n - `Sales*` matches any user group that starts with \"Sales\".\n - `* ?egional * Office` is expressed as `%2A%20%3Fegional%20%2A%20Office` and can have many matches, such as \"Western Regional Support Office\"." schema: type: string - name: correlationIds in: query description: "If defined, `correlationIds` limits the response to the user groups associated with the specified correlation IDs.\n You can specify multiple correlation IDs in the `correlationIds` parameter separated by commas; for example, `correlationIds=123,abc,456`.\n\n **Note**:\n - Correlation IDs must be between 3 and 64 characters long and may only contain alphanumeric characters, underscores and hyphens.\n - Correlation IDs have a lifetime of up to 7 days after creation. After a correlation ID expires, you can only retrieve specific user groups using the user group ID.\n - Correlation IDs are optional during user group creation and are only applicable to those objects created with a defined correlation ID." schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupsChangeDTO' put: tags: - UserGroupsV2 summary: Update multiple user groups description: "Update existing user groups. To specify the tenant in which to update a user group, administrating tenants can provide an analytic tenant code in the `TargetTenantID` request header or `tenantCode` for each user group in the request body.\n\n When updating user groups, the user group definition in your API call replaces the prior definition. You must provide the entire definition in the `PUT` call. If you omit values from the update request, those values are removed from the user group. We recommend that you retrieve a user group's details before you update the user group with new values. \n\n To specify the project in which to update user groups, provide a project UUID in the `ProjectID` request header or `projectId` for each user group in the request body." operationId: UserGroupsV2_PutUserGroups parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupsChangeDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupChangeResponseDTO' post: tags: - UserGroupsV2 summary: Create multiple user groups description: "Create new user groups. To specify the tenant in which to add new user groups, administrating tenants can provide an analytic tenant code in the `TargetTenantID` request header.\n\n To specify the project in which to create new user groups, provide a project UUID in the `ProjectID` request header or `projectId` for each user group in the request body." operationId: UserGroupsV2_CreateUserGroups parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupsChangeDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupChangeResponseDTO' delete: tags: - UserGroupsV2 summary: Delete multiple user groups description: "Delete user groups in bulk. To specify the tenant in which to delete user groups, administrating tenants can provide an analytic tenant code in the `TargetTenantID` request header.\n\n To specify the project in which to delete user groups, provide a project UUID in the `ProjectID` request header or `projectId` for each user group in the request body." operationId: UserGroupsV2_DeleteUserGroups parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupsDeleteRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupDeleteResponseDTO' patch: tags: - UserGroupsV2 summary: Patch multiple user groups description: "Make partial changes to user groups. To specify the tenant in which to patch a user group, administrating tenants can provide an analytic tenant code in the `TargetTenantID` request header or `tenantCode` for each user group in the request body.\n\n Unlike `PUT`, which completely replaces the user group definition, use `PATCH` to change specific fields in the user group without affecting omitted fields.\n\n To specify the project in which to patch user groups, provide a project UUID in the `ProjectID` request header or `projectId` for each user group in the request body." operationId: UserGroupsV2_PatchUserGroups parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean - name: Prefer in: header description: 'When `NonVersioned: true`, use `Prefer` to optionally specify if API calls should be subject to locking. Locking prevents incremental changes in multiple API calls from overwriting each other. The `Prefer` header works alongside a tenant feature flag. When enabled, the default is `nvLock=global`. When disabled, the default is not to lock API calls. Contact Visier Technical Support to enable the tenant feature flag. Valid values for the `Prefer` header: * `nvLock=global`: Run API calls sequentially. Sequential API calls prevent calls from unintentionally overwriting each other. * `nvLock=artifact`: Allow API calls in parallel. Parallel API calls only work if the calls do not conflict with each other. If a change wasn''t applied, the request fails and returns the HTTP 409 conflict error. Run the request again until successful. * `nvLock=none`: Disable the global lock if the tenant feature flag is enabled.' schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupsChangeDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupChangeResponseDTO' /v2/admin/user-groups/revert-to-parent: post: tags: - UserGroupsV2 summary: Revert user groups description: "Revert a user group to its parent version. For example, if you revert a:\n - Tenant override object: The object reverts to the Blueprint version or, for administrating tenants who revert an analytic tenant's object, the administrating tenant's object version.\n - Tenant object: The API request fails. The object is unique to your tenant and no parent version exists.\n - Blueprint object: Nothing happens. The object is inherited from the parent and there is nothing to revert on this tenant." operationId: UserGroupsV2_RevertUserGroupsToParent parameters: - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupsRevertRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupChangeResponseDTO' /v2/admin/user-groups/{userGroupId}: get: tags: - UserGroupsV2 summary: Retrieve the details of a user group description: "Retrieve all available information about a specific user group.\n \n
To specify the tenant in which to retrieve a user group, administrating tenants can provide an analytic tenant code in the `TargetTenantID` request header.\n\n To specify the project in which to return a user group, provide a project UUID in the `ProjectID` request header." operationId: UserGroupsV2_GetUserGroup parameters: - name: userGroupId in: path description: The ID of user group. required: true schema: type: string - name: with in: query description: "Controls the amount of detail to return in the response. Omit to return detailed information.\n * **permissions**: Include the user group's permissions.\n * **users**: Include the users in the user group.\n * **details**: Include all available information." schema: enum: - permissions - users - details type: string format: enum - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupChangeDefinitionDTO' delete: tags: - UserGroupsV2 summary: Delete a user group description: "Delete a specific user group. To specify the tenant in which to delete a user group, administrating tenants can provide an analytic tenant code in the `TargetTenantID` request header.\n\n To specify the project in which to delete a user group, provide a project UUID in the `ProjectID` request header." operationId: UserGroupsV2_DeleteUserGroup parameters: - name: userGroupId in: path description: The ID of user group to delete. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/admin.UserGroupSingleDeleteResponseDTO' /v2/admin/users: put: tags: - UsersV2 summary: Update users description: Update an existing user's information, such as their display name or if the user is enabled in Visier. operationId: UsersV2_UpdateUsers parameters: - name: tenantCode in: query description: Specify the tenant to update a user in. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.UsersUpdateAPIRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.UsersAPIResponseDTO' post: tags: - UsersV2 summary: Add users description: Create new users. Administrating tenant users can specify the tenant in which to add these users. operationId: UsersV2_AddUsers parameters: - name: tenantCode in: query description: Specify the tenant to create a user in. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.UsersCreationAPIRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.UsersAPIResponseDTO' delete: tags: - UsersV2 summary: Delete users description: Delete an existing user. Administrating tenant users can specify the tenant from which to delete a user. operationId: UsersV2_DeleteUsers parameters: - name: tenantCode in: query description: Specify the tenant to delete a user in. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.UsersDeleteAPIRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.UsersAPIResponseDTO' /v3/admin/users/{username}: put: tags: - UsersV3 summary: Update or insert (upsert) a user description: "Update a user if the user exists, otherwise create a new user. Use the user's `username` to specify the user to update or create.\n\n In `PUT` requests, the definition in your API call replaces the prior definition. You must provide the entire definition in the `PUT` call. If you omit values from the request, those values are removed from the user if the user exists." operationId: UsersV3_UpdateUsers parameters: - name: username in: path description: The username of the user to update if the user exists, otherwise creates a new user. required: true schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string - name: NonVersioned in: header description: If `true`, the API call executes on non-versioned artifacts and create/update actions take effect without a new production version. If `false`, the API call executes on versioned artifacts and create/update actions release a new production version. Default is `false`. schema: type: boolean - name: ProjectID in: header description: Optionally, specify a project in which to make the request. schema: type: string format: uuid - name: Prefer in: header description: 'When `NonVersioned: true`, use `Prefer` to optionally specify if API calls should be subject to locking. Locking prevents incremental changes in multiple API calls from overwriting each other. The `Prefer` header works alongside a tenant feature flag. When enabled, the default is `nvLock=global`. When disabled, the default is not to lock API calls. Contact Visier Technical Support to enable the tenant feature flag. Valid values for the `Prefer` header: * `nvLock=global`: Run API calls sequentially. Sequential API calls prevent calls from unintentionally overwriting each other. * `nvLock=artifact`: Allow API calls in parallel. Parallel API calls only work if the calls do not conflict with each other. If a change wasn''t applied, the request fails and returns the HTTP 409 conflict error. Run the request again until successful. * `nvLock=none`: Disable the global lock if the tenant feature flag is enabled.' schema: type: string requestBody: content: application/json: schema: $ref: '#/components/schemas/servicing.UserV3ApiRequestDTO' required: true responses: default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' '200': description: OK content: application/json: schema: $ref: '#/components/schemas/servicing.UserV3ApiResponseDTO' /v1/admin/users/reports/application-logs: get: tags: - UsersV1 summary: Retrieve the Application Logs description: "This API allows you to export the Application Logs for a tenant. The Application Logs track information about your\n users and how they are using the application. Performing regular audits will help you identify potential security\n issues and keep your data safe. As part of user management, download the Application Logs to monitor user activity\n and logon events to ensure your users are performing authorized activities. \n\n Application logs are retained in the system for 180 days.\n\n Administrating tenant users can export application logs for the administrating tenant and the analytic tenants\n those users belong to." operationId: UsersV1_GetApplicationLogsXLSX parameters: - name: startTime in: query description: An inclusive date-time in milliseconds to start retrieving Application Logs from. schema: type: string examples: startTime: value: 1738368000000 description: The start time 2025-02-01:00:00:00 GTM in milliseconds. - name: endTime in: query description: An exclusive date-time in milliseconds to stop retrieving Application Logs from. schema: type: string examples: endTime: value: 1740787200000 description: The end time 2025-03-01:00:00:00 GTM in milliseconds. - name: tenantCode in: query description: Specify the tenant to retrieve Application Logs from. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: '200': description: An XLSX file. content: application/vnd.ms-excel: schema: type: string format: binary default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /v1/admin/users/{userId}/reports/data-security: get: tags: - UsersV1 summary: Retrieve the Data Security Report description: "This API allows you to export the data security report of a user. The Data Security Report provides information\n about a specific user to see which populations and properties that user has access to as a result of the\n permissions assigned to them.\n\n Administrating tenant users can export the report for users in the administrating tenant and the analytic\n tenants those users belong to." operationId: UsersV1_GetDataSecurityReportXLSX parameters: - name: userId in: path description: The ID of the user to retrieve the report for. required: true schema: type: string - name: tenantCode in: query description: Specify the tenant to retrieve the Data Security Report from. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: '200': description: An XLSX file. content: application/vnd.ms-excel: schema: type: string format: binary default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /v1/admin/users/reports/profile-assignments: get: tags: - UsersV1 summary: Retrieve user profile assignments in XLSX format description: "This API allows you to export the profiles assigned to each user. This report details the profiles assigned to\n each user and the profile validity period.\n\n Administrating tenant users can export profile assignments for the administrating tenant and the analytic tenants\n those users belong to." operationId: UsersV1_GetProfileAssignmentsXLSX parameters: - name: tenantCode in: query description: Specify the tenant to retrieve profile assignments from. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: '200': description: An XLSX file. content: application/vnd.ms-excel: schema: type: string format: binary default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /v1/admin/users/reports/permission-assignments: get: tags: - UsersV1 summary: Retrieve user permissions in XLSX format description: "This API allows you to export the user permission assignments for a tenant. The permission assignments report\n provides a summary of the permissions your users have been assigned and how each permission is being used across\n your user base, as well as the users that do not have any permissions assigned to them.\n\n Administrating tenant users can export permission assignments for the administrating tenant and the analytic\n tenants those users belong to." operationId: UsersV1_GetUserPermissionsXLSX parameters: - name: tenantCode in: query description: Specify the tenant to retrieve the permission assignments report from. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: '200': description: An XLSX file. content: application/vnd.ms-excel: schema: type: string format: binary default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' /v1/admin/users/reports/permissions-list: get: tags: - UsersV1 summary: Retrieve a list of all permissions in XLSX format description: "This API allows you to export the list of permissions in a tenant. This report includes the permission name,\n permission description, and permission ID for all permissions in the tenant.\n\n Administrating tenant users can export permissions lists for the administrating tenant and the analytic tenants\n those users belong to." operationId: UsersV1_GetAllPermissionsXLSX parameters: - name: tenantCode in: query description: Specify the tenant to retrieve permissions from. schema: type: string - name: TargetTenantID in: header description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant. schema: type: string responses: '200': description: An XLSX file. content: application/vnd.ms-excel: schema: type: string format: binary default: description: Default error response content: application/json: schema: $ref: '#/components/schemas/Status' components: schemas: admin.DeleteUserResponse: type: object properties: {} admin.ExcludedSourcesBody: type: object properties: excludedSources: type: array items: type: string description: A list of a CA tenant's excluded sources. admin.KeyName: type: object properties: keyName: type: string description: The encryption key's display name. The name may only contain alphanumeric or dash (-) characters and must be between 3 and 36 characters long. admin.MaskMessage: type: object properties: mask: type: string description: "A list of fields to include in the response, separated by commas. If not specified, includes all fields in the response. Valid values:\n - `tenantCode`\n - `tenantDisplayName`\n - `currentDataVersion`\n - `traits`\n - `dataVersionDate`\n - `provisionDate`\n - `vanityUrlName`\n - `status`\n - `canAdministerOtherTenants`\n - `industryCode`\n - `industryInfo`\n - `purchasedModules`\n - `manuallyAddedModules`\n - `embeddableDomains`\n - `allowedOAuthIdpUrlDomains`\n - `customProperties`\n - `ssoInstanceIssuers`\n - `homeAnalysisId`\n - `homeAnalysisByUserGroup`\n - `clickThroughLink`\n - `clickThroughLinkEnabled`\n - `defaultCurrency`\n - `primaryBusinessLocation`\n - `effectiveIndustryCode`\n - `companySize`\n\n If `mask` is specified in both request body and on the query string, the effective `mask` is the set union of both inputs." admin.PermissionsListDTO: type: object properties: permissions: type: array items: $ref: '#/components/schemas/servicing.PermissionDTO' description: The list of permissions that will be created or updated admin.SidecarSolutionRequestDTO: type: object properties: applicationId: type: string description: The unique identifier of the solution to configure. admin.TenantCodeBody: type: object properties: tenantCodes: type: array items: type: string description: A list of a CA tenant's source tenants codes. The maximum length is 1000. admin.UpdateTenantModel: type: object properties: tenantDisplayName: type: string description: A display name that is assigned to the new analytic tenant. industryCode: type: integer description: "The 6-digit NAICS code for the industry to which the analytic tenant belongs. If the code is unknown, type 0.\n\n For 2-digit codes, add trailing zeros at the end to reach 6 digits, such as 620000." format: int32 purchasedModules: type: array items: type: string description: A comma-separated collection of strings that represent the Visier modules assigned to the new analytic tenant. embeddableDomains: type: array items: type: string description: "A comma-separated list of strings that represent the URLs, or domains, in which Visier can be embedded. If\n domains at the administrating tenant level match the domains at the analytic tenant level, you do not need\n to include a domain for each analytic tenant." customProperties: type: object additionalProperties: type: string description: A set of key-value pairs that represent different customizable properties for the analytic tenant. ssoInstanceIssuers: type: array items: type: string description: A comma-separated list of strings that represent the issuers for the SSO providers that can authenticate this tenant. admin.AllTenantsStatusAPIDTO: type: object properties: tenants: type: array items: $ref: '#/components/schemas/admin.TenantDetailAPIDTO' description: A list of objects representing all the analytic tenants. limit: type: integer description: The limit of analytic tenants to return. The maximum value is 1000. format: uint32 start: type: integer description: The index to start retrieving values from, also known as offset. The index begins at 0. format: uint32 admin.BatchTenantProvisionAPIDTO: type: object properties: tenants: type: array items: $ref: '#/components/schemas/admin.TenantProvisionAPIDTO' description: An array of tenants to create. The maximum number of tenants to create in one request is 200. admin.BusinessLocationDTO: type: object properties: countryCode: type: string description: The country in which the business is located or business is performed. The country code must follow ISO 3166 standards in alpha-2 format (two-letter code). postalCode: type: string description: The postal code associated with the business location. Cannot be blank. description: The location of operations or where business is performed. admin.CustomPropertyDTO: type: object properties: key: type: string value: type: string admin.CustomTenantPropertyDTO: type: object properties: key: type: string value: type: string admin.ElementIDsDTO: type: object properties: ids: type: array items: type: string description: The unique identifiers. admin.HomeAnalysisByUserGroupDTO: type: object properties: userGroupId: type: string description: The user group ID. homeAnalysisId: type: string description: The unique ID of the analysis to show for this user group when a user logs in. admin.NetworkSubnetsMessageRequest: type: object properties: networkSubnetsForApi: type: array items: type: string description: The IP addresses in the request. confirmLockout: type: boolean description: If `true`, you acknowledge that the API call removes your IP address from the list of allowed network subnets and you will not be able to call Visier APIs from your current IP address. Default is `false`. To avoid this, add your current IP address to the allowed network subnets list. description: The IP addresses to modify in the API network subnet allowlist. admin.NetworkSubnetsMessageResponse: type: object properties: networkSubnetsForApi: type: array items: type: string description: The IP addresses that are allowed to call Visier APIs. description: The list of IP addresses that are allowed to call Visier APIs. admin.TenantDetailAPIDTO: type: object properties: tenantCode: type: string description: The tenant code of the analytic tenant. For example, "WFF_j1r~i1o". tenantDisplayName: type: string description: An identifiable tenant name that is displayed within Visier. For example, "Callisto". status: type: string description: Whether the tenant is enabled or disabled. provisionDate: type: string description: The date that the tenant was created. currentDataVersion: type: string description: The data version ID that the tenant is using. dataVersionDate: type: string description: The date that the data version was published to production. modules: type: array items: $ref: '#/components/schemas/designer.TenantModuleDTO' description: The modules assigned to the analytic tenant. industryCode: type: integer description: The 6-digit NAICS code for the industry to which the analytic tenant belongs. format: uint32 canAdministerOtherTenants: type: boolean description: If true, the tenant is an administrating tenant. embeddableDomains: type: array items: type: string description: A comma-separated list of strings that represent the URLs, or domains, in which Visier can be embedded. customProperties: type: array items: $ref: '#/components/schemas/admin.CustomTenantPropertyDTO' description: A set of key-value pairs that represent different customizable properties for the analytic tenant. ssoInstanceIssuers: type: array items: type: string description: A comma-separated list of strings that represent the issuers for the SSO providers that can authenticate this tenant. vanityUrlName: type: string description: The name of the administrating tenant used in Visier URLs. allowedOAuthIdpUrlDomains: type: array items: type: string description: A comma-separated list of strings that represent the URLs, or domains, which can be used as values for the idp_url parameter manuallyAddedModules: type: array items: $ref: '#/components/schemas/designer.TenantModuleDTO' description: The modules manually added to the analytic tenant. Manually added modules are not part of a purchased module bundle. admin.TenantManagementAPIGetResponseDTO: type: object properties: tenantCode: type: string description: The tenant code of the analytic tenant. For example, "WFF_j1r~i1o" tenantDisplayName: type: string description: An identifiable tenant name that is displayed within Visier. For example, "Callisto". status: type: string description: Whether the tenant is enabled or disabled. provisionDate: type: string description: The date that the tenant was created. currentDataVersion: type: string description: The data version ID that the tenant is using. dataVersionDate: type: string description: The date that the data version was published to production. purchasedModules: type: array items: type: string description: The modules assigned to the analytic tenant. industryCode: type: integer description: The 6-digit NAICS code for the industry to which the analytic tenant belongs. format: uint32 primaryBusinessLocation: allOf: - $ref: '#/components/schemas/admin.BusinessLocationDTO' description: The primary location of operations or where business is performed. If undefined, it is omitted from the response. canAdministerOtherTenants: type: boolean description: If true, the tenant is an administrating tenant. embeddableDomains: type: array items: type: string description: A comma-separated list of strings that represent the URLs, or domains, in which Visier can be embedded. customProperties: type: array items: $ref: '#/components/schemas/admin.CustomPropertyDTO' description: A set of key-value pairs that represent different customizable properties for the analytic tenant. ssoInstanceIssuers: type: array items: type: string description: A comma-separated list of strings that represent the issuers for the SSO providers that can authenticate this tenant. vanityUrlName: type: string description: The name of the administrating tenant used in Visier URLs. homeAnalysisId: type: string description: The unique ID of the analysis that's displayed for this tenant when a user logs in. homeAnalysisByUserGroup: type: array items: $ref: '#/components/schemas/admin.HomeAnalysisByUserGroupDTO' description: A list of objects representing the analysis displayed to specific user groups when users log in. clickThroughLink: type: string description: The custom URL to redirect users into your portal to see the relevant content. This URL is used for links that are shared by and with your users through the sharing capability, embedded visualizations, or email content. clickThroughLinkEnabled: type: string description: Whether the click-through link is enabled or disabled. defaultCurrency: type: string description: The default currency to show in the application for the tenant. allowedOAuthIdpUrlDomains: type: array items: type: string description: A comma-separated list of strings that represent the URLs, or domains, that are allowed in the idp_url OAuth parameter. effectiveIndustryCode: type: integer description: The 6-digit NAICS code for the industry to which the analytic tenant belongs. This is calculated from industry codes in the tenant's data if the tenant has business unit data. Not returned if the effective industry code cannot be calculated. format: int32 companySize: type: integer description: The latest headcount value for the analytic tenant. Not returned if no headcount data is available. format: int32 traits: allOf: - $ref: '#/components/schemas/admin.TenantDetailsTraitsDTO' description: The tenant's traits, including aggregation rights, tenant type, and data profile type. industryInfo: allOf: - $ref: '#/components/schemas/admin.TenantIndustryInfoDTO' description: The tenant's industry information, including the industry code and classification type. Valid classification systems are `NAICS` and `NACE`. manuallyAddedModules: type: array items: type: string description: The object names of the modules manually added to the analytic tenant. Manually added modules are not part of a purchased module bundle. admin.TenantManagementAPIListResponseDTO: type: object properties: tenants: type: array items: $ref: '#/components/schemas/admin.TenantManagementAPIGetResponseDTO' description: A list of objects representing all the analytic tenants. limit: type: integer description: The limit of analytic tenants to return. format: uint32 start: type: integer description: The starting index to retrieve values from, also known as offset. format: uint32 admin.TenantManagementAPIUpdateRequestDTO: type: object properties: tenantCode: maxLength: 50 minLength: 1 pattern: ^[a-zA-Z][a-zA-Z0-9]+$ type: string description: 'An alphanumeric string that represents a unique identifier for the analytic tenant. Required if creating new tenants. Example: If the full tenant code is `WFF_j1r~c7o`, specify `c7o` in this field. The maximum is 50 characters for the full tenant code, including the automatically prefixed administrating tenant code (`WFF_j1r~` in the example).' tenantDisplayName: minLength: 1 type: string description: A new display name to assign to the analytic tenant. Required if creating new tenants. tenantShortName: deprecated: true type: string description: This will no longer be available as of Spring 2028. A new short name to assign to the tenant. vanityUrlName: type: string description: A new vanity name to assign to the tenant. Omit for new Embedded analytic tenants. industryCode: minLength: 1 type: integer description: "The North American Industry Classification System (NAICS) code for the industry in which the business operates. Provide a value of 0 to use the business unit industry codes in the data or if the industry code is unknown. We highly recommend that you provide an industry code here or with the business units in the data to take advantage of all of Visier’s features.\n\n Required if creating new tenants." format: uint32 primaryBusinessLocation: allOf: - $ref: '#/components/schemas/admin.BusinessLocationDTO' description: The primary location of operations or where business is performed. This field is optional. purchasedModules: type: array items: type: string description: "A comma-separated collection of strings that represent the Visier modules assigned to the new analytic tenant. Required if creating new tenants.\n\n To get module object names, contact your Partner Success Manager." embeddableDomains: type: array items: type: string description: A comma-separated list of strings that represent the URLs, or domains, in which Visier can be embedded. If domains at the administrating tenant level match the domains at the analytic tenant level, you do not need to include a domain for each analytic tenant. This is optional. customProperties: type: array items: $ref: '#/components/schemas/admin.CustomPropertyDTO' description: A list of objects that represent different customizable properties for the analytic tenant. This is optional. ssoInstanceIssuers: type: array items: type: string description: A comma-separated list of strings that represent the issuers for the SSO providers that can authenticate this tenant. This is optional. homeAnalysisId: type: string description: "The unique ID of the analysis to display for this tenant when a user logs in. This is optional. Causes the API request to take longer because it must publish a project to production.\n\n Retrieve the ID by opening an analysis in the production version of a tenant and copying the string after the last forward slash (/) in the URL. For example: `https://jupiter.visier.com/hr/prod/appcontainer?previewId=-eZPm8xvo3SUMpD4Q5pdE-6mCj9CQ9K699XgqRGwtOxagH5x2IzDFawlWn3hYqFEfU7nP0YK9ASEzmrNfAihGg..&previewType=Production#/analytics/myanalyses/8a4c1d4f-eb61-4da0-9e5b-55bef757c30e`.\n\n The `homeAnalysisID` is `8a4c1d4f-eb61-4da0-9e5b-55bef757c30e`. Alternatively, retrieve the ID by copying the `Analysis ID` or `contentId` found by following the `Embed a Visualization` documentation." homeAnalysisByUserGroup: type: array items: $ref: '#/components/schemas/admin.HomeAnalysisByUserGroupDTO' description: A list of objects representing the analysis to display to specific user groups when users log in. This is optional. Causes the API request to take longer because it must publish a project to production. updateAction: enum: - MERGE - REPLACE type: string description: "Specifies the way you want to update values. Default is MERGE.\n Valid values:\n - `MERGE`: Combine the existing values with the new values.\n - `REPLACE`: Remove existing values and let the new values take their place." format: enum enabled: type: boolean description: If true, the tenant is enabled. Enabled tenants have access to Visier visualizations. clickThroughLink: type: string description: A custom URL to redirect users into your portal to see the relevant content. This URL is used for links that are shared by and with your users through the sharing capability, embedded visualizations, or email content. This is optional. Causes the API request to take longer because it must publish a project to production. defaultCurrency: type: string description: The default currency to show in the application for the tenant. allowedOAuthIdpUrlDomains: type: array items: type: string description: A comma-separated list of strings that represent the URLs, or domains, that are allowed in the idp_url OAuth parameter. This is optional. traits: allOf: - $ref: '#/components/schemas/admin.TenantDetailsTraitsDTO' description: The tenant's traits, including aggregation rights, tenant type, and data profile type. To set an analytic tenant's traits, contact Visier Technical Support. forceLoginsWithSessionBasedPermissions: type: boolean description: If `true`, user sign in must also provide a `SessionRepoId`. Only valid if `SessionBasedPermissions` feature is enabled. Default is `false`. industryInfo: allOf: - $ref: '#/components/schemas/admin.TenantIndustryInfoDTO' description: The tenant's industry information, including the industry code and classification type. Valid classification systems are `NAICS` and `NACE`. admin.TenantManagementAPIUpdateResponseDTO: type: object properties: tenantCode: type: string description: The unique identifier of the newly created analytic tenant. tenantDisplayName: type: string description: A comma-separated collection of strings that represent the Visier modules assigned to the new analytic tenant. industryCode: type: integer description: The 6-digit NAICS code for the industry to which the analytic tenant belongs. format: uint32 primaryBusinessLocation: allOf: - $ref: '#/components/schemas/admin.BusinessLocationDTO' description: The primary location of operations or where business is performed. If undefined, it is omitted from the response. purchasedModules: type: array items: type: string description: A comma-separated collection of strings that represent the Visier modules assigned to the new analytic tenant. embeddableDomains: type: array items: type: string description: A comma-separated list of strings that represent the URLs, or domains, in which Visier can be embedded. If domains at the administrating tenant level match the domains at the analytic tenant level, you do not need to include a domain for each analytic tenant. customProperties: type: array items: $ref: '#/components/schemas/admin.CustomPropertyDTO' description: A list of objects that represent different customizable properties for the analytic tenant. ssoInstanceIssuers: type: array items: type: string description: A comma-separated list of strings that represent the issuers for the SSO providers that can authenticate this tenant. homeAnalysisId: type: string description: "The unique ID of the analysis to display for this tenant when a user logs in. This is optional.\n\n Retrieve the ID by opening an analysis in the production version of a tenant and copying the string after the last forward slash (/) in the URL. For example: https://jupiter.visier.com/hr/prod/appcontainer?previewId=-eZPm8xvo3SUMpD4Q5pdE-6mCj9CQ9K699XgqRGwtOxagH5x2IzDFawlWn3hYqFEfU7nP0YK9ASEzmrNfAihGg..&previewType=Production#/analytics/myanalyses/`8a4c1d4f-eb61-4da0-9e5b-55bef757c30e`.\n The `homeAnalysisID` is `8a4c1d4f-eb61-4da0-9e5b-55bef757c30e`.\n\n Alternatively, retrieve the ID by copying the `Analysis ID` or `contentId` found by following the `Embed a Visualization` documentation." homeAnalysisByUserGroup: type: array items: $ref: '#/components/schemas/admin.HomeAnalysisByUserGroupDTO' description: A list of objects representing the analysis to display to specific user groups when users log in. status: type: string description: Whether the tenant is enabled or disabled. Enabled tenants have access to Visier visualizations. clickThroughLink: type: string description: A custom URL to redirect users into your portal to see the relevant content. This URL is used for links that are shared by and with your users through the sharing capability, embedded visualizations, or email content. vanityUrlName: type: string description: The name of the administrating tenant used in Visier URLs. defaultCurrency: type: string description: The default currency to show in the application for the tenant. allowedOAuthIdpUrlDomains: type: array items: type: string description: A comma-separated list of strings that represent the URLs, or domains, that are allowed in the idp_url OAuth parameter. This is optional. forceLoginsWithSessionBasedPermissions: type: boolean description: If `true`, user sign in must also provide a `SessionRepoId`. Only set if `SessionBasedPermissions` feature is enabled. Default is `false`. admin.TenantNamesFilterDTO: type: object properties: tenantCodes: type: array items: type: string description: "The tenants to retrieve details for. Specify tenant codes in one of the following formats:\n - Full tenant code. Example: `WFF_j1r~c7o`.\n - Short tenant code. Example: `c1o`.\n\n Use the same format for all tenants. Do not use both formats in one request.\n The limit of analytic tenants to return is `1000` if the following fields are not included in the `mask` argument.\n - `homeAnalysisId`\n - `homeAnalysisByUserGroup`\n - `clickThroughLink`\n - `defaultCurrency`\n\n The limit is `400` if any of the above fields are included in the `mask` or if `mask` is not specified." mask: type: string description: "A list of fields to include in the response, separated by commas. If not specified, includes all fields in the response. Valid values:\n - `tenantCode`\n - `tenantDisplayName`\n - `currentDataVersion`\n - `traits`\n - `dataVersionDate`\n - `provisionDate`\n - `vanityUrlName`\n - `status`\n - `canAdministerOtherTenants`\n - `industryCode`\n - `industryInfo`\n - `purchasedModules`\n - `manuallyAddedModules`\n - `embeddableDomains`\n - `allowedOAuthIdpUrlDomains`\n - `customProperties`\n - `ssoInstanceIssuers`\n - `homeAnalysisId`\n - `homeAnalysisByUserGroup`\n - `clickThroughLink`\n - `clickThroughLinkEnabled`\n - `defaultCurrency`\n - `primaryBusinessLocation`\n - `effectiveIndustryCode`\n - `companySize`\n\n If `mask` is specified in both request body and on the query string, the effective `mask` is the set union of both inputs." description: Optionally, specify the tenants to retrieve. The specified tenant codes are combined (set union) with the `tenantCodes` query parameter. admin.TenantProvisionAPIDTO: required: - tenantCode - tenantDisplayName type: object properties: tenantCode: maxLength: 50 minLength: 1 pattern: ^[a-zA-Z][a-zA-Z0-9]+$ type: string description: 'An alphanumeric string that represents the unique identifier of the analytic tenant. Example: If the full tenant code is `WFF_j1r~c7o`, specify `c7o` in this field. The maximum is 50 characters for the full tenant code, including the automatically prefixed administrating tenant code (`WFF_j1r~` in the example).' tenantDisplayName: minLength: 1 type: string description: The display name that is assigned to the analytic tenant. purchasedModules: type: array items: type: string description: A comma-separated list of strings that represent the Visier modules assigned to the analytic tenant. industryCode: type: integer description: "The North American Industry Classification System (NAICS) code for the industry in which the business operates. Provide a value of 0 to use the business unit industry codes in the data or if the industry code is unknown. We highly recommend that you provide an industry code here or with the business units in the data to take advantage of all of Visier’s features." format: uint32 embeddableDomains: type: array items: type: string description: "A comma-separated list of strings that represent the URLs, or domains, in which Visier can be embedded. If\n domains at the administrating tenant level match the domains at the analytic tenant level, you do not need\n to include a domain for each analytic tenant." customProperties: type: array items: $ref: '#/components/schemas/admin.CustomTenantPropertyDTO' description: A set of key-value pairs that represent different customizable properties for the analytic tenant. ssoInstanceIssuers: type: array items: type: string description: A comma-separated list of strings that represent the issuers for the SSO providers that can authenticate this tenant. allowedOAuthIdpUrlDomains: type: array items: type: string description: "A comma-separated list of strings that represent the URLs, or domains, which can be used as values for the idp_url\n OAuth parameter." admin.TenantStatusAPIDTO: type: object properties: tenantCode: type: string description: The unique identifier for the analytic tenant. status: type: string description: Whether the tenant is enabled or disabled. tenantDisplayName: type: string description: The identifiable tenant name that is displayed within Visier. For example, "Callisto". canAdministerOtherTenants: type: boolean description: If true, the tenant is an administrating tenant. admin.UserGroupChangeDefinitionDTO: type: object properties: userGroupId: type: string description: The unique identifier of the user group. Omit if creating a new user group. displayName: type: string description: An identifiable user group name to display in Visier, such as "Leadership User Group". description: type: string description: A detailed description of the population and purpose of the user group. permissionIds: allOf: - $ref: '#/components/schemas/admin.ElementIDsDTO' description: The unique identifiers of permissions assigned to members of this user group. users: allOf: - $ref: '#/components/schemas/admin.UserGroupChangeUsersDTO' description: The users assigned to the user group. You can define user group members dynamically with `dynamicFilterDefinition` or manually with `includeAllUsers` or `manuallyIncludedIds`. tenantCode: type: string description: "The code of the tenant to which the user group belongs or should be created in.\n Omit if creating or updating user groups in the current tenant." projectId: type: string description: "The project ID in which to update or create the user group.\n If omitted and the ProjectID request header is not defined, the change is published to production immediately." visibleForSelection: allOf: - $ref: '#/components/schemas/admin.VisibleForSelectionDTO' description: The features in which your users can see and select this user group. If omitted, the user group is visible in all features. correlationId: type: string description: "An optional identifier to associate bulk request fields with their corresponding response fields. Correlation IDs may be between 3 and 64 characters long and\n consist of alphanumeric characters, `-`, and `_`.\n\n **Note**:\n - Each request field must have a unique `correlationId`.\n - Cannot reuse a `correlationId` in subsequent POST requests while the ID is still active. A `correlationId` is active for 7 days after creation." admin.UserGroupChangeDimensionFilterDTO: type: object properties: dimensionId: type: string description: The object name of the dimension. subjectReferencePath: allOf: - $ref: '#/components/schemas/admin.ElementIDsDTO' description: "A qualifying path if the dimension is from an analytic object that references Employee.\n For example, use `subjectReferencePath` to create a filter on the `Employment_Start_Type` dimension from the `Employment_Start` object, which references `Employee`: `{ \"ids\": [ \"Employee\", \"Employment_Start\" ] }`." memberSelections: type: array items: $ref: '#/components/schemas/admin.UserGroupChangeMemberSelectionDTO' description: The dimension members to select in the dynamic filter. admin.UserGroupChangeFailureDTO: type: object properties: displayName: type: string description: The display name of the user group that couldn't be changed. message: type: string description: The error message containing the cause of the failure. rci: type: string description: The root cause identifier to provide to Visier Technical Support if you require further troubleshooting. tenantCode: type: string description: The code of the tenant in which the user group couldn't be changed. projectId: type: string description: The unique identifier of the project in which the user group couldn't be changed. userGroupId: type: string description: The unique identifier of the user group that couldn't be changed. correlationId: type: string description: An identifier to associate the matching request field. Only returned if a `correlationId` was defined for the corresponding request field. admin.UserGroupChangeFilterDTO: type: object properties: filterId: type: string description: The unique identifier of the filter. Omit if creating a new filter. analyticObjectId: type: string description: The analytic object the filter applies to. Currently, the only supported analytic object is `Employee`. Default is `Employee`. dimensionFilters: type: array items: $ref: '#/components/schemas/admin.UserGroupChangeDimensionFilterDTO' description: The dimensions in the dynamic filter. admin.UserGroupChangeMemberSelectionDTO: type: object properties: isExcluded: type: boolean description: If `true`, the specified member must not be defined for members of the user group. namePath: type: array items: type: string description: The name path for dimension members; for example, `[ "North America", "US", "CA" ]`. admin.UserGroupChangeResponseDTO: type: object properties: successes: type: array items: $ref: '#/components/schemas/admin.UserGroupChangeSuccessDTO' description: The user groups that were successfully changed (created, updated, patched, or reverted). failures: type: array items: $ref: '#/components/schemas/admin.UserGroupChangeFailureDTO' description: The user groups that were not successfully changed (created, updated, patched, or reverted). admin.UserGroupChangeSuccessDTO: type: object properties: displayName: type: string description: The display name of the user group that was successfully changed. userGroupId: type: string description: The unique identifier of the user group. tenantCode: type: string description: The code of the tenant in which the user group was changed. projectId: type: string description: The unique identifier of the project in which the user group was changed. correlationId: type: string description: An identifier to associate the matching request field. Only returned if a `correlationId` was defined for the corresponding request field. admin.UserGroupChangeUsersDTO: type: object properties: includeAllUsers: type: boolean description: "If `true`, all users are included in the user group. If `true`:\n * You can manually exclude users with `manuallyExcludedIds`.\n * Cannot be combined with `manuallyIncludedIds` or `dynamicFilterDefinition`." manuallyIncludedIds: allOf: - $ref: '#/components/schemas/admin.ElementIDsDTO' description: "Includes specified user IDs in the user group.\n * May be combined with `dynamicFilterDefinition`.\n * Omit if `includeAllUsers` is `true`." manuallyExcludedIds: allOf: - $ref: '#/components/schemas/admin.ElementIDsDTO' description: "Excludes specified user IDs from the user group.\n * You can manually exclude users if `includeAllUsers` is `true` or if `dynamicFilterDefinition` is defined.\n * Excluded IDs must not overlap with user IDs in `manuallyIncludedIds`." dynamicFilterDefinition: allOf: - $ref: '#/components/schemas/admin.UserGroupFiltersDTO' description: "The filters that dynamically define a population through dimensions or dimensions accessible through references from the analytic object.\n * Omit if `includeAllUsers` is `true`.\n * You can combine dynamic filters with manually-assigned users." admin.UserGroupDeleteDTO: type: object properties: tenantCode: type: string description: "The code of the tenant from which to delete the user group.\n Omit if deleting user groups in the current tenant." userGroupId: type: string description: Unique identifier for the user group. projectId: type: string description: "The project ID in which to delete the user group.\n If omitted and the `ProjectID` request header is not defined, the change is published to production immediately." admin.UserGroupDeleteFailureDTO: type: object properties: tenantCode: type: string description: The code of the tenant from which the user group could not be deleted. userGroupId: type: string description: The unique identifier of the user group that could not be deleted. message: type: string description: The error message containing the cause of the failure. rci: type: string description: The root cause identifier to provide to Visier Technical Support if you require further troubleshooting. projectId: type: string description: The ID of the project in which the user group could not be deleted. admin.UserGroupDeleteResponseDTO: type: object properties: successes: type: array items: $ref: '#/components/schemas/admin.UserGroupDeleteSuccessDTO' description: The user groups that were successfully deleted. failures: type: array items: $ref: '#/components/schemas/admin.UserGroupDeleteFailureDTO' description: The user groups that were not deleted successfully. admin.UserGroupDeleteSuccessDTO: type: object properties: tenantCode: type: string description: The code of the tenant the user group was deleted from. userGroupId: type: string description: The unique identifier of the user group that was deleted. projectId: type: string description: The ID of the project in which user group was deleted. admin.UserGroupFiltersDTO: type: object properties: filters: type: array items: $ref: '#/components/schemas/admin.UserGroupChangeFilterDTO' description: The filters that define user group membership. admin.UserGroupRevertDTO: type: object properties: tenantCode: type: string description: "The code of the tenant in which to revert the user group.\n Omit if reverting user groups in the current tenant." userGroupId: type: string description: The unique identifier for the user group. projectId: type: string description: "The unique identifier of the project in which to revert the user group.\n If omitted and the `ProjectID` request header is not defined, the change is published to production immediately." admin.UserGroupSingleDeleteResponseDTO: type: object properties: success: allOf: - $ref: '#/components/schemas/admin.UserGroupDeleteSuccessDTO' description: The user group was successfully deleted. failure: allOf: - $ref: '#/components/schemas/admin.UserGroupDeleteFailureDTO' description: The user group was not successfully deleted. admin.UserGroupsChangeDTO: type: object properties: userGroups: type: array items: $ref: '#/components/schemas/admin.UserGroupChangeDefinitionDTO' description: The user groups and their definitions. admin.UserGroupsDeleteRequestDTO: type: object properties: userGroups: type: array items: $ref: '#/components/schemas/admin.UserGroupDeleteDTO' description: The user groups to delete. admin.UserGroupsRevertRequestDTO: type: object properties: userGroups: type: array items: $ref: '#/components/schemas/admin.UserGroupRevertDTO' description: The user groups to revert. admin.VisibleForSelectionDTO: type: object properties: enabled: type: boolean description: "If `true`, the user group is visible in features such as sharing an analysis with user groups or assigning user groups a Vee sample question. Cannot update to `true` if `features` is empty.\n If `false`, the user group is not visible to select in any features.\n Default is `true`." features: type: array items: enum: - AnalyticsFeatures - StudioFeatures type: string format: enum description: "The features in which the user group is visible. Default is empty.\n If `enabled` is `true`, the user group is visible in features listed.\n If `enabled` is `false`, this field is ignored." admin.ConsolidatedAnalyticsAPIExcludedSourceListDTO: type: object properties: excludedSources: type: array items: type: string description: A list of the CA tenant's excluded sources. admin.ConsolidatedAnalyticsAPISourceTenantListDTO: type: object properties: tenantCodes: type: array items: type: string description: A list of the CA tenant's source tenants. admin.ConsolidatedAnalyticsAPITenantCreateRequestDTO: type: object properties: tenantCode: type: string description: "The ID of the tenant. For example, WFF_{XXX}~CA{YYY} where {XXX} is the administrating tenant code and {YYY}\n is the consolidated analytic tenant code." admin.ConsolidatedAnalyticsAPITenantListResponseDTO: type: object properties: tenantCodes: type: array items: type: string description: A list of CA tenant codes. admin.ConsolidatedAnalyticsAPITenantWithDetails: type: object properties: tenantCode: type: string description: The CA tenant's code. sourceTenantsList: type: array items: type: string description: A list of the CA tenant's source tenants. excludedSourcesList: type: array items: type: string description: A list of the CA tenant's excluded sources. admin.ConsolidatedAnalyticsAPITenantWithDetailsListResponseDTO: type: object properties: tenants: type: array items: $ref: '#/components/schemas/admin.ConsolidatedAnalyticsAPITenantWithDetails' description: A list of CA tenants and their details. admin.DeleteEmailDomainsDTO: type: object properties: domains: type: array items: type: string description: The list of allowed email address domains. confirmNotAllowedDomain: type: boolean description: "If `true`, allows deletion of the requester's own domain when using credential-based sign in.\n If `false`, prevents deletion of the requester's own domain when using credential-based sign in.\n This setting only applies to credential-based sign in, not to single sign-on (SSO) unless used in API calls." admin.EmailDomainsDTO: type: object properties: domains: type: array items: type: string description: The list of allowed email address domains. admin.PermissionResponseDTO: type: object properties: permissionId: type: string description: The unique identifier associated with the permission. displayName: type: string description: An identifiable permission name to display in Visier, such as "Diversity Access". admin.PermissionsToUserGroupForTenantDTO: type: object properties: tenantCode: type: string description: The unique identifier associated with the tenant. status: type: string description: The state of the permission assignment or removal. Valid values are Succeed or Failed. message: type: string description: A detailed description of the request outcome, if available. userGroups: type: array items: $ref: '#/components/schemas/admin.UserGroupGetAPIResponseDTO' description: A list of objects representing user groups and the permissions to assign to or remove from them. admin.PermissionsToUserGroupRequestDTO: type: object properties: userGroupId: type: string description: The unique identifier associated with the user group. permissionsIds: type: array items: type: string description: A list of strings representing the unique permission IDs to assign. admin.PermissionsToUserGroupsRequestDTO: type: object properties: userGroups: type: array items: $ref: '#/components/schemas/admin.PermissionsToUserGroupRequestDTO' description: A list of objects representing the user groups and permissions to assign or remove. admin.ProductReleaseDTO: type: object properties: productId: type: string description: The unique ID of the product. previousVersion: type: string description: The release version being replaced by the latest version. previousVersionEndDate: type: string description: The end-of-life date for the previous release version. Once this date has passed, the latest version will be automatically activated on all tenants. The format is the number of milliseconds since midnight 01 January, 1970 UTC as a string. latestVersion: type: string description: The release version that replaces previous versions. description: Details about the available release versions for a specific product. admin.ProductReleasesDTO: type: object properties: releases: type: array items: $ref: '#/components/schemas/admin.ProductReleaseDTO' description: A list of products and details about their available release versions. description: A collection of products and details about their available release versions. admin.ProductVersionDTO: type: object properties: productId: type: string description: The unique ID of the product. version: type: string description: The release version of the product. tenantCodes: type: array items: type: string description: The tenants you want to execute the API call on. Retrieve or activate the product release versions on these tenants. description: Provides information about the product release version of a tenant. It is used when retrieving the active product release version and activating the product release version. admin.ProductVersionsDTO: type: object properties: versions: type: array items: $ref: '#/components/schemas/admin.ProductVersionDTO' description: A list of products and their current release versions for a tenant. description: A collection of products and their current release version for a tenant. admin.ProductVersionsUpdateFailureTenantResponseDTO: type: object properties: productId: type: string description: The unique ID of the product that failed to activate. version: type: string description: The release version of the product that was being activated. tenantCodes: type: array items: type: string description: The tenants where the specified release version failed to activate. message: type: string description: More information about why the activation failed. description: Provides details about the failed activation of a product release version. admin.ProductVersionsUpdateResponseDTO: type: object properties: successes: type: array items: $ref: '#/components/schemas/admin.ProductVersionsUpdateSuccessfulTenantResponseDTO' description: The products that were successfully activated. failures: type: array items: $ref: '#/components/schemas/admin.ProductVersionsUpdateFailureTenantResponseDTO' description: The products that failed to activate. description: A collection of responses indicating the success or failure of a product release version activation request, including lists of tenants with successful or failed activations. admin.ProductVersionsUpdateSuccessfulTenantResponseDTO: type: object properties: productId: type: string description: The unique ID of the product that was successfully activated. version: type: string description: The release version of the product that was activated. tenantCodes: type: array items: type: string description: The tenants where the specified release version was succesfully activated. description: Provides confirmation details about the successful activation of a product release version. admin.SecurityAssignmentResponseDTO: type: object properties: tenants: type: array items: $ref: '#/components/schemas/admin.TenantAssignmentsDTO' description: A list of objects representing the tenants and users that were assigned to or removed from user groups. admin.SimpleUserDTO: type: object properties: userId: type: string description: The unique identifier associated with the user. username: type: string description: The user's username. This is typically the user's email, such as john@visier.com. admin.TargetProjectForTenantDTO: type: object properties: tenantCode: type: string description: The tenant code. projectId: type: string description: The project in which to make changes for the tenant. admin.TargetProjectForTenantsListDTO: type: object properties: targetProjectForTenants: type: array items: $ref: '#/components/schemas/admin.TargetProjectForTenantDTO' description: "Administrating tenants can specify the tenants and projects in which to make assignments to users. Specify one `projectId` per `tenantCode`.\n If omitted, the request is immediately published to production or applied to the `ProjectID` in the request header, if available, for the administrating tenant or TargetTenantID, if available." admin.TenantAssignmentsDTO: type: object properties: tenantCode: type: string description: The unique identifier associated with the tenant. status: enum: - Unknown - Succeed - Failed type: string description: The state of the user group assignment. Valid values are Succeed or Failed. format: enum message: type: string description: A detailed description of the request outcome, if available. assignments: type: array items: $ref: '#/components/schemas/admin.UserSecurityAssignmentsDTO' description: A list of objects representing the user group and user assignments. projectId: type: string description: The ID of the project that the change was made in, if applicable. admin.TenantDetailsTraitsDTO: type: object properties: aggregationRights: type: boolean description: If `true`, the tenant is opted in to Visier's data aggregation program, such as Visier Benchmarks. Default is `false`. If `false`, `aggregationRights` isn't returned in the response. tenantType: enum: - ROOT_ADMIN - ROOT - BLUEPRINT - ENTERPRISE - ENTERPRISE_ROOT - BENCHMARK - PARTNER - PARTNER_CUSTOMER - SMB_BP - SMB_CUSTOMER - UNKNOWN type: string description: "The tenant's type. Valid values:\n * `ENTERPRISE`: An analytic tenant managed by Visier that represents an enterprise customer's instance of Visier.\n * `PARTNER`: An administrating tenant that manages one or more analytic tenants. Partner tenants are managed by non-Visier administrators, such as an embedded partner or system integration partner.\n * `PARTNER_CUSTOMER`: An analytic tenant managed by a partner that represents the partner's customer's instance of Visier." format: enum dataProfileType: enum: - Regular - Integration - Demo - Cat - Test - DataProfileUnknown - ProductIntelligence type: string description: "The tenant's data profile, which designates how the tenant's data is used. Selecting the correct data profile is critical for accurately measuring adoption, assessing system performance, and accurate billing. Valid values:\n * `Regular`: An analytic tenant that hosts data for customer business decisions. `Regular` tenants receive monitoring for business data quality and the highest priority for system performance.\n * `Integration`: An analytic tenant that hosts data for development, staging, and testing. Customers do not use data in this tenant to make business decisions.\n * `Demo`: An analytic tenant that hosts data for demonstrations and training. `Demo` tenants receive the highest priority for system performance, but no monitoring for business data quality. Customers do not use data in this tenant to make business decisions.\n * `Cat`: A consolidated analytics tenant for aggregating data from multiple analytic tenants in a single tenant.\n * `Test`: An analytic tenant that hosts data for testing. Customers do not use data in this tenant to make business decisions.\n * `ProductIntelligence`: A Product Intelligence tenant for cross-tenant analysis." format: enum description: "The tenant's traits, including aggregation rights, tenant type, and data profile type.\n As workaround Due to sbt setup limitations this has been duplicated to components/data_services/modules/data_services-dto/src/main/protobuf/visier/dataservices/tenants/transfers/TenantDetailsTraits.proto\n Please make sure any change to this DTO (and enums) is also reflected in the above file." admin.TenantIndustryInfoDTO: type: object properties: industryCode: type: string description: The standardized code that describes the tenant's industry within a particular industry classification system. We highly recommend that you provide an industry code here or with the business units in the data to take advantage of all of Visier's features. industryClassificationType: enum: - UNKNOWN_CLASSIFICATION - NAICS - NACE type: string description: "The classification system the industry code belongs to. Valid values:\n * `NAICS`: The industry classification system of Canada, Mexico, and the United States.\n * `NACE`: The industry classification system of the European Union." format: enum description: A tenant's industry information, including the industry code and classification type. admin.UserGroupGetAPIResponseDTO: type: object properties: userGroupId: type: string description: The unique identifier associated with the user group. displayName: type: string description: An identifiable user group name to display in Visier, such as "Leadership User Group". permissions: type: array items: $ref: '#/components/schemas/admin.PermissionResponseDTO' description: A list of objects representing the user's permissions. admin.UserGroupsGetAPIResponseDTO: type: object properties: userGroups: type: array items: $ref: '#/components/schemas/admin.UserGroupGetAPIResponseDTO' description: A list of user groups. limit: type: integer description: The number of results to return. The maximum number of users to retrieve is 1000. format: uint32 start: type: integer description: The index to start retrieving results from, also known as offset. format: uint32 admin.UserGroupsUsersDTO: type: object properties: tenants: type: array items: $ref: '#/components/schemas/admin.UserGroupsUsersForTenantDTO' description: A list of objects representing the users that are explicitly assigned to the user group, organized by the tenants the users belong to. limit: type: integer description: The limit of results to return. The maximum value is 1000. format: uint32 start: type: integer description: The index to start retrieving values from, also known as offset. The index begins at 0. format: uint32 admin.UserGroupsUsersForTenantDTO: type: object properties: tenantCode: type: string description: The unique identifier associated with the tenant. users: type: array items: $ref: '#/components/schemas/admin.SimpleUserDTO' description: A list of objects representing the users in the user group. admin.UserSecurityAssignmentsDTO: type: object properties: id: type: string description: The unique identifier associated with the user group. name: type: string description: The name of the user group. users: type: array items: $ref: '#/components/schemas/admin.SimpleUserDTO' description: A list of objects representing the users assigned to or removed from the user group. admin.UsersToUserGroupRequestDTO: type: object properties: userGroupId: type: string description: The unique identifier associated with the user group. userIds: type: array items: type: string description: A list of strings representing unique user IDs to assign to or remove from the user group. The maximum number of `userIds` per user group is 100. admin.UsersToUserGroupsRequestDTO: type: object properties: userGroups: type: array items: $ref: '#/components/schemas/admin.UsersToUserGroupRequestDTO' description: A list of objects representing the user groups and users to assign or remove. targetProjectForTenantsList: allOf: - $ref: '#/components/schemas/admin.TargetProjectForTenantsListDTO' description: "Administrating tenants can specify the tenants and projects in which to assign users to user groups or remove users from user groups. Specify one `projectId` per `tenantCode`.\n If omitted, the request is immediately published to production or applied to the ProjectID in the request header, if available, for the administrating tenant or TargetTenantID, if available." designer.crypto.GenerateKeyRequestDTO: type: object properties: keyName: type: string description: The encryption key's display name. The name may only contain alphanumeric or dash (-) characters and must be between 6 and 36 characters long. expiryDate: type: string description: The UTC expiration date of the key in ISO-8601 format. Must be between 2 and 10 years. Default is 2 years. algorithm: type: string description: The hash-based message authentication code and cryptographic hash function associated with the encryption key. Must be one of `HmacSHA224`, `HmacSHA256`, `HmacSHA384`, or `HmacSHA512`. description: The settings to define for an encryption key. designer.crypto.TenantEncryptionKeyDTO: type: object properties: detail: allOf: - $ref: '#/components/schemas/designer.crypto.TenantEncryptionKeyDetailsDTO' description: Information about an encryption key. key: type: string description: The encryption key value. description: The details of an encryption key. designer.crypto.TenantEncryptionKeyDetailListDTO: type: object properties: keyDetails: type: array items: $ref: '#/components/schemas/designer.crypto.TenantEncryptionKeyDetailsDTO' description: Information about a list of encryption keys. description: A list of encryption keys. designer.crypto.TenantEncryptionKeyDetailsDTO: type: object properties: keyName: type: string description: The encryption key's display name. The name may only contain alphanumeric or dash (-) characters and must be between 6 and 36 characters long. algorithm: type: string description: The hash-based message authentication code and cryptographic hash function associated with the encryption key. generatedBy: type: string description: The user who generated the key. dateGenerated: type: string description: The UTC date that the key was generated in milliseconds since the Unix epoch. expiryDate: type: string description: The UTC expiration date of the key in milliseconds since the Unix epoch. description: Information about who generated an encryption key, its key name, algorithm, generation date, and expiration date. designer.ModuleSettingsDTO: type: object properties: unavailableForAssignment: type: boolean description: If true, the module cannot be assigned to tenants. specialHandlingInstruction: type: string description: An instruction message in the module selection dialog. This can be a note for administrators such as "Don't assign this module" or "Assign Module B instead". locale: type: string description: The language of the module. For example, a module that is in English will have the locale "en". designer.TenantModuleDTO: type: object properties: displayName: type: string description: An identifiable name that is displayed within Visier. For example, "TALENT". symbolName: type: string description: The symbol name of the module. For example, "Talent_Management". moduleSettings: allOf: - $ref: '#/components/schemas/designer.ModuleSettingsDTO' description: The settings associated with the module. dp_automation.MetricValidationSummaryDTO: type: object properties: symbolName: type: string description: The symbol name of the metric. For example, "employeeCount". displayName: type: string description: An identifiable name that is displayed within Visier. For example, "Headcount". value: type: number description: The current value of the metric expressed as an integer. format: double dp_automation.TenantPreviewEntriesSummaryDTO: type: object properties: tenantCode: type: string description: The tenant code of the analytic tenant. For example, "WFF_j1r~i1o". dataVersion: type: string description: The data version ID. dataVersionDate: type: string description: The date that the data version was created. metrics: type: array items: $ref: '#/components/schemas/dp_automation.MetricValidationSummaryDTO' description: A list of metrics and their values. dp_automation.TenantPreviewEntriesSummaryListDTO: type: object properties: tenants: type: array items: $ref: '#/components/schemas/dp_automation.TenantPreviewEntriesSummaryDTO' description: A list of objects representing all the analytic tenants. limit: type: integer description: The number of analytic tenants to retrieve. The maximum number to retrieve is 1000. format: uint32 start: type: integer description: The index to start retrieving results from, also known as offset. The index begins at 0. format: uint32 servicing.AccessibleTenantProfileAssignmentRequestDTO: type: object properties: targetUserIds: type: array items: type: string description: A list of users to assign this profile. targetTenantCodes: type: array items: $ref: '#/components/schemas/servicing.TargetTenantCodeDTO' description: A list of objects representing the analytic tenants for profiles assigned to the users. validityStartTime: type: string description: An inclusive date-time when this profile is active. validityEndTime: type: string description: An exclusive date-time when this profile is no longer active. servicing.AccessibleTenantProfileAssignmentResponseDTO: type: object properties: errors: type: boolean description: If true, an error is generated by the request. badTenantCodes: type: array items: $ref: '#/components/schemas/servicing.TenantCodeErrorDTO' description: A list of objects representing any tenants that returned errors. badUserIds: type: array items: $ref: '#/components/schemas/servicing.UserIdErrorDTO' description: A list of objects representing the user IDs that may not be valid. failedAssignments: type: array items: $ref: '#/components/schemas/servicing.FailedAccessibleTenantProfileAssignmentDTO' description: A list of objects representing any errors during the assignment operation. successfulAssignments: type: array items: $ref: '#/components/schemas/servicing.SuccessfulAccessibleTenantProfileAssignmentDTO' description: A list of user IDs that were successfully assigned the profiles. servicing.AccessibleTenantProfileRevokeRequestDTO: type: object properties: targetUserIds: type: array items: type: string description: A list of users to remove this profile from. targetTenantCodes: type: array items: $ref: '#/components/schemas/servicing.TargetTenantCodeDTO' description: A list of objects representing the analytic tenants for removing profiles from each target user ID. servicing.AccessibleTenantProfileRevokeResponseDTO: type: object properties: badTenantCodes: type: array items: $ref: '#/components/schemas/servicing.ReducedTenantCodeErrorDTO' description: A list of objects representing any tenants that returned errors. badUserIds: type: array items: $ref: '#/components/schemas/servicing.ReducedUserIdErrorDTO' description: A list of objects representing the user IDs that may not be valid. unaffectedUsers: type: array items: $ref: '#/components/schemas/servicing.SuccessfulLocalTenantProfileAssignmentDTO' description: A list of objects representing the valid user IDs that were not affected. succeeded: type: array items: $ref: '#/components/schemas/servicing.SuccessfulLocalTenantProfileAssignmentDTO' description: A list of objects representing the valid user IDs that succeeded. servicing.AdditionalCapabilitiesDTO: type: object properties: additionalCapabilities: type: array items: type: string description: The additional capabilities assigned to this profile. servicing.AdminCapabilityConfigDTO: type: object properties: allCapabilitiesAccess: type: boolean description: If `true`, the permission has all possible capabilities. capabilities: type: array items: type: string description: A list of the capabilities assigned in the permission. Not required if `allCapabilitiesAccess` is true. servicing.AllPermissionsAssignedForLocalTenantDTO: type: object properties: assignedPermissions: type: array items: $ref: '#/components/schemas/servicing.PermissionAssignedForLocalTenantDTO' description: A list of objects representing the user's permissions. servicing.AllProfileAssignedForAccessibleTenantDTO: type: object properties: assignedProfilesForAccessibleTenant: type: array items: $ref: '#/components/schemas/servicing.ProfileAssignedForAccessibleTenantDTO' description: A list of objects representing the user profiles assigned to the user and their validity range. servicing.AllProfileAssignedForLocalTenantDTO: type: object properties: assignedProfiles: type: array items: $ref: '#/components/schemas/servicing.ProfileAssignedForLocalTenantDTO' description: A list of objects representing the user profiles assigned to the user and their validity range. servicing.AllUserGroupsAssignedForLocalTenantDTO: type: object properties: assignedUserGroups: type: array items: $ref: '#/components/schemas/servicing.UserGroupAssignedForLocalTenantDTO' description: A list of objects representing the available user groups. servicing.AllUsersGetAPIResponseDTO: type: object properties: users: type: array items: $ref: '#/components/schemas/servicing.UserGetAPIResponseDTO' description: A list of available users. limit: type: integer description: The number of results to return. The maximum number of users to retrieve is 1000. format: uint32 start: type: integer description: The index to start retrieving results from, also known as offset. The index begins at 0. format: uint32 servicing.AnalyticObjectDTO: type: object properties: analyticObjectId: type: string description: The unique ID of the analytic object. displayName: type: string description: An identifiable name to display in Visier, such as "Employee". objectType: enum: - Event - Subject - BusinessOutcomeOverlay - PlanOrBudgetOverlay - ExternalBenchmark - VisierBenchmark - UsageOverlay - OtherOverlay - InternalComparison - PlanAnalyticObject type: string description: The analytic object type. format: enum relatedObjects: type: array items: $ref: '#/components/schemas/servicing.RelatedAnalyticObjectDTO' description: The analytic objects related to the data security object. securableProperties: type: array items: $ref: '#/components/schemas/servicing.SecurablePropertyDTO' description: All available properties from the data security object and its related analytic objects that you can configure data access for. securableDimensions: type: array items: $ref: '#/components/schemas/servicing.SecurableDimensionDTO' description: A list of dimensions that are available to define population access filters in the permission. servicing.AssignRevokePermissionByPermissionDTO: type: object properties: permission: $ref: '#/components/schemas/servicing.PermissionAssignedForLocalTenantDTO' users: type: array items: $ref: '#/components/schemas/servicing.AssignRevokePermissionByUserDTO' description: A list of objects representing the users that was permission was assigned to or removed from. description: The results of the permission assignment or removal. servicing.AssignRevokePermissionByTenantDTO: type: object properties: tenantCode: type: string description: The unique identifier associated with the tenant. permissions: type: array items: $ref: '#/components/schemas/servicing.AssignRevokePermissionByPermissionDTO' description: A list of objects representing the assigned or removed permissions. status: enum: - Unknown - Succeed - Failed type: string description: The state of the permission assignment. Valid values are Succeed or Failed. format: enum message: type: string description: A detailed description of the request outcome, if available. projectId: type: string description: The ID of the project that the change was made in, if applicable. description: The permissions organized by tenant. servicing.AssignRevokePermissionByUserDTO: type: object properties: userId: type: string description: The unique identifier associated with the user. username: type: string description: The user's username. This is typically the user's email, such as john@visier.com. message: type: string description: A meaningful message about the user permission. description: The results of the permission assignment or removal by user. servicing.AssignRevokePermissionRequestDTO: type: object properties: permissionId: type: string description: The unique identifier associated with a permission. userIds: type: array items: type: string description: A list of strings representing unique user IDs. description: "Set permission detail\n permissionId with assign to userIds" servicing.AssignRevokePermissionsRequestDTO: type: object properties: permissions: type: array items: $ref: '#/components/schemas/servicing.AssignRevokePermissionRequestDTO' description: A list of objects representing the permissions to assign to or remove from users. targetProjectForTenantsList: allOf: - $ref: '#/components/schemas/admin.TargetProjectForTenantsListDTO' description: "Administrating tenants can specify the tenants and projects in which to assign permissions to users or remove permissions from users. Specify one `projectId` per `tenantCode`.\n If omitted, the request is immediately published to production or applied to the `ProjectID` in the request header, if available, for the administrating tenant or TargetTenantID, if available." description: "Set permissions request\n List of permissionId with assign to user Ids" servicing.AssignRevokePermissionsResponseDTO: type: object properties: tenants: type: array items: $ref: '#/components/schemas/servicing.AssignRevokePermissionByTenantDTO' description: A list of objects representing the users that were assigned permissions, organized by the tenants the users belong to. sessionRepoId: type: string description: The results of the permission assignment or removal. servicing.BulkDataAccessSetDeleteRequestDTO: type: object properties: shareablePropertyAccessConfigs: type: array items: $ref: '#/components/schemas/servicing.DataAccessSetIdDTO' description: The data access sets to be deleted. servicing.BulkDataAccessSetRequestDTO: type: object properties: shareablePropertyAccessConfigs: type: array items: $ref: '#/components/schemas/servicing.DataAccessSetDTO' description: The data access sets to be created or updated. servicing.BulkDataAccessSetResponseDTO: type: object properties: successes: type: array items: $ref: '#/components/schemas/servicing.DataAccessSetSuccessDTO' description: The successfully created data access sets. failures: type: array items: $ref: '#/components/schemas/servicing.DataAccessSetFailureDTO' description: The data access sets that failed to be created and any relevant error information. servicing.BulkDataAccessSetRevertRequestDTO: type: object properties: shareablePropertyAccessConfigs: type: array items: $ref: '#/components/schemas/servicing.DataAccessSetIdDTO' description: The data access sets to be reverted. servicing.CapabilitiesDTO: type: object properties: capability: type: string description: The name of the capability. accessLevel: type: string description: The access level of the profile for the given capability. viewLevel: type: string description: The view level of the profile for the given capability. servicing.CapabilityDTO: type: object properties: name: type: string description: The unique name of the capability. displayName: type: string description: An identifiable capability name to display in Visier, such as "Schedule Analysis". description: type: string description: A description of the capability. servicing.CloneFilesIntoSourceParametersDTO: type: object properties: originSource: type: string description: The unique identifier of the source to clone files from. targetSource: type: string description: The unique identifier of the source to clone files into. dateRange: allOf: - $ref: '#/components/schemas/servicing.DateRangeDTO' description: The date range of the files to clone. If undefined, clones all files. description: The parameters for the `cloneFilesIntoSource` option, such as the source to clone files from, the source to clone files into, and the date range of the files to clone. servicing.CommitAndPublishOperationResponseDTO: type: object properties: publishedVersion: allOf: - $ref: '#/components/schemas/servicing.ProjectDTO' description: The project version that was published to production. servicing.CommitDTO: type: object properties: id: type: string description: The unique ID of the committed change. name: type: string description: An identifiable name of the committed change to display in Visier. description: type: string description: A description of the committed change. servicing.ContentPackageArtifactDTO: type: object properties: uuid: type: string description: The unique identifier of the artifact, if it is identified by a UUID rather than an object name. objectName: type: string description: The object name of the artifact, if it is identified by object name rather than a UUID. displayName: type: string description: The display name of the artifact, if resolvable. canFilterBy: type: boolean description: If `true`, this artifact is available to filter by. Only present for `dimension` and `keyGroup` artifacts. canGroupBy: type: boolean description: If `true`, this artifact is available to group by. Only present for `dimension` and `keyGroup` artifacts. servicing.ContentPackageArtifactTypeDTO: type: object properties: artifactType: type: string description: The category of the content package item, such as `metric`, `dimension`, `keyGroup`, `planModel`, `guidebookTopic`, `analysis`, `report`, or `dataConnector`. artifacts: type: array items: $ref: '#/components/schemas/servicing.ContentPackageArtifactDTO' description: The items of this category included in the content package. servicing.ContentPackageDTO: type: object properties: contentPackageId: type: string description: The unique ID of the content package. displayName: type: string description: An identifiable content package name to display in Visier, such as "Talent Acquisition Core Content". description: type: string description: A description of the content package. artifactsByType: type: array items: $ref: '#/components/schemas/servicing.ContentPackageArtifactTypeDTO' description: The artifacts explicitly included in the content package, grouped by artifact type. Only populated when the request includes `with=details`. servicing.DataAccessSetDTO: type: object properties: id: type: string description: The unique ID of the data access set. displayName: type: string description: An identifiable data access set name to display in Visier, such as "Aggregate(Employee)". description: type: string description: A description of the data access set. analyticObjectId: type: string description: The unique ID of the analytic object that the data access set is for. propertyAccessConfigs: type: array items: $ref: '#/components/schemas/servicing.PropertyAccessConfigDTO' description: The data access assigned to properties in the data access set. correlationId: type: string description: "An optional identifier to associate bulk request fields with their corresponding response fields. Correlation IDs may be between 3 and 64 characters long and\n consist of alphanumeric characters, `-`, and `_`.\n\n **Note**:\n - Each request field must have a unique `correlationId`.\n - Cannot reuse a `correlationId` in subsequent `POST` requests while the ID is still active. A `correlationId` is active for 7 days after creation." servicing.DataAccessSetErrorDTO: type: object properties: message: type: string description: Error message rci: type: string description: A root cause identifier that allows Visier to determine the source of the problem. servicing.DataAccessSetFailureDTO: type: object properties: dataAccessSetId: type: string description: The unique identifier associated with the data access set. displayName: type: string description: An identifiable data access set name to display in Visier, such as "Detailed(Employee)". error: allOf: - $ref: '#/components/schemas/servicing.DataAccessSetErrorDTO' description: The error associated with the failure. correlationId: type: string description: An identifier to associate the matching request field. Only returned if a `correlationId` was defined for the corresponding request field. servicing.DataAccessSetIdDTO: type: object properties: id: type: string description: The unique ID of the data access set. servicing.DataAccessSetSuccessDTO: type: object properties: dataAccessSetId: type: string description: The unique identifier associated with the created data access set. displayName: type: string description: An identifiable data access set name to display in Visier, such as "Detailed(Employee)". correlationId: type: string description: An identifier to associate the matching request field. Only returned if a `correlationId` was defined for the corresponding request field. servicing.DataSecurityProfileDTO: type: object properties: analyticObjectId: type: string description: The unique ID of the analytic object assigned data security in this permission. propertySetConfig: allOf: - $ref: '#/components/schemas/servicing.PropertySetConfigDTO' description: "A list of objects representing the data access for an analytic object’s properties." allDataPointAccess: type: boolean description: If `true`, the permission grants access to the entire population. If `false`, define `memberFilterConfigs` to set custom population access. memberFilterConfigs: type: array items: $ref: '#/components/schemas/servicing.MemberFilterConfigDTO' description: Custom filters that define population access for an item in the permission. inheritedAccessConfigs: type: array items: $ref: '#/components/schemas/servicing.InheritedAccessConfigDTO' description: "The events and related objects inherited from the analytic object.\n By default, all events and related objects associated with the analytic object will be inherited from the analytic object in a permission.\n For example, if you assign access to Employee, then access to the Employee Exit event is inherited in the permission.\n To remove access to an event or related object, add the object to `inheritedAccessConfigs` with `removeAccess`: true.\n To add custom filters to an event or related object, add the object to `inheritedAccessConfigs` and define `memberFilterConfigs`." inheritedReferenceMemberFilterConfig: allOf: - $ref: '#/components/schemas/servicing.InheritedReferenceMemberFilterConfigDTO' description: "Configures the analytic object to inherit population access filters from. The target analytic object must be assigned population access in the permission and have a binding (strong) reference from the source analytic object.\n * For example, assume `Applicant` -> `Requisition` is configured to be a binding (strong) reference.\n For `Applicant` (source analytic object) to inherit population access filters from `Requisition` (target analytic object), in the Applicant `dataSecurityProfile`, set `inheritedReferenceMemberFilterConfig` to `Requisition`. In this example, Applicant will inherit filters from Requisition because Requsition is assigned data security in this permission and there is a binding (strong) reference from Applicant to Requisition." analyticObjectStatus: enum: - Unset - Valid - NoData - NotFound type: string description: "The analytic object's validity status. Valid values: Valid, NoData, NotFound.\n * **Valid**: The object exists and has loaded data.\n * **NoData**: The object exists but doesn't have loaded data.\n * **NotFound**: The object doesn't exist." format: enum servicing.DateRangeDTO: type: object properties: start: type: string description: The start date in ISO 8601 format. end: type: string description: The end date in ISO 8601 format. If undefined, the end date is the current date. description: The range of dates for the request. servicing.DeletePermissionsRequestDTO: type: object properties: permissionIds: type: array items: type: string description: The identifiers of the permissions to delete. servicing.DimensionFilterDTO: type: object properties: staticDimensionFilter: $ref: '#/components/schemas/servicing.StaticDimensionFilterDTO' dynamicDimensionFilter: $ref: '#/components/schemas/servicing.DynamicDimensionFilterDTO' servicing.DynamicDimensionFilterDTO: type: object properties: dimensionId: type: string description: The dimension ID associated with the filter. subjectReferencePath: type: array items: type: string description: The subject reference path. dynamicPropertyMappings: type: array items: $ref: '#/components/schemas/servicing.DynamicPropertyMappingDTO' description: The properties assigned population access in the dynamic filter. dimensionStatus: enum: - Unset - Valid - NoData - NotFound type: string description: "The dimension's validity status. Valid values: Valid, NoData, NotFound.\n * **Valid**: The object exists and has loaded data.\n * **NoData**: The object exists but doesn't have loaded data.\n * **NotFound**: The object doesn't exist." format: enum servicing.DynamicPropertyMappingDTO: type: object properties: hierarchyPropertyId: type: string description: The unique ID of the property. userProperty: allOf: - $ref: '#/components/schemas/servicing.UserPropertyDTO' description: The user property that you want to link the name property or organization head to. hierarchyPropertyStatus: enum: - Unset - Valid - NoData - NotFound type: string description: "The property's validity status. Valid values: `Valid`, `NotFound`.\n * **Valid**: The object exists and has loaded data.\n * **NotFound**: The object doesn't exist." format: enum servicing.ErrorDTO: type: object properties: rootCauseId: type: string description: The root cause identifier that allows Visier to determine the source of the problem. errorCode: type: string description: A brief identifier of the type of error. errorMessage: type: string description: A description of the error that occurred. servicing.ExportProductionVersionsAPIOperationParametersDTO: type: object properties: startVersion: type: string description: The unique identifier of the version to start exporting versions from. The range is inclusive. endVersion: type: string description: The unique identifier of the version to stop exporting versions at. The range is inclusive. excludedVersions: type: array items: type: string description: A list of versions between `startVersion` and `endVersion` to exclude. servicing.ExportProductionVersionsAPIOperationResponseDTO: type: object properties: {} servicing.ExportSourcesAPIOperationResponseDTO: type: object properties: {} servicing.ExportSourcesParametersDTO: type: object properties: sourceUuids: type: array items: type: string description: The UUIDs of the sources to export. If specified, exports only the listed sources. sourceObjectNames: type: array items: type: string description: The object names of the sources to export. If specified, exports only the listed sources. description: The parameters for the `exportSources` option. If neither parameter is specified, exports all sources. If both parameters are specified, exports the sources that match values from both parameters. servicing.FailedAccessibleTenantProfileAssignmentDTO: type: object properties: userId: type: string description: The impacted user ID. tenantCode: type: string description: The tenant code. forAllChildren: type: boolean description: If true, the target assignment is for all analytic tenants. error: allOf: - $ref: '#/components/schemas/servicing.ErrorDTO' description: The details about the error. servicing.FailedLocalTenantProfileAssignmentDTO: type: object properties: userId: type: string description: The impacted user ID. error: allOf: - $ref: '#/components/schemas/servicing.ErrorDTO' description: The details about the error. servicing.FailedLocalTenantProfileRevokeDTO: type: object properties: userId: type: string description: The impacted user ID. message: type: string description: The details about the error. servicing.GetCapabilitiesAPIResponseDTO: type: object properties: capabilities: type: array items: $ref: '#/components/schemas/servicing.CapabilityDTO' description: A list of objects representing the available capabilities. servicing.GetContentPackagesAPIResponseDTO: type: object properties: contentPackages: type: array items: $ref: '#/components/schemas/servicing.ContentPackageDTO' description: A list of objects representing the available content packages. servicing.GetDataAccessSetsAPIResponseDTO: type: object properties: dataAccessSets: type: array items: $ref: '#/components/schemas/servicing.DataAccessSetDTO' description: A list of objects representing the shareable data access sets. servicing.GetDataSecurityObjectsAPIResponseDTO: type: object properties: analyticObjects: type: array items: $ref: '#/components/schemas/servicing.AnalyticObjectDTO' description: A list of analytic objects and their related objects that are available to define data access to. servicing.GetPermissionsAPIResponseDTO: type: object properties: permissions: type: array items: $ref: '#/components/schemas/servicing.PermissionDTO' description: A list of objects representing the available permissions. description: List of available permissions servicing.GetProductionVersionsAPIResponseDTO: type: object properties: publishedVersions: type: array items: $ref: '#/components/schemas/servicing.ProjectDTO' description: A list of projects that were published to production. servicing.GetProjectsAPIResponseDTO: type: object properties: openProjects: type: array items: $ref: '#/components/schemas/servicing.ProjectDTO' description: A list of objects representing the accessible open projects for the user. approvalProjects: type: array items: $ref: '#/components/schemas/servicing.ProjectDTO' description: A list of objects representing the accessible approval projects for the user. rejectedProjects: type: array items: $ref: '#/components/schemas/servicing.ProjectDTO' description: A list of objects representing the accessible rejected projects for the user. archivedProjects: type: array items: $ref: '#/components/schemas/servicing.ProjectDTO' description: A list of objects representing the accessible archived projects for the user. servicing.HierarchyPropertyDTO: type: object properties: hierarchyPropertyId: type: string description: The unique ID of the property. displayName: type: string description: An identifiable property name to display in Visier, such as "Name Property". servicing.InheritedAccessConfigDTO: type: object properties: analyticObjectId: type: string description: The analytic object ID associated with the inherited access configuration. removeAccess: type: boolean description: The flag for removing access to the inherited analytic object. memberFilterConfigs: type: array items: $ref: '#/components/schemas/servicing.MemberFilterConfigDTO' description: Custom filters that define population access for an inherited analytic object in the permission. servicing.InheritedReferenceMemberFilterConfigDTO: type: object properties: targetAnalyticObjectId: type: string description: 'The unique ID of the analytic object that the source analytic object should inherit filters from. The target analytic object must have a binding (strong) reference from the source analytic object.' analyticObjectReference: type: string description: 'The optional object name of a binding (strong) reference to the target analytic object. If not specified, uses the first binding reference from the source to the target analytic object.' servicing.InstructionAPIResponseDTO: type: object properties: instructionId: type: string description: The unique identifier of the instruction. displayName: type: string description: The user-friendly display name for the instruction. content: type: string description: The instruction content. category: enum: - INSTRUCTION_CATEGORY_UNSPECIFIED - INSTRUCTION_DATA_GATHERING - INSTRUCTION_RESPONSE_STYLE type: string description: The category of the instruction. format: enum userGroupIds: type: array items: type: string description: The user group IDs that the instruction applies to. versionInformation: allOf: - $ref: '#/components/schemas/servicing.VersionInformationDTO' description: The object's version information. Version information is read-only. It indicates where the object originates from and whether the object has been modified in your tenant. description: Information about a Vee instruction. servicing.InstructionsAPIResponseDTO: type: object properties: instructions: type: array items: $ref: '#/components/schemas/servicing.InstructionAPIResponseDTO' description: A list of instructions. description: The Vee instructions. servicing.LastLoginDTO: type: object properties: timestamp: type: string description: The time that the user last logged into Visier. servicing.LocalTenantProfileAssignmentRequestDTO: type: object properties: targetUserIds: type: array items: type: string description: A list of users to assign this profile. validityStartTime: type: string description: An inclusive date-time when this profile is active. validityEndTime: type: string description: An exclusive date-time when this profile is no longer active. servicing.LocalTenantProfileAssignmentResponseDTO: type: object properties: errors: type: boolean description: If true, an error was generated by the request. badUserIds: type: array items: $ref: '#/components/schemas/servicing.UserIdErrorDTO' description: A list of objects representing the user IDs that may not be valid. failedAssignments: type: array items: $ref: '#/components/schemas/servicing.FailedLocalTenantProfileAssignmentDTO' description: A list of objects representing any errors that occurred during the assignment operation. successfulAssignments: type: array items: $ref: '#/components/schemas/servicing.SuccessfulLocalTenantProfileAssignmentDTO' description: A list of the user IDs that were successfully assigned the profile. servicing.LocalTenantProfileRevokeRequestDTO: type: object properties: targetUserIds: type: array items: type: string description: A list of users to remove this profile from. servicing.LocalTenantProfileRevokeResponseDTO: type: object properties: failed: type: array items: $ref: '#/components/schemas/servicing.FailedLocalTenantProfileRevokeDTO' description: A list of objects representing any errors that occurred during the assignment operation. succeeded: type: array items: $ref: '#/components/schemas/servicing.SuccessfulLocalTenantProfileAssignmentDTO' description: A list of the user IDs that successfully had a profile removed. servicing.MemberFilterConfigDTO: type: object properties: dimensionFilters: type: array items: $ref: '#/components/schemas/servicing.DimensionFilterDTO' description: "A list of objects representing the custom filters that define population access for the item. \n A custom filter can be a \"member filter\" (`staticDimensionFilter`) or a \"dynamic filter\" (`dynamicDimensionFilter`)." servicing.MemberSelectionDTO: type: object properties: namePath: type: array items: type: string description: The member name path. excluded: type: boolean description: If `true`, population access is granted for all members except this member. dimensionMemberStatus: enum: - Unset - Valid - NoData - NotFound type: string description: "The dimension member's validity status. Valid values: Valid, NotFound.\n * **Valid**: The object exists and has loaded data.\n * **NotFound**: The object doesn't exist." format: enum servicing.MultiValueSettingDTO: type: object properties: values: type: array items: type: string description: A value containing multiple strings. description: A value containing multiple strings. servicing.NonVersionedSyncErrorDTO: type: object properties: type: enum: - UserGroups - UserDirectAssignments - DataAccessSets - Permissions - Unknown type: string description: The type of artifact that failed to synchronize. format: enum objectId: type: string description: The unique identifier of the artifact that failed, for example permission ID, user group ID, and user ID. Not provided for system-level errors. displayName: type: string description: The display name of the artifact that failed, for example `Diversity Access` and `Leadership Group`. Not provided for system-level errors or user direct assignments. message: type: string description: Human-readable error message describing what went wrong. description: Detailed error information for a synchronization failure. servicing.NonVersionedSyncRequestDTO: type: object properties: syncTypes: type: array items: enum: - UserGroups - UserDirectAssignments type: string format: enum description: "Optional types to synchronize. Specify which artifact types to include in the sync operation. Valid values:\n - `UserGroups`: Synchronizes user group assignments.\n - `UserDirectAssignments`: Synchronizes direct permission assignments to users.\n\n Data Access Sets and Permissions are always synchronized regardless of this setting." description: "Request to copy permissions, data access sets, user groups, and user direct assignments from the versioned environment to the non-versioned environment. This operation immediately applies the security configurations, independent of data versioning.\n This endpoint always synchronizes permissions and data access sets. You can optionally synchronize user group assignments and direct permissions assignments to users." servicing.NonVersionedSyncResponseDTO: type: object properties: status: enum: - Unknown - Success - Failed type: string description: "The status of the sync operation. Valid values:\n - `Success`: All artifacts synchronized successfully.\n - `Failed`: One or more errors occurred during synchronization." format: enum errors: type: array items: $ref: '#/components/schemas/servicing.NonVersionedSyncErrorDTO' description: "List of detailed errors that occurred during synchronization. Each error includes the artifact type, identifier, display name, and human-readable message.\n Empty if status is `Success`. Contains one or more errors if status is `Failed`.\n Common error types include: duplicate artifacts, missing parent artifacts, invalid references, and data inconsistencies." description: Response from non-versioned synchronization operation. servicing.PermissionAssignedByTenantDTO: type: object properties: tenantCode: type: string description: The unique identifier associated with the tenant. users: type: array items: $ref: '#/components/schemas/servicing.PermissionAssignedUserDTO' description: A list of objects representing the users that the permission is assigned to. description: The users assigned a specific permission, grouped by tenant. servicing.PermissionAssignedForLocalTenantDTO: type: object properties: permissionId: type: string description: The unique identifier associated with the permission. displayName: type: string description: An identifiable permission name to display in Visier, such as "Diversity Access". description: type: string description: A user-defined description of the permission. servicing.PermissionAssignedUserDTO: type: object properties: userId: type: string description: The unique identifier associated with the user. username: type: string description: The user's username. This is typically the user's email, such as john@visier.com. permissionFrom: type: string description: "The method through which the user was assigned the permission. The permission may be assigned through\n the following options:\n - User: The permission was directly assigned to the user.\n - UserGroup: The permission was assigned because the user belongs to a user group that is assigned the permission.\n - UserAndUserGroup: The permission was directly assigned to the user and assigned because the user belongs to\n a user group that is assigned the permission." description: The user and the method through which the user was assigned the permission. servicing.PermissionAssignedUsersDTO: type: object properties: tenants: type: array items: $ref: '#/components/schemas/servicing.PermissionAssignedByTenantDTO' description: A list of objects representing the users that are assigned the specific permission, organized by the tenants the users belong to. limit: type: integer description: The number of results to return. The maximum number of tenants to retrieve is 100. format: uint32 start: type: integer description: The index of the tenant to start retrieving results from, also known as offset. The index begins at 0. format: uint32 description: Users that are assigned a specific permission. servicing.PermissionBulkOperationResponseDTO: type: object properties: successes: type: array items: $ref: '#/components/schemas/servicing.PermissionSuccessDTO' description: The successfully processed permissions. failures: type: array items: $ref: '#/components/schemas/servicing.PermissionFailureDTO' description: The permissions that did not process and any relevant error information. servicing.PermissionDTO: type: object properties: permissionId: type: string description: The unique identifier associated with the permission. displayName: type: string description: An identifiable permission name to display in Visier, such as "Diversity Access". description: type: string description: A user-defined description of the permission. dataSecurityProfiles: type: array items: $ref: '#/components/schemas/servicing.DataSecurityProfileDTO' description: A list of objects representing the data security for each item in a permission. adminCapabilityConfig: allOf: - $ref: '#/components/schemas/servicing.AdminCapabilityConfigDTO' description: The capabilities assigned in the permission. roleModulesConfig: allOf: - $ref: '#/components/schemas/servicing.RoleModulesConfigDTO' description: A list of content packages assigned to the permission. sourceSecurityConfig: allOf: - $ref: '#/components/schemas/servicing.SourceSecurityConfigDTO' description: "The sources assigned in the permission.\n
**Note:** This field is in **limited availability**. If you are interested in using it, please contact your Customer Success Manager (CSM)." targetSecurityConfig: allOf: - $ref: '#/components/schemas/servicing.TargetSecurityConfigDTO' description: "A list of data categories and their targets assigned in the permission.\n
**Note:** This field is in **limited availability**. If you are interested in using it, please contact your Customer Success Manager (CSM)." correlationId: type: string description: "An optional identifier to associate bulk request fields with their corresponding response fields. Correlation IDs may be between 3 and 64 characters long and\n consist of alphanumeric characters, `-`, and `_`.\n\n **Note**:\n - Each request field must have a unique `correlationId`.\n - Cannot reuse a `correlationId` in subsequent POST requests while the ID is still active. A `correlationId` is active for 7 days after creation." servicing.PermissionErrorDTO: type: object properties: message: type: string description: Error message rci: type: string description: A root cause identifier that allows Visier to determine the source of the problem. servicing.PermissionFailureDTO: type: object properties: permissionId: type: string description: The unique identifier associated with the permission. displayName: type: string description: An identifiable permission name to display in Visier, such as "Diversity Access". error: allOf: - $ref: '#/components/schemas/servicing.PermissionErrorDTO' description: The error associated with the failure. correlationId: type: string description: An identifier to associate the matching request field. Only returned if a `correlationId` was defined for the corresponding request field. servicing.PermissionSuccessDTO: type: object properties: permissionId: type: string description: The unique identifier associated with the permission. displayName: type: string description: An identifiable permission name to display in Visier, such as "Diversity Access". correlationId: type: string description: An identifier to associate the matching request field. Only returned if a `correlationId` was defined for the corresponding request field. servicing.ProductionVersionAPIOperationRequestDTO: type: object properties: operation: enum: - unknownProductionVersionAPIOperation - rollBackTo type: string description: "The operation to perform. Valid values:\n * `rollBackTo`: Create a project that rolls back the production version to the specified version. The project contains uncommitted changes that reverse the published versions after the target production version." format: enum servicing.ProductionVersionAPIOperationResponseDTO: type: object properties: rollBackTo: allOf: - $ref: '#/components/schemas/servicing.ProjectDTO' description: The project created by the `rollBackTo` operation. servicing.ProductionVersionsAPIOperationRequestDTO: type: object properties: operation: enum: - unknownProductionVersionsAPIOperation - export type: string description: "The operation to perform. Valid values:\n * `export`: Export the project changes of the requested production versions and their related files, such as any Guidebook images. If successful, a ZIP file is returned containing any relevant image files and a JSON file with the production project changes." format: enum exportParameters: allOf: - $ref: '#/components/schemas/servicing.ExportProductionVersionsAPIOperationParametersDTO' description: The parameters for the `export` option, such as the production version to start exporting versions from. Required for `export` operations. servicing.ProductionVersionsAPIOperationResponseDTO: type: object properties: export: allOf: - $ref: '#/components/schemas/servicing.ExportProductionVersionsAPIOperationResponseDTO' description: The result of the `export` operation. servicing.ProfileAssignedForAccessibleTenantDTO: type: object properties: profileId: type: string description: The unique identifier associated with the profile. displayName: type: string description: An identifiable profile name to display in Visier such as "Partner Service Manager". tenantCode: type: string description: The tenant code of the analytic tenant on which this profile is assigned. forAllChildren: type: boolean description: If true, the profile is assigned for all the analytic tenants of the administrating tenant. validityStartTime: type: string description: "An inclusive date-time when this profile is active.\n\n Note: Long.Min_Value means that startTime is undefined." validityEndTime: type: string description: "An exclusive date-time when this profile is no longer active.\n\n Note: Long.Max_Value means that endTime is undefined and is equivalent to permanent access." servicing.ProfileAssignedForLocalTenantDTO: type: object properties: profileId: type: string description: The unique identifier associated with the profile. displayName: type: string description: An identifiable profile name to display in Visier, such as "Partner Service Manager". validityStartTime: type: string description: An inclusive date-time when this profile is active. validityEndTime: type: string description: An exclusive date-time when this profile is no longer active. capabilities: type: array items: $ref: '#/components/schemas/servicing.CapabilitiesDTO' description: A list of objects representing the access that this profile has for the capabilities of this profile. additionalCapabilities: allOf: - $ref: '#/components/schemas/servicing.AdditionalCapabilitiesDTO' description: A list of the additional capabilities that are assigned to this profile. servicing.ProfileAssignmentDTO: type: object properties: profileId: type: string description: The unique identifier associated with the profile. validityStartTime: type: string description: The inclusive start date and time when this profile is active. The format is the number of milliseconds since midnight 01 January, 1970 UTC as a string. validityEndTime: type: string description: The exclusive end date and time when this profile is no longer active. The format is the number of milliseconds since midnight 01 January, 1970 UTC as a string. description: The profiles associated with the user. servicing.ProfileGetAPIResponseDTO: type: object properties: profileId: type: string description: The unique identifier associated with the profile. displayName: type: string description: An identifiable profile name to display in Visier. For example, "Partner Service Manager". capabilities: type: array items: $ref: '#/components/schemas/servicing.CapabilitiesDTO' description: A list of objects representing the access that this profile has for the capabilities of this profile. additionalCapabilities: type: array items: type: string description: A list of the additional capabilities that are assigned to this profile. servicing.ProfilesGetAPIResponseDTO: type: object properties: profiles: type: array items: $ref: '#/components/schemas/servicing.ProfileGetAPIResponseDTO' description: A list of objects representing the available profiles. servicing.ProjectCommitsAPIResponseDTO: type: object properties: commits: type: array items: $ref: '#/components/schemas/servicing.CommitDTO' description: A list of committed changes in the project. servicing.ProjectDTO: type: object properties: id: type: string description: The unique ID of the project. Omit when creating a new project. name: type: string description: An identifiable project name to display in Visier. description: type: string description: A description of the project. releaseVersion: type: string description: The release version of the project. ticketNumber: type: string description: The change management ticket number of the project. versionNumber: type: integer description: The version number of the project. format: int32 capabilities: type: array items: enum: - canRead - canWrite - canShare - owner type: string format: enum description: "The current user's capabilities for the project. Users with `canWrite`, `canShare`, or `owner` capabilities can add and commit changes to the project.\n **canRead**: The project has been shared to the user with `View` access.\n **canWrite**: The project has been shared to the user with `Edit` access.\n **canShare**: The project has been shared to the user with `Share` access.\n **owner**: The user is the owner of the project.\n Omit when creating a new project." projectType: enum: - Standard - Prototype - UnknownType type: string description: The type of the project. Omit when creating a new project. format: enum servicing.ProjectOperationRequestDTO: type: object properties: operation: enum: - unknown - commitAndPublish type: string description: "The operation to perform on a draft project. Valid values:\n * `commitAndPublish`: Commits the requesting user's changes and publishes the draft project to production." format: enum servicing.ProjectOperationResponseDTO: type: object properties: commitAndPublish: allOf: - $ref: '#/components/schemas/servicing.CommitAndPublishOperationResponseDTO' description: The result of the `commitAndPublish` operation. servicing.PropertyAccessConfigDTO: type: object properties: propertyId: type: string description: The property ID associated with the property access configuration. analyticObjectId: type: string description: The analytic object ID of the property. analyticObjectReferencePaths: type: array items: type: string description: The path to the analytic object reference. Empty if the configuration is not a reference. accessLevel: enum: - None - Aggregate - Detailed type: string description: "The access level of the property. Valid values are: `Aggregate`, `Detailed`.\n * **Aggregate**: The property can only be accessed as part of an aggregate.\n * **Detailed**: The property can be accessed at a detailed level." format: enum propertyStatus: enum: - Unset - Valid - NoData - NotFound type: string description: "The property's validity status. Valid values: `Valid`, `NoData`, `NotFound`.\n * **Valid**: The object exists and has loaded data.\n * **NoData**: The object exists but doesn't have loaded data.\n * **NotFound**: The object doesn't exist." format: enum servicing.PropertySetConfigDTO: type: object properties: propertyAccessConfigs: type: array items: $ref: '#/components/schemas/servicing.PropertyAccessConfigDTO' description: The data access for a property. shareableDataAccessSet: allOf: - $ref: '#/components/schemas/servicing.ShareableDataAccessSet' description: A shareable data access set. Shareable data access sets may be linked in multiple permissions. servicing.ReducedErrorDTO: type: object properties: errorMessage: type: string description: A meaningful message for the end user. servicing.ReducedTenantCodeErrorDTO: type: object properties: tenantCode: type: string description: The bad tenant code. forAllChildren: type: boolean description: If true, the assignment is for all the analytic tenants of the specified tenant. error: allOf: - $ref: '#/components/schemas/servicing.ReducedErrorDTO' description: The details about the error. servicing.ReducedUserIdErrorDTO: type: object properties: userId: type: string description: The bad user ID. error: allOf: - $ref: '#/components/schemas/servicing.ReducedErrorDTO' description: The details about the error. servicing.RelatedAnalyticObjectDTO: type: object properties: analyticObjectId: type: string description: The analytic object ID. displayName: type: string description: An identifiable analytic object name to display in Visier, such as "Recognition". servicing.RevertPermissionsRequestDTO: type: object properties: permissionIds: type: array items: type: string description: The identifiers of the permissions to revert. servicing.RoleModulesConfigDTO: type: object properties: contentPackageIds: type: array items: type: string description: The unique IDs of the content packages assigned to the permission. servicing.SafeguardAPIResponseDTO: type: object properties: safeguardId: type: string description: The unique identifier of the safeguard. displayName: type: string description: The user-friendly display name for the safeguard. content: type: string description: The safeguard text that constrains Vee's behavior. customResponse: type: string description: The custom response text when a safeguard is triggered. userGroupIds: type: array items: type: string description: The user group IDs that the safeguard applies to. versionInformation: allOf: - $ref: '#/components/schemas/servicing.VersionInformationDTO' description: The object's version information. Version information is read-only. It indicates where the object originates from and whether the object has been modified in your tenant. description: Information about a Vee safeguard. servicing.SafeguardsAPIResponseDTO: type: object properties: safeguards: type: array items: $ref: '#/components/schemas/servicing.SafeguardAPIResponseDTO' description: A list of safeguards. description: The Vee safeguards. servicing.SecurableDimensionDTO: type: object properties: dimensionId: type: string description: The dimension ID. displayName: type: string description: An identifiable dimension name to display in Visier, such as "Contract Type". analyticObjectIds: type: array items: type: string description: A list of analytic object IDs. hierarchyProperties: type: array items: $ref: '#/components/schemas/servicing.HierarchyPropertyDTO' description: The list of hierarchies you can map to a user in a permission's dynamic filter. servicing.SecurablePropertyDTO: type: object properties: propertyId: type: string description: The property ID. displayName: type: string description: An identifiable property name to display in Visier, such as "Job Pay Level". analyticObjectId: type: string description: The property's analytic object ID. isPrimaryKey: type: boolean description: If true, this property is the analytic object's primary key. referenceSymbolName: type: string description: The reference symbol name. servicing.SettingsDTO: type: object properties: key: type: string description: The key of the configurable setting. singleConfigItem: allOf: - $ref: '#/components/schemas/servicing.SingleValueSettingDTO' description: A value containing a single string. multiValueConfigItem: allOf: - $ref: '#/components/schemas/servicing.MultiValueSettingDTO' description: A value containing multiple strings. description: The settings to configure a sidecar solution. servicing.ShareableDataAccessSet: type: object properties: dataAccessSetId: type: string description: The unique identifier of the shareable data access set. servicing.SidecarSolutionSettingsDTO: type: object properties: configs: type: array items: $ref: '#/components/schemas/servicing.SettingsDTO' description: The available configuration settings. applicationId: type: string description: The unique identifier of the solution to configure. description: The options to configure a sidecar solution. servicing.SingleValueSettingDTO: type: object properties: value: type: string description: A value containing a single string. description: A value containing a single string. servicing.SourceSecurityConfigDTO: type: object properties: sourceSecurityProfiles: type: array items: $ref: '#/components/schemas/servicing.SourceSecurityProfileDTO' description: The sources this permission grants access to. hasWriteAccessToAllSources: type: boolean description: If `true`, the permission grants the ability to create, read, update, and delete all sources. Default is `false`. servicing.SourceSecurityProfileDTO: type: object properties: sourceId: type: string description: The unique identifier of the source. Required to update source security. To retrieve source IDs, see `GET /v1/op/data-sources`. servicing.SourcesAPIOperationRequestDTO: type: object properties: operation: enum: - unknownSourcesAPIOperation - exportSources - cloneFilesIntoSource type: string description: "The operation to perform. Valid values:\n * `exportSources`: Export sources from the tenant. If successful, returns a ZIP file containing a compressed JSON file with the sources.\n * `cloneFilesIntoSource`: Clone a source's files into a different source. If successful, returns a receiving job ID. Use the job ID to monitor the cloning results." format: enum exportSourcesParameters: allOf: - $ref: '#/components/schemas/servicing.ExportSourcesParametersDTO' description: The parameters for the `exportSources` option. If neither parameter is specified, exports all sources. If both parameters are specified, exports the sources that match values from both parameters. cloneFilesIntoSourceParameters: allOf: - $ref: '#/components/schemas/servicing.CloneFilesIntoSourceParametersDTO' description: The parameters for the `cloneFilesIntoSource` option, such as the source to clone files from, the source to clone files into, and the date range of the files to clone. servicing.StaticDimensionFilterDTO: type: object properties: dimensionId: type: string description: The dimension ID associated with the filter. subjectReferencePath: type: array items: type: string description: The subject reference path. memberSelections: type: array items: $ref: '#/components/schemas/servicing.MemberSelectionDTO' description: A list of objects representing the dimension members assigned population access in the member filter. dimensionStatus: enum: - Unset - Valid - NoData - NotFound type: string description: "The dimension's validity status. Valid values: Valid, NoData, NotFound.\n * **Valid**: The object exists and has loaded data.\n * **NoData**: The object exists but doesn't have loaded data.\n * **NotFound**: The object doesn't exist." format: enum servicing.SuccessfulAccessibleTenantProfileAssignmentDTO: type: object properties: userId: type: string description: The user ID. tenantCode: type: string description: The tenant code. forAllChildren: type: boolean description: If true, the target assignment is for all analytic tenants. servicing.SuccessfulLocalTenantProfileAssignmentDTO: type: object properties: userId: type: string description: The user ID. servicing.TargetSecurityConfigDTO: type: object properties: targetSecurityForAll: allOf: - $ref: '#/components/schemas/servicing.TargetsForAllDataCategoriesDTO' description: The data security for targets in all data categories in the permission. targetSecurityProfiles: type: array items: $ref: '#/components/schemas/servicing.TargetsForDataCategoryDTO' description: The data security for targets in specific data categories in the permission. servicing.TargetTenantCodeDTO: type: object properties: tenantCode: type: string description: The tenant code. forAllChildren: type: boolean description: If true, the assignment is for all the analytic tenants of the specified tenant. servicing.TargetsForAllDataCategoriesDTO: type: object properties: accessToAllTargets: type: boolean description: If `true`, the permission grants access to all targets in all data categories. Default is `false`. targetIds: type: array items: type: string description: Distinct targets to grant access to. A target can be the name of an analytic object, parent-child dimension or multi-valued property. This value is ignored if `accessToAllTargets` is `true`. servicing.TargetsForDataCategoryDTO: type: object properties: dataCategoryId: type: string description: The unique identifier of the data category for which the target access definition applies. accessToAllTargets: type: boolean description: If `true`, the permission grants access to all targets in all data categories. Default is `false`. targetIds: type: array items: type: string description: Distinct targets to grant access to. A target can be the name of an analytic object, parent-child dimension or multi-valued property. This value is ignored if `accessToAllTargets` is `true`. servicing.TenantCodeErrorDTO: type: object properties: tenantCode: type: string description: The bad tenant code. forAllChildren: type: boolean description: If true, the target assignment is for all analytic tenants. error: allOf: - $ref: '#/components/schemas/servicing.ErrorDTO' description: The details about the error. servicing.UserCreationAPIRequestDTO: type: object properties: username: type: string description: The user's username. This is typically the user's email, such as john@visier.com. displayName: type: string description: An identifiable name to display within Visier. For example, "John Smith". employeeId: type: string description: If applicable, and if available, the user employee ID in the data. accountEnabled: type: string description: If false, the user account is disabled. email: type: string description: The user's email. This is used if the user's email is different from their username. For example, "john.doe@visier.com". servicing.UserGetAPIResponseDTO: type: object properties: userId: type: string description: The unique identifier associated with the user. username: type: string description: The user's username. This is typically the user's email, such as john@jupiter.com. displayName: type: string description: An identifiable name to display within Visier. For example, "John Smith". employeeId: type: string description: If applicable, and if available, the user employee ID in the data. accountEnabled: type: boolean description: If false, the user account is disabled. profiles: allOf: - $ref: '#/components/schemas/servicing.AllProfileAssignedForLocalTenantDTO' description: A list of objects representing the list of available profiles. Not returned if the user has no profiles. permissions: allOf: - $ref: '#/components/schemas/servicing.AllPermissionsAssignedForLocalTenantDTO' description: A list of objects representing the user's permissions. userGroups: allOf: - $ref: '#/components/schemas/servicing.AllUserGroupsAssignedForLocalTenantDTO' description: A list of objects representing the available user groups. lastLogin: allOf: - $ref: '#/components/schemas/servicing.LastLoginDTO' description: An object that represents the time that the user last logged into Visier. email: type: string description: The user's email address. servicing.UserGroupAssignedForLocalTenantDTO: type: object properties: userGroupId: type: string description: The user group ID. displayName: type: string description: An identifiable user group name to display in Visier, such as "Leadership User Group". servicing.UserIdErrorDTO: type: object properties: userId: type: string description: The bad user ID. error: allOf: - $ref: '#/components/schemas/servicing.ErrorDTO' description: The details about the error. servicing.UserPropertyDTO: type: object properties: name: type: string description: The name property to map to in the dynamic filter. Valid values are one of `username`, `email`, `employeeId`. servicing.UserUpdateAPIRequestDTO: type: object properties: displayName: type: string description: An identifiable name to display within Visier. For example, "John Smith". employeeId: type: string description: If applicable, and if available, the user employee ID in the data. accountEnabled: type: string description: If true, the user account is enabled. email: type: string description: The user's email address. username: type: string description: The user's username. This is typically the user's email, such as john@jupiter.com. If a user's username changes, they must authenticate using the new username. servicing.UserV3ApiRequestDTO: type: object properties: username: type: string description: The user's username. This is typically the user's email, such as john@jupiter.com. If a user's username changes, they must authenticate using the new username. displayName: type: string description: An identifiable name to display within Visier. For example, "John Smith". employeeId: type: string description: If applicable, and if available, the user employee ID in the data. accountEnabled: type: string description: If true, the user account is enabled. email: type: string description: The user's email address. userGroupIds: type: array items: type: string description: The user groups to assign to the user. permissionIds: type: array items: type: string description: The permissions to assign to the user. profileAssignments: type: array items: $ref: '#/components/schemas/servicing.ProfileAssignmentDTO' description: The profiles to assign to the user. description: The updates to make to a user, or the user to create. servicing.UserV3ApiResponseDTO: type: object properties: userId: type: string description: The unique identifier associated with the user. username: type: string description: The user's username. This is typically the user's email, such as john@jupiter.com. displayName: type: string description: An identifiable name to display within Visier. For example, "John Smith". employeeId: type: string description: If applicable, and if available, the user employee ID in the data. accountEnabled: type: string description: If true, the user account is enabled. email: type: string description: The user's email address. userGroupIds: type: array items: type: string description: The unique identifiers associated with each user groups. profileIds: type: array items: type: string description: The unique identifiers associated with each profile. permissionIds: type: array items: type: string description: The unique identifiers associated with each permission. description: The result of the update or insert (upsert) request. servicing.UsersAPIErrorMessageDTO: type: object properties: message: type: string description: Error message rci: type: string description: The unique identifier associated to this error servicing.UsersAPIFailureDTO: type: object properties: userId: type: string description: The unique identifier associated with the user. userName: type: string description: The user's username. This is typically the user's email, such as john@jupiter.com. displayName: type: string description: An identifiable name to display within Visier. For example, "John Smith". error: allOf: - $ref: '#/components/schemas/servicing.UsersAPIErrorMessageDTO' description: The error thrown during creation. servicing.UsersAPIResponseDTO: type: object properties: successes: type: array items: $ref: '#/components/schemas/servicing.UsersAPISuccessDTO' description: The users for which the request succeeded. failures: type: array items: $ref: '#/components/schemas/servicing.UsersAPIFailureDTO' description: The users for which the request failed. servicing.UsersAPISuccessDTO: type: object properties: userId: type: string description: The unique identifier associated with the user. username: type: string description: The user's username. This is typically the user's email, such as john@jupiter.com. displayName: type: string description: An identifiable name to display within Visier. For example, "John Smith". employeeId: type: string description: If applicable, and if available, the user employee ID in the data. accountEnabled: type: string description: If true, the user account is enabled. email: type: string description: The user's email address. servicing.UsersCreationAPIRequestDTO: type: object properties: users: type: array items: $ref: '#/components/schemas/servicing.UserCreationAPIRequestDTO' description: A list of objects representing users to create. Maximum 100 users can be created in a single request. servicing.UsersDeleteAPIRequestDTO: type: object properties: userIds: type: array items: type: string description: A list of objects representing users to delete. Maximum 100 users can be deleted in a single request. servicing.UsersUpdateAPIRequestDTO: type: object properties: users: type: array items: $ref: '#/components/schemas/servicing.UsersUpdateAPIUserDTO' description: A list of objects representing users to update. Maximum 100 users can be updated in a single request. servicing.UsersUpdateAPIUserDTO: type: object properties: userId: type: string description: The unique identifier associated with the user. displayName: type: string description: An identifiable name to display within Visier. For example, "John Smith". employeeId: type: string description: If applicable, and if available, the user employee ID in the data. accountEnabled: type: string description: If true, the user account is enabled. email: type: string description: The user's email address. username: type: string description: The user's username. This is typically the user's email, such as john@jupiter.com. If a user's username changes, they must authenticate using the new username. servicing.VersionInformationDTO: type: object properties: versionType: enum: - Unknown - BP - Tenant - TenantOverride - TenantShared - Draft type: string description: "Indicates where the object originates from and whether the object has been modified. Valid values:\n - `Unknown`: The source is not known.\n - `BP`: The object originates from Visier's Blueprint and is not changed at the tenant level.\n - `Tenant`: The object only exists in the tenant and doesn't exist in Visier's Blueprint.\n - `TenantOverride`: The object originates from Visier's Blueprint and is changed at the tenant level.\n - `TenantShared`: The object is non-versioned, only exists in the tenant and doesn’t exist in Visier's Blueprint, and is shareable with other users in the tenant.\n - `Draft`: The object only exists in the specified draft project." format: enum edited: type: string description: The UTC time of the latest change in ISO 8601 format. For example, `2023-10-01T12:00:00Z`. editor: type: string description: The user who made the latest change. description: The object's version information. Version information is read-only. It indicates where the object originates from and whether the object has been modified in your tenant. systemstatus.SystemStatusDTO: type: object properties: overall: type: string description: The overall status of Visier's platform and services. SourceImportResultSummaryDTO: type: object properties: created: type: integer description: The number of imported sources that were newly created in the target tenant. format: int32 updated: type: integer description: The number of imported sources that already existed and were updated in the target tenant. format: int32 ignored: type: integer description: The number of imported sources that already existed and were unchanged in the target tenant. format: int32 deleted: type: integer description: The number of imported sources that existed in the target tenant prior to the import and were deleted during the import. format: int32 SourcesAPIPutResponseDTO: type: object properties: summary: allOf: - $ref: '#/components/schemas/SourceImportResultSummaryDTO' description: The changes made to the sources during the operation. UserCreationAPIResponseDTO: type: object properties: userId: type: string description: The unique identifier associated with the user. username: type: string description: The user's username. This is typically the user's email, such as john@jupiter.com. displayName: type: string description: An identifiable name to display within Visier. For example, "John Smith". employeeId: type: string description: If applicable, and if available, the user employee ID in the data. accountEnabled: type: string description: If true, the user account is enabled. email: type: string description: The user's email address. ProjectCommitsAPIResponseDTO: type: object properties: commits: type: array description: A list of committed changes in the project. items: $ref: '#/components/schemas/ProjectCommitDTO' ProjectCommitDTO: type: object properties: id: type: string description: The unique ID of the committed change. name: type: string description: An identifiable name of the committed change to display in Visier. description: type: string description: A description of the committed change. Status: type: object properties: localizedMessage: type: string description: Localized error message describing the root cause of the error. code: type: string description: Error classification. message: type: string description: Not used. rci: type: string description: Optional root cause identifier. userError: type: boolean description: Indicates whether the error is a user error. description: The response structure for errors. securitySchemes: CookieAuth: type: apiKey name: VisierASIDToken in: cookie ApiKeyAuth: type: apiKey name: apikey in: header BearerAuth: type: http scheme: bearer OAuth2Auth: type: oauth2 flows: authorizationCode: authorizationUrl: /v1/auth/oauth2/authorize tokenUrl: /v1/auth/oauth2/token scopes: read: Grants read access write: Grants write access password: tokenUrl: /v1/auth/oauth2/token scopes: read: Grants read access write: Grants write access tags: - name: Projects description: Create projects, publish projects, and retrieve project details. - name: ProductionVersions x-displayName: Production Versions description: 'Use this API to retrieve information about data versions that were published to production. In Visier, production is the version of Visier available to your end users.' - name: UsersV3 x-displayName: Users V3 description: 'Manage users within an organization. Users V3 offers the ability to update or insert (upsert) a user. ' - name: UsersV2 x-displayName: Users V2 description: 'Manage users in bulk, such as creating, updating, and deleting many users.
**Tip:** Visier recommends that administrating tenant users focus primarily on managing users at the administrating tenant level. These users likely belong directly to your organization, such as customer support, customer value managers, account executives, and customer success. These users work with clients to manage their day-to-day solution needs.' - name: UserGroupsV2 x-displayName: User Groups V2 description: Manage user groups in Visier, such as creating, updating, and deleting user groups in bulk. - name: UsersV1 x-displayName: Users V1 description: 'Manage users within an organization, such as assigning permissions to users and retrieving user permission assignments and application logs.
**Tip:** Visier recommends that administrating tenant users focus primarily on managing users at the administrating tenant level. These users likely belong directly to your organization, such as customer support, customer value managers, account executives, and customer success. These users work with clients to manage their day-to-day solution needs' - name: Profiles description: Manage the profiles assigned to users, such as assigning or removing a profile from a list of users and retrieving profile details. Administrating tenant users can manage profiles at the administrating tenant level and analytic tenant level. - name: Permissions description: Manage permissions in Visier, such as retrieving the details of a permission, content package, or data access set, creating new permissions and data access sets, and updating or deleting permissions. To assign permissions to users, see Users V1. - name: TenantsV2 x-displayName: Tenants V2 description: "Create analytic tenants, deprovision tenants, retrieve tenant information, and update tenant information. Tenants V2 improves upon Tenants V1 in the following ways:\n * Programmatically assign a Home analysis to your analytic tenants.\n * Specify whether to merge or replace values when updating the details of an analytic tenant.\n * Specify the property fields to include in the response for GET requests." - name: TenantsV1 x-displayName: Tenants V1 description: Create analytic tenants, retrieve tenant information, and validate metric values. - name: ConsolidatedAnalytics x-displayName: Consolidated Analytics description: 'Manage your consolidated analytics (CA) tenants in Visier, such as retrieving the details of CA tenants, creating CA tenants, adding or deleting source tenants from CA tenants, and excluding sources from CA tenants.
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued. If you are interested in using this API, please contact your Customer Success Manager (CSM).' - name: Sources description: 'Export and import sources in Visier.
**Note:** This API is in **beta**. While in beta, APIs are interface-stable and implementation may change without notice. Rarely, interface changes may occur that are not backwards-compatible and require advance communication. If you are interested in using this API, please contact your Customer Success Manager (CSM).' - name: SystemStatus x-displayName: System Status description: Check the health and status of Visier's platform and services. - name: EmailDomains x-displayName: Email Domains description: 'Manage the list of user email address domains that are allowed in your tenant.
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued. If you are interested in using this API, please contact your Customer Success Manager (CSM).' - name: EncryptionKeys x-displayName: Encryption Keys description: 'Manage the encryption keys in your Visier tenant. Administrating tenants can specify the tenant in which to manage keys using the `TargetTenantID` header. For PGP keys, see `/v1/api/pgp-keys`.
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued. If you are interested in using this API, please contact your Customer Success Manager (CSM).' - name: NetworkSubnets x-displayName: Network Subnets description: 'Manage the IP addresses that can call Visier APIs.
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued. If you are interested in using this API, please contact your Customer Success Manager (CSM).' - name: SidecarSolutions x-displayName: Sidecar Solutions description: 'Manage your sidecar solution''s configuration. A sidecar solution is a unique solution built using the Visier platform, such as Smart Compensation. Use this API to retrieve the current settings, update the settings to new values, or delete existing settings.
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued. If you are interested in using this API, please contact your Customer Success Manager (CSM).' - name: ReleaseVersionConfiguration x-displayName: Release Versions description: 'Manage the Visier product release versions for your tenants.
**Note:** This API is available for Embedded Partners.
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued. If you are interested in using this API, please contact your Customer Success Manager (CSM).' - name: VeeConfiguration x-displayName: Vee Configuration description: 'Manage Vee v2 instructions and safeguards for a tenant. Instructions guide Vee''s behavior when responding to queries. Safeguards prevent Vee from responding to certain types of queries.
**Note:** This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued. If you are interested in using this API, please contact your Customer Success Manager (CSM).' security: - ApiKeyAuth: [] BearerAuth: [] - ApiKeyAuth: [] CookieAuth: [] - ApiKeyAuth: [] OAuth2Auth: [] x-tagGroups: - name: administration tags: - Projects - ProductionVersions - UsersV3 - UsersV2 - UserGroupsV2 - UsersV1 - Profiles - Permissions - TenantsV2 - TenantsV1 - ConsolidatedAnalytics - Sources - SystemStatus - EmailDomains - EncryptionKeys - NetworkSubnets - SidecarSolutions - ReleaseVersionConfiguration - VeeConfiguration