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