API Reference
Download OpenAPI specification:
Detailed API reference documentation for Visier APIs. Includes all endpoints, headers, path parameters, query parameters, request body schema, response schema, JSON request samples, and JSON response samples.
Request an authentication token through basic authentication. With basic authentication, use your username and password to request a secure token. The response returns an ASID token that you can use in your API calls.
Request a Visier authentication token
Generate a secure ASID token.
Authorizations:
Request Body schema: application/x-www-form-urlencodedrequired
Your username and password credentials to request an authentication token.
| username |
string
The unique identifier of the API user requesting a security token. |
| password |
string
The password that corresponds to the user making the request. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Request an impersonation token
Generate an impersonation token for the given username. The requesting user must have the Impersonator profile. The impersonated user must have the Read Impersonated or Write Impersonated profile. Supports impersonating users within the same tenant or in an analytic tenant by specifying TargetTenantID. After receiving the token, use the Cookie:VisierImpersonationToken header to make API requests as the impersonated user.
Authorizations:
queryParameters
| write |
boolean
If |
headerParameters
| TargetTenantID |
string
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. |
| TargetUsername |
string
The username of the user to impersonate. If provided in both the header and the request body, the header value takes precedence. |
Request Body schema: application/x-www-form-urlencodedrequired
Request to generate an impersonation token.
| TargetUsername |
string
The username of the user to impersonate. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Request an authentication token through OAuth 2.0 with Open ID Connect (OIDC). With OAuth 2.0 with OIDC, use an OAuth 2.0 grant to request an authentication token. The response returns a JSON Web Token (JWT) that you can use in your API calls.
Retrieve user metadata
Retrieve user-specific metadata, such as user ID, username, and profile capabilities.
Authorizations:
queryParameters
| includeTenantDetails |
boolean
If |
Responses
Response samples
- 200
- default
{- "sub": "string",
- "name": "string",
- "email": "string",
- "visier:user_id": "string",
- "visier:capabilities": {
- "capabilityGroups": [
- {
- "group": "unknown",
- "accessLevel": "NoAccess",
- "viewLevel": "Simple",
- "apiAccessLevel": "NoAccess",
- "apiViewLevel": "Simple"
}
]
}, - "visier:subnets": {
- "accessType": "Unknown",
- "subnets": [
- "string"
]
}, - "visier:export_subnets": {
- "accessType": "Unknown",
- "subnets": [
- "string"
]
}, - "visier:tenant_details": {
- "details": [
- {
- "tenantCode": "string",
- "displayName": "string",
- "properties": {
- "vanityUrlName": "string"
}
}
]
}, - "visier:tenant_id": "string"
}
Request an authorization code
Request an authorization code for the authorization_code grant type. Not required in other OAuth 2.0 grant types.
Authorizations:
queryParameters
| redirect_uri |
string
The optional URI to redirect to after authorization. |
| response_type
required
|
string
The response type. Must be |
| client_id
required
|
string
The unique identifier of the pre-registered client application. |
| scope |
string
The OAuth 2.0 scope of the authorization request. Default is |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Request a JSON Web Token
Use an OAuth 2.0 grant type to request a JWT.
Authorizations:
Request Body schema: application/x-www-form-urlencodedrequired
| grant_type |
string
The grant type. Supported values:
|
| client_id |
string
The unique identifier of the pre-registered client application. |
| client_secret |
string
The secret of the pre-registered client application. |
| redirect_uri |
string
The optional URI to redirect to after authorization. |
| code |
string
The authorization code. Applicable only for authorization code grant type. |
| username |
string
The username of the user to authenticate. Applicable only for password grant type. |
| password |
string
The password of the user to authenticate. Applicable only for password grant type. |
| asid_token |
string
The ASID token. Applicable only for ASID token grant type. |
| assertion |
string
The SAML assertion. Applicable only for saml2-bearer grant type. |
| refresh_token |
string
The refresh token. Applicable only for refresh_token grant type. |
Responses
Response samples
- 200
- default
{- "access_token": "string",
- "refresh_token": "string",
- "id_token": "string",
- "token_type": "string",
- "expires_in": 0
}
Use the Direct Data Intake API to load data directly into Visier objects. These objects can be delivered as part of Visier Blueprint, locally modified objects, or even completely custom objects. Objects must be released to production to receive data through the DDI API. You can load data into:
- Subjects
- Events
- Parent-child dimensions
- Multi-value properties
Retrieve the direct data intake configuration
Retrieve the direct data intake configuration.
Authorizations:
pathParameters
| draftId
required
|
string
The unique identifier of the project to load data into. Currently, the only supported value is |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "job": {
- "supplementalMode": "UNCHANGED",
- "extendObjects": [
- "string"
]
}
}
Update the direct data intake configuration
Configure the data intake settings, such as the direct data intake job type. Only provide values for settings that you want to change.
Settings that aren't present in the request body are ignored and remain unchanged.
Authorizations:
pathParameters
| draftId
required
|
string
The unique identifier of the project to load data into. Currently, the only supported value is |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
|
object
The direct data intake job configuration. |
Responses
Request samples
- Payload
{- "job": {
- "supplementalMode": "UNCHANGED",
- "extendObjects": [
- "string"
]
}
}
Response samples
- 200
- default
{- "job": {
- "supplementalMode": "UNCHANGED",
- "extendObjects": [
- "string"
]
}
}
Retrieve an object's data load schema
Retrieve the data load schema for an object. The load schema defines the required structure for uploading data files to the object.
Your data file must include column headers that match the schema exactly. Column names are case sensitive. Only columns with isMandatory set to true require values.
Authorizations:
pathParameters
| draftId
required
|
string
The unique identifier of the project to load data into. Currently, the only supported value is |
| objectName
required
|
string
The name of the object to return the load schema for. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "schema": [
- {
- "name": "string",
- "dataType": "string",
- "formats": [
- "string"
], - "isMandatory": true,
- "emptyValuesAllowed": true
}
]
}
Retrieve open transactions
Retrieve all open transactions. Doesn't return committed or rolled back transactions.
Authorizations:
pathParameters
| draftId
required
|
string
The unique identifier of the project to retrieve open transactions from. Currently, the only supported value is |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "transactions": [
- {
- "tenantCode": "string",
- "transactionId": "string",
- "created": "string",
- "updated": "string",
- "status": "string"
}
]
}
Start a transaction
Start a transaction to contain your data files. You can then upload files to objects in Visier.
After starting a transaction and uploading files, commit the transaction to process the files. You can also roll back the transaction to discard the files.
Authorizations:
pathParameters
| draftId
required
|
string
The unique identifier of the project to load data into. Currently, the only supported value is |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "transactionId": "string"
}
Retrieve transaction status
Retrieve the job status for a committed transaction.
Authorizations:
pathParameters
| draftId
required
|
string
The unique identifier of the project to load data into. Currently, the only supported value is |
| transactionId
required
|
string
The unique identifier of the transaction. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "tenantCode": "string",
- "transactionId": "string",
- "jobId": "string",
- "status": "string",
- "message": "string"
}
Commit a transaction
Process a transaction and its uploaded data files. This starts a processing job to load the files into Visier.
After committing a transaction, you can't upload more files to it. Monitor the job status using GET /v1/data/directloads/{draftId}/transactions/{transactionId}.
Authorizations:
pathParameters
| draftId
required
|
string
The unique identifier of the project to load data into. Currently, the only supported value is |
| transactionId
required
|
string
The unique identifier of the transaction. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "transactionId": "string",
- "status": "string",
- "message": "string"
}
Roll back a transaction
Roll back a transaction. This deletes the transaction and discards all uploaded files.
After rolling back a transaction, you can't use it to upload data files.
Authorizations:
pathParameters
| draftId
required
|
string
The unique identifier of the project to load data into. Currently, the only supported value is |
| transactionId
required
|
string
The unique identifier of the transaction. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "transactionId": "string",
- "status": "string",
- "message": "string"
}
Load sample data
Load sample data in an open transaction. Visier doesn't process data until you commit the transaction. Sample data is available for employee, employee_exit, employment_start, and organization_hierarchy.
Authorizations:
pathParameters
| draftId
required
|
string
The unique identifier of the project to load data into. Currently, the only supported value is |
| transactionId
required
|
string
The unique identifier of the transaction. |
| objectName
required
|
string
The object name of the analytic object to load sample data into. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| sampleName |
string
The name of the target object to load sample data. Sample data is available for:
|
Responses
Request samples
- Payload
{- "sampleName": "string"
}
Response samples
- 200
{- "transactionId": "string",
- "status": "string",
- "message": "string"
}
Upload files
Send upload files to a previously-created transaction. Each upload file is associated with a target object in Visier. The files are not processed in Visier until you commit the transaction.
Authorizations:
pathParameters
| draftId
required
|
string
The unique identifier of the project to load data into. Currently, the only supported value is |
| transactionId
required
|
string
The unique identifier of the transaction to load data files into. |
| objectName
required
|
string
The name of the object to upload the data to. If uploading data to a multi-value property (MVP), specify the property in |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: multipart/form-data
| file |
string <binary>
The file to upload. |
Responses
Response samples
- 200
- default
{- "transactionId": "string",
- "status": "string",
- "message": "string"
}
Send raw or untransformed data to Visier. After we receive the data, Visier runs business rules to transform your data into the expected format for the existing mappings.
Note: This API is in limited availability. If you are interested in using it, please contact your Customer Success Manager (CSM).
Retrieve sources
Retrieve target sources before transferring data. Sources store data and map it to the Visier data model.
Contact Visier Customer Success to set up new sources. Query this endpoint to list available sources, schemas, and required fields.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "sources": [
- {
- "sourceId": "string",
- "name": "string",
- "columns": [
- {
- "columnName": "string",
- "dataType": "string",
- "dataFormats": [
- "string"
], - "isMandatory": true,
- "allowEmpty": true,
- "defaultValue": "string"
}
], - "isInherited": true,
- "objectName": "string",
- "fileNameRegex": "string"
}
]
}
Start a transfer session
Start a transfer session. Transfer sessions contain one or more record batches sent as JSON or file payloads.
For optimal performance, include all record batches in one transfer session.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "transferSessionId": "string"
}
Transfer data to sources via JSON
Transfer record batches to Visier. Provide data as a comma-separated array with headers in the first row. Include header rows in all subsequent requests.
Each request transfers a batch to one source. Transfer sessions support multiple batches before completion.
Use sequence numbers to track and identify delivery issues across batches.
Batch limits:
- Batch size: 10 MB
- Record count: 300,000 rows
Authorizations:
pathParameters
| transferSessionId
required
|
string
The unique identifier of the transfer session. |
queryParameters
| sourceId |
string
The unique identifier of the source to transfer data to. |
| sequence |
integer <uint32>
The unique sequence number of a batch of records. |
| tenantCode |
string
The code of the tenant to transfer data to. For example, |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
Responses
Request samples
- Payload
"string"
Response samples
- 200
- default
{- "transferSessionId": "string",
- "sequence": 0,
- "status": "string",
- "message": "string",
- "tenants": [
- {
- "tenantCode": "string",
- "status": "string",
- "sources": [
- {
- "sourceId": "string",
- "sourceName": "string",
- "dataSize": "string",
- "rows": "string",
- "status": "string",
- "message": "string"
}
]
}
]
}
Cancel a transfer session
Cancel an active transfer session. Cancelled sessions don't persist data in Visier.
Start a new session and resend all data if you cancel a transfer.
Cancel sessions when:
- A batch request fails.
- Data records are incomplete.
- Infrastructure errors occur.
Authorizations:
pathParameters
| transferSessionId
required
|
string
The unique identifier of the transfer session to cancel. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "message": "string",
- "transferSessionId": "string",
- "dataTransferResultDetails": [
- {
- "tenantCode": "string",
- "sourceNames": [
- "string"
], - "dataSize": "string",
- "rows": "string"
}
], - "status": "string"
}
Complete a transfer session
Complete a transfer session and start a receiving job. The receiving job validates data and adds it to the Visier data store.
Optionally trigger a processing job immediately after completion to generate a data version.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| transferSessionId |
string
The unique identifier of the transfer session. |
| processingData |
boolean
If |
Responses
Request samples
- Payload
{- "transferSessionId": "string",
- "processingData": true
}
Response samples
- 200
- default
{- "dataReceivingJobId": "string",
- "message": "string",
- "transferSessionId": "string",
- "dataTransferResultDetails": [
- {
- "tenantCode": "string",
- "sourceNames": [
- "string"
], - "dataSize": "string",
- "rows": "string"
}
], - "status": "string"
}
Transfer data to sources via file upload
Upload data to Visier as CSV or ZIP files. Each request transfers a single file. If the data intended for Visier is stored in multiple files, you may compress them into a single ZIP file or make multiple requests within the same transfer session.
File size limit: 3 GB
Each file is identified by a sequence number. Sequence numbers help identify any batches that were delivered incorrectly.
If you define a specific source in the request, all files within the request will target the declared source. If a source is not defined, the filenames are matched against the source regex to correctly assign each file to a source. To find out the source regex, please contact Visier Customer Success.
Note: If you include files that should target multiple sources in one ZIP file, do not define a source in the request.
Analytic tenants: For optimal transfer speed, provide one ZIP file per source. Administrating tenants: For optimal transfer speed, provide one ZIP file containing all the required data files for your analytic tenants. In the ZIP file, use one folder per analytic tenant. The ZIP file must adhere to the following file structure:
File1.zip
- Folder1: WFF_tenantCode1
- Filename1.csv
- Filename2.csv
- Folder2: WFF_tenantCode2
- Filename3.csv
- Filename4.csv
Authorizations:
pathParameters
| transferSessionId
required
|
string
The transfer session ID returned after the data transfer session starts. |
queryParameters
| sourceId |
string
The unique identifier associated with the source you want to transfer data to. |
| sequence |
string
The unique sequence number associated with a batch of records. |
| tenantCode |
string
The code of the tenant you want to transfer data to. For example, |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: multipart/form-datarequired
| file |
string <binary>
The file to upload in CSV or ZIP format. |
Responses
Response samples
- 200
- default
{- "transferSessionId": "string",
- "sequence": 0,
- "status": "string",
- "message": "string",
- "tenants": [
- {
- "tenantCode": "string",
- "status": "string",
- "sources": [
- {
- "sourceId": "string",
- "sourceName": "string",
- "dataSize": "string",
- "rows": "string",
- "status": "string",
- "message": "string"
}
]
}
]
}
Initiate and manage jobs, included or excluded data, and data connector credentials. Administrating tenant users can manage jobs and data for their analytic tenants.
Retrieve data connector credentials
Retrieve data connector credentials for a tenant. Connector credentials allow Visier to fetch data from source systems.
Authorizations:
queryParameters
| tenantCode |
string
The tenant code of a specific analytic tenant to retrieve for. |
| limit |
integer <int32>
The maximum number of items to return. Default is 100. |
| start |
integer <int32>
The starting index of the first result to return. Default is 0. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "connectorCredentials": [
- {
- "credentialId": "string",
- "displayName": "string",
- "dataProvider": "string",
- "isInherited": true,
- "authContext": "string"
}
], - "limit": 0,
- "start": 0
}
Create a connector credential
Create credentials for a data connector. Connector credentials allow Visier to retrieve data from your source systems through an integration user in the source system.
Specify one provider in dataProviderAuthParams. Example UKG request body:
{
model={"dataProviderAuthParams": {"provider": "UKG","ultimateAuthParams": {"hostDomainName": "exampleHostDomain","apiKey": "apiKey1234","username": "username1234","password": "password1234","userAccessKey": "accessKey1234"}},"dataProviderBasicInformation": {"displayName": "exampleDisplayName","description": "exampleDescription"}}}
Authorizations:
queryParameters
| tenantCode |
string
The tenant code of a specific analytic tenant to create the credential for. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
|
object
The authentication information for the credential. |
|
|
object
The display name and description for the credential. |
|
|
object (designer.DataProviderBasicMetadataDTO)
|
Responses
Request samples
- Payload
{- "dataProviderAuthParams": {
- "tenantDomainName": "string",
- "provider": "Bamboo",
- "bambooAuthParams": {
- "accessKey": "string",
- "tenantDomainName": "string"
}, - "greenhouseAuthParams": {
- "apiKey": "string"
}, - "googleSheetsAuthParams": {
- "authCode": "string",
- "configuration": "string",
- "clientId": "string",
- "clientSecret": "string"
}, - "jiraAuthParams": {
- "apiToken": "string",
- "hostName": "string",
- "connectParams": {
- "appKey": "string",
- "clientKey": "string",
- "sharedSecret": "string"
}, - "cloudId": "string",
- "email": "string"
}, - "leverAuthParams": {
- "apiKey": "string"
}, - "namelyAuthParams": {
- "authCode": "string"
}, - "qualtricsAuthParams": {
- "apiToken": "string",
- "dataCenterId": "string"
}, - "salesforceAuthParams": {
- "refreshToken": "string",
- "clientId": "string"
}, - "ultimateAuthParams": {
- "hostDomainName": "string",
- "apiKey": "string",
- "username": "string",
- "password": "string",
- "userAccessKey": "string"
}, - "workdayAuthParams": {
- "userId": "string",
- "domainName": "string",
- "implementationName": "string",
- "password": "string",
- "oAuth": {
- "apiClientId": "string",
- "publicX509Cert": "string",
- "privateX509Key": "string"
}, - "refToken": {
- "apiClientId": "string",
- "clientSecret": "string",
- "refreshToken": "string"
}, - "integrationSystemId": "string",
- "additionalHeaderParams": [
- {
- "key": "string",
- "value": "string"
}
]
}, - "icimsAuthParams": {
- "customerId": "string",
- "username": "string",
- "password": "string",
- "clientId": "string",
- "clientSecret": "string",
- "region": "US"
}, - "serviceNowAuthParams": {
- "hostDomainName": "string",
- "username": "string",
- "password": "string"
}, - "jdbcAuthParams": {
- "jdbcConnectString": "string",
- "username": "string",
- "password": "string"
}, - "s3AuthParams": {
- "bucketName": "string",
- "bucketRegion": "string",
- "accessKey": "string",
- "secretKey": "string",
- "path": "string"
}, - "internalS3AuthParams": {
- "bucketName": "string",
- "path": "string"
}, - "copyS3AuthParams": {
- "iamRole": "string"
}, - "redshiftAuthParams": {
- "endpoint": "string",
- "port": "string",
- "database": "string",
- "username": "string",
- "password": "string",
- "tablePrefix": "string",
- "schema": "string"
}, - "snowflakeAuthParams": {
- "accountIdentifier": "string",
- "database": "string",
- "schema": "string",
- "username": "string",
- "password": "string",
- "warehouse": "string",
- "privateKey": "string"
}, - "bigQueryAuthParams": {
- "projectId": "string",
- "datasetLocation": "string",
- "refreshToken": "string",
- "clientId": "string",
- "clientSecret": "string",
- "defaultDataset": "string",
- "serviceAccountParams": {
- "serviceAccountEmail": "string",
- "privateKey": "string"
}
}, - "sqlServerAuthParams": {
- "host": "string",
- "port": "string",
- "username": "string",
- "password": "string",
- "database": "string",
- "schema": "string"
}, - "dimensionsAuthParams": {
- "appKey": "string",
- "clientId": "string",
- "clientSecret": "string",
- "vanityUrl": "string",
- "username": "string",
- "password": "string"
}, - "willowAuthParams": {
- "apiToken": "string",
- "hostName": "string"
}, - "emptyAuthParams": { },
- "successFactorsAuthParams": {
- "hostDomainName": "string",
- "companyID": "string",
- "username": "string",
- "password": "string",
- "oAuth": {
- "apiKey": "string",
- "privateX509Key": "string",
- "publicX509Cert": "string"
}
}, - "fusionAuthParams": {
- "username": "string",
- "password": "string",
- "hostDomainName": "string"
}, - "adpAuthParams": {
- "authCode": "string"
}, - "medalliaAuthParams": {
- "tenantDomainName": "string",
- "instanceUrl": "string",
- "clientId": "string",
- "clientSecret": "string"
}, - "salesforceV2AuthParams": {
- "authCode": "string",
- "clientId": "string",
- "clientSecret": "string",
- "loginHost": "string"
}, - "gongAuthParams": {
- "clientId": "string",
- "clientSecret": "string"
}, - "zoomAuthParams": {
- "authCode": "string",
- "clientId": "string",
- "clientSecret": "string"
}, - "dayforceV2AuthParams": {
- "username": "string",
- "password": "string",
- "companyId": "string",
- "tokenHost": "string",
- "hostDomainName": "string"
}, - "slackAuthParams": {
- "authCode": "string",
- "clientId": "string",
- "clientSecret": "string"
}, - "mySqlAuthParams": {
- "host": "string",
- "port": "string",
- "username": "string",
- "password": "string",
- "database": "string",
- "sslMode": "string"
}, - "workdayRaasAuthParams": {
- "userId": "string",
- "domainName": "string",
- "implementationName": "string",
- "password": "string",
- "testReportUrl": "string"
}, - "ms365AuthParams": {
- "oAuthTenantId": "string",
- "clientId": "string",
- "clientSecret": "string",
- "privacyMode": "string"
}, - "googleWorkspaceAuthParams": {
- "authCode": "string",
- "clientId": "string",
- "clientSecret": "string",
- "serviceAccount": "string",
- "privacyMode": "string"
}, - "oracleDbAuthParams": {
- "host": "string",
- "port": "string",
- "username": "string",
- "password": "string",
- "serviceName": "string"
}, - "serviceNowV2AuthParams": {
- "hostDomainName": "string",
- "clientId": "string",
- "clientSecret": "string",
- "authCode": "string",
- "alternateDomain": "string"
}, - "databricksAuthParams": {
- "shareCredentialsVersion": "string",
- "bearerToken": "string",
- "endpoint": "string",
- "expirationTime": "string",
- "tenantCodeColumn": "string"
}, - "echoAuthParams": {
- "vanityName": "string",
- "targetTenantID": "string",
- "apiKey": "string",
- "basicAuth": {
- "username": "string",
- "password": "string",
- "asidToken": "string"
}, - "oAuth": {
- "clientId": "string",
- "clientSecret": "string",
- "authCode": "string",
- "accessToken": "string",
- "refreshToken": "string",
- "expireTimestamp": "string"
}
}, - "snowflakeV2AuthParams": {
- "accountIdentifier": "string",
- "database": "string",
- "schema": "string",
- "username": "string",
- "password": "string",
- "warehouse": "string",
- "privateKey": "string",
- "role": "string",
- "tenantCodeColumn": "string"
}, - "sseAuthParams": {
- "endpoint": "string",
- "username": "string",
- "password": "string",
- "streamName": "string"
}, - "cdkAuthParams": {
- "dockerImage": "string",
- "connectorConfigJson": "string"
}, - "vivaGlintAuthParams": {
- "tenantId": "string",
- "clientId": "string",
- "clientSecret": "string",
- "clientName": "string"
}, - "databricksOidcAuthParams": {
- "clientId": "string",
- "clientSecret": "string",
- "tokenEndpoint": "string",
- "endpoint": "string",
- "scope": "string",
- "tenantCodeColumn": "string"
}, - "hasUpdates": true,
- "authContext": "DefaultDataExtraction",
- "sourceType": "UnVersioned"
}, - "dataProviderBasicInformation": {
- "displayName": "string",
- "description": "string"
}, - "dataProviderMetadata": {
- "canChildrenInherit": true
}
}
Response samples
- 200
- default
{- "uuid": "string",
- "symbolName": "string",
- "objectName": "string",
- "missingConnectionProperties": [
- {
- "subject": "Employee",
- "attributes": [
- "string"
], - "errorMessage": "string"
}
]
}
Retrieve data connectors
Retrieve data connectors for a tenant. Data connectors connect and extract the raw data directly from your source systems, subsequently transforming and processing it within the Visier platform. Data connectors are an alternative to generating flat files and transferring them to Visier via SFTP.
Authorizations:
queryParameters
| tenantCode |
string
The tenant code of a specific analytic tenant to retrieve for. |
| limit |
integer <int32>
The maximum number of items to return. Default is 100. |
| start |
integer <int32>
The starting index of the first result to return. Default is 0. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "dataConnectors": [
- {
- "connectorId": "string",
- "displayName": "string",
- "credentialId": "string"
}
], - "limit": 0,
- "start": 0
}
Assign connector credentials
Assign a connector credential to a data connector.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
|
Array of objects (data_in.Connector)
The data connectors to be assigned with credentials. |
Responses
Request samples
- Payload
{- "connectors": [
- {
- "connectorId": "string",
- "tenants": [
- {
- "tenantCode": "string",
- "credentialId": "string"
}
]
}
]
}
Response samples
- 200
- default
{- "tenants": [
- {
- "tenantCode": "string",
- "connectors": [
- {
- "connector": {
- "connectorId": "string",
- "displayName": "string",
- "description": "string"
}, - "credential": {
- "credentialId": "string",
- "displayName": "string",
- "message": "string"
}
}
], - "status": "Unknown",
- "message": "string"
}
]
}
Retrieve data connector settings
Retrieve settings for all production data connectors in the tenant. The response returns a list of settings, if available, for each data connector in the tenant.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "connectors": [
- {
- "connectorId": "string",
- "displayName": "string",
- "connectorSettings": [
- {
- "settingKey": "string",
- "value": "string"
}
]
}
]
}
Update data connector settings
Configure settings for data connectors. To retrieve the available settings, see GET /v1/op/data-connectors/connector-settings.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
|
Array of objects (admin.SetConnectorSettingRequestDTO)
The settings to define for each data connector and tenant. |
Responses
Request samples
- Payload
{- "connectors": [
- {
- "connectorId": "string",
- "tenants": [
- {
- "tenantCode": "string",
- "connectorSettings": [
- {
- "settingKey": "string",
- "value": "string"
}
]
}
]
}
]
}
Response samples
- 200
- default
{- "tenants": [
- {
- "tenantCode": "string",
- "connectors": [
- {
- "connector": {
- "connectorId": "string",
- "displayName": "string",
- "description": "string"
}, - "settings": [
- {
- "key": "string",
- "value": "string",
- "message": "string"
}
]
}
], - "status": "Unknown",
- "message": "string"
}
]
}
Retrieve the latest enabled data versions
Retrieve up to five of the latest enabled data versions for all analytic tenants or a single tenant. Use this endpoint to locate data versions that cause validation inconsistencies.
Authorizations:
queryParameters
| tenantCode |
string
The tenant code of a specific analytic tenant to retrieve data versions for. Use this if you're only interested in the results for one analytic tenant. |
| limit |
integer <int32>
The maximum number of analytic tenants to return. Default is 100. |
| start |
integer <int32>
The starting index of the first result to return. Default is 0. |
| numberOfVersions |
integer <int32>
The number of latest enabled data versions to retrieve. Maximum is 5. |
| dataCategory |
string
The object name of the data category. Default is the primary data category.
For administrating tenants, the data category must exist in the requesting tenant; that is, the administrating tenant or the tenant specified in |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "tenants": [
- {
- "tenantCode": "string",
- "dataVersions": [
- {
- "dataVersion": "string",
- "dataVersionDate": "string"
}
]
}
], - "limit": 0,
- "start": 0
}
Disable data versions
Disable the latest enabled data versions for specific analytic tenants or disable a specific data version per tenant.
Note: Disabling an older data version might not affect solution state.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
|
object
A form body key that contains a collection of key-value pairs. |
Responses
Request samples
- Payload
{- "model": {
- "dataVersionObjects": [
- {
- "tenantCode": "string",
- "dataVersion": "string",
- "dataCategory": "string"
}
]
}
}
Response samples
- 200
- default
{- "totalFailures": 0,
- "totalSuccess": 0,
- "results": [
- {
- "jobId": "string",
- "dataVersion": "string",
- "tenantCode": "string",
- "status": "string",
- "message": "string"
}
]
}
Retrieve data categories
Retrieve all available data categories.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "categories": [
- {
- "name": "string",
- "id": "string",
- "objectName": "string"
}
]
}
Trigger data connector extraction jobs
Start data connector extraction jobs for the administrating tenant or selected analytic tenants.
This endpoint creates a dispatching job that generates one extraction job per tenant. Use the returned dispatching job ID to track extraction job statuses using GET /v1/op/jobs/dispatching-jobs/{jobId}/extraction-jobs.
Extraction jobs generate receiving jobs to validate data and processing jobs to load data. Monitor job statuses using GET /v1/op/jobs/dispatching-jobs/{jobId}/receiving-jobs or GET /v1/op/jobs/dispatching-jobs/{jobId}/processing-jobs.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| tenants |
Array of strings
A list of analytic tenants to dispatch extraction jobs for. One extraction job is dispatched per tenant. Only valid for requests from an administrating tenant. |
| allTenants |
boolean
If |
| overrideLastExtractionTimestamp |
string
An epoch timestamp in milliseconds from which to retrieve data. This overrides the last extraction date to retrieve more data. |
| publishDataLoadArtifacts |
boolean
If |
| runProcessingJob |
boolean
If |
| dataCategoryId |
string
The unique identifier of the data category on which to trigger the extraction job. Default is the tenant's primary data category. |
| disableArtifactGeneration |
boolean
If |
| connectorIds |
Array of strings
The unique identifiers of the connectors to run extraction jobs. |
| lastExtractionTimeOffsetWeeks |
integer <int32>
The number of weeks in the past to retrieve data. This overrides the last extraction date to retrieve more data. |
| monthsToExtract |
integer <int32>
The number of months to retrieve snapshot data. |
| extractToTimeOverride |
string
An epoch timestamp in milliseconds for the end time up to which to retrieve data. |
| batchSizeOverride |
integer <int32>
The maximum number of subjects the job can retrieve in each batch. |
| sqlBatchSize |
integer <int32>
The maximum number of SQL table records the job can retrieve in each batch. |
| forceUpdateExistingArtifacts |
boolean
If |
| excludedTenants |
Array of strings
The unique identifiers of the tenants to exclude from the extraction job. Only valid if |
| spillDebugInfoPartitionsDTO |
string <enum>
Enum: "spillNone" "spillStagesAndRecords" "spillAll" The partitioning of debugging info to be generated, if any. Valid values:
|
| spillDebugInfoDetailLevelDTO |
string <enum>
Enum: "fileAndLine" "mappingName" The detail level of the debugging info to be generated. Valid values:
|
| lastExtractionTimeOffsetMonths |
integer <int32>
The number of months to offset the last extraction time. This overrides the last extraction date backward to retrieve more data. |
| lastExtractionTimeOffsetMode |
string
The mode used to offset the last extraction time. Valid values: |
| offsetWeekOption |
string
The week options used to offset the last extraction time. Valid values: |
| offsetMonthOption |
string
The month options used to offset the last extraction time. Valid values: |
| credentialId |
string
If running a job for the Databricks connector, specify the unique identifier of the connector credentials to use. |
| outputTarget |
string
The output of the extraction. Default is
|
Responses
Request samples
- Payload
{- "tenants": [
- "string"
], - "allTenants": true,
- "overrideLastExtractionTimestamp": "string",
- "publishDataLoadArtifacts": true,
- "runProcessingJob": true,
- "dataCategoryId": "string",
- "disableArtifactGeneration": true,
- "connectorIds": [
- "string"
], - "lastExtractionTimeOffsetWeeks": 0,
- "monthsToExtract": 0,
- "extractToTimeOverride": "string",
- "batchSizeOverride": 0,
- "sqlBatchSize": 0,
- "forceUpdateExistingArtifacts": true,
- "excludedTenants": [
- "string"
], - "spillDebugInfoPartitionsDTO": "spillNone",
- "spillDebugInfoDetailLevelDTO": "fileAndLine",
- "lastExtractionTimeOffsetMonths": 0,
- "lastExtractionTimeOffsetMode": "string",
- "offsetWeekOption": "string",
- "offsetMonthOption": "string",
- "credentialId": "string",
- "outputTarget": "string"
}
Response samples
- 200
- default
{- "JobId": "string"
}
Start the data load for analytic tenants
Start the data load process for analytic tenants included in uploaded SFTP files. Returns a receiving job ID.
Use the job ID to track the receiving job and spawned processing job statuses.
Prerequisite: Use a PGP public key to upload encrypted, compressed data files (.zip.gpg) to the Visier SFTP server.
Generate PGP keys using the PGP Keys API or in Visier under Settings > Manage PGP Keys.
Note:
- View data load status details in the Jobs room in a project.
- Limit uncompressed batch file sizes to 5 GB and 5000 tenants per batch.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
|
object
A form body key that contains a collection of key-value pairs. |
Responses
Request samples
- Payload
{- "model": {
- "files": [
- "string"
], - "skipDataLoad": true
}
}
Response samples
- 200
- default
{- "jobId": "string"
}
Retrieve data uploads
Retrieve data uploads and their inclusion status for managed tenants, a single tenant, or a receiving job.
Authorizations:
queryParameters
| uploadJobId |
string
The unique identifier of the upload job. Use this if you are interested in the data uploads for a specific upload job. |
| tenantCode |
integer <int32>
The tenant code of a specific analytic tenant to retrieve the data uploads for. |
| limit |
integer <int32>
The maximum number of analytic tenants to retrieve data uploads for. Not used if |
| start |
integer <int32>
The starting index of the first result to return. Default is 0. |
| numberOfDataUploads |
integer <int32>
The maximum number of latest enabled data uploads to retrieve for each analytic tenant. Default is 1. Maximum is 5. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "tenants": [
- {
- "tenantCode": "string",
- "uploads": [
- {
- "uploadTime": "string",
- "included": true
}
]
}
], - "limit": 0,
- "start": 0
}
Exclude data uploads
Exclude specified data uploads or all data uploads for analytic tenants.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
|
Array of objects (data_in.UploadToExclude)
The data uploads to exclude for a particular analytic tenant. |
Responses
Request samples
- Payload
{- "uploads": [
- {
- "tenantCode": "string",
- "excludeAll": true,
- "uploadTimes": [
- "string"
], - "minUploadTime": "string",
- "maxUploadTime": "string",
- "sources": [
- "string"
], - "fileNameRegex": "string",
- "fileIdentifiers": [
- "string"
]
}
]
}
Response samples
- 200
- default
{- "totalFailures": 0,
- "totalSuccess": 0,
- "uploads": [
- {
- "tenantCode": "string",
- "uploadTime": "string",
- "status": "string",
- "message": "string"
}
]
}
Include data uploads
Include specified data uploads or all data uploads for analytic tenants.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
|
Array of objects (data_in.UploadToInclude)
The data uploads to include for a particular analytic tenant. |
Responses
Request samples
- Payload
{- "uploads": [
- {
- "tenantCode": "string",
- "includeAll": true,
- "uploadTimes": [
- "string"
], - "minUploadTime": "string",
- "maxUploadTime": "string",
- "sources": [
- "string"
], - "fileNameRegex": "string",
- "fileIdentifiers": [
- "string"
]
}
]
}
Response samples
- 200
- default
{- "totalFailures": 0,
- "totalSuccess": 0,
- "uploads": [
- {
- "tenantCode": "string",
- "uploadTime": "string",
- "status": "string",
- "message": "string"
}
]
}
Retrieve all job statuses
Retrieve the statuses for all jobs.
Authorizations:
queryParameters
| startTime |
string
The start time from which to retrieve job statuses. |
| endTime |
string
The end time from which to retrieve job statuses. |
| status |
string
The specific status to restrict the list of jobs to. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "queryStartTime": "string",
- "queryEndTime": "string",
- "jobStatus": [
- {
- "jobId": "string",
- "tenant": "string",
- "status": "string",
- "jobType": "string",
- "startTime": "string",
- "parentJobId": "string"
}
]
}
Cancel jobs
Cancel processing, receiving, and extraction jobs.
Note: You can't cancel receiving jobs with Running status.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| jobIds |
Array of strings
A list of jobs to cancel. Maximum is 500. |
Responses
Request samples
- Payload
{- "jobIds": [
- "string"
]
}
Response samples
- 200
- default
{- "jobCancellationResults": [
- {
- "tenantCode": "string",
- "jobId": "string",
- "jobType": "string",
- "parentJobId": "string",
- "cancelStatus": "CANCEL_FAILED",
- "jobStatus": "string",
- "message": "string"
}
]
}
Retrieve a dispatching job's status
Retrieve a dispatching job's status, including the job ID and generated jobs count.
Authorizations:
pathParameters
| jobId
required
|
string
The unique identifier of the job to retrieve. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "jobId": "string",
- "tenantCode": "string",
- "status": "string",
- "totalJobsDispatched": 0
}
Retrieve extraction job statuses by dispatching job ID
Retrieve extraction job statuses associated with a parent dispatching job.
Authorizations:
pathParameters
| jobId
required
|
string
The unique identifier of the dispatching job to retrieve. |
queryParameters
| dispatchingJobId |
string
The unique identifier of the dispatching job that generated the extraction jobs. |
| tenantCode |
string
The tenant code of a specific analytic tenant to retrieve the extraction job status for. Use this if you're only interested in the results for one analytic tenant. |
| limit |
integer <int32>
The maximum number of extraction job statuses to return. Default is 100. |
| start |
integer <int32>
The starting index of the first result to return. Default is 0. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "parentJobId": "string",
- "parentTenantCode": "string",
- "limit": 0,
- "start": 0,
- "extractionJobs": [
- {
- "extractionJobId": "string",
- "tenantCode": "string",
- "status": "string",
- "currentStage": "string"
}
]
}
Retrieve processing job statuses by dispatching job ID
Retrieve processing job statuses associated with a parent dispatching job.
Authorizations:
pathParameters
| jobId
required
|
string
The unique identifier of the dispatching job to retrieve. |
queryParameters
| dispatchingJobId |
string
The unique identifier of the dispatching job that generated the extraction jobs. |
| tenantCode |
string
The tenant code of a specific analytic tenant to retrieve the extraction job status for. Use this if you're only interested in the results for one analytic tenant. |
| limit |
integer <int32>
The maximum number of extraction job statuses to return. Default is 100. |
| start |
integer <int32>
The starting index of the first result to return. Default is 0. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "parentJobId": "string",
- "parentTenantCode": "string",
- "limit": 0,
- "start": 0,
- "processingJobs": [
- {
- "jobId": "string",
- "tenantCode": "string",
- "dataVersion": "string",
- "status": "string",
- "message": "string"
}
]
}
Retrieve receiving job statuses by dispatching job ID
Retrieve receiving job statuses associated with a parent dispatching job.
Authorizations:
pathParameters
| jobId
required
|
string
The unique identifier of the dispatching job to retrieve. |
queryParameters
| dispatchingJobId |
string
The unique identifier of the dispatching job that generated the extraction jobs. |
| tenantCode |
string
The tenant code of a specific analytic tenant to retrieve the extraction job status for. Use this if you're only interested in the results for one analytic tenant. |
| limit |
integer <int32>
The maximum number of extraction job statuses to return. Default is 100. |
| start |
integer <int32>
The starting index of the first result to return. Default is 0. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "parentJobId": "string",
- "parentTenantCode": "string",
- "limit": 0,
- "start": 0,
- "receivingJobs": [
- {
- "receivingJobId": "string",
- "tenantCode": "string",
- "status": "string"
}
]
}
Retrieve processing job statuses by receiving job ID
Retrieve processing job statuses associated with a receiving job ID.
Processing jobs run data loads for individual analytic tenants. They are triggered manually or spawned from receiving jobs. When spawned from a receiving job, a parent ID associates the receiving job with the processing job.
Authorizations:
pathParameters
| receivingJobId
required
|
string
The unique identifier of the receiving job. |
queryParameters
| tenantCode |
string
The tenant code of the tenant to retrieve the processing jobs for. Use this if you're only interested in the results for one analytic tenant. |
| limit |
integer <int32>
The maximum number of processing jobs to return per page. Default is 100. |
| start |
integer <int32>
The starting index of the first result to return. Default is 0. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "parentJobId": "string",
- "parentTenantCode": "string",
- "limit": 0,
- "start": 0,
- "processingJobs": [
- {
- "jobId": "string",
- "tenantCode": "string",
- "dataVersion": "string",
- "status": "string",
- "message": "string"
}
]
}
Retrieve a receiving job's status
Retrieve a receiving job's status after sending data to Visier. Receiving jobs validate and store transferred data. A successful response indicates that the receiving job was successful.
Set jobs to true to return status details for spawned processing jobs.
Authorizations:
pathParameters
| receivingJobId
required
|
string
The job ID provided after sending data to Visier. |
queryParameters
| jobs |
boolean
If |
| tenantCode |
string
The tenant code of the tenant to retrieve the receiving jobs for. Use this if you're only interested in the results for one analytic tenant. |
| start |
integer <int32>
The starting index of the first result to return. Default is 0. |
| limit |
integer <int32>
The maximum number of job statuses to return per page. Default is 100. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "jobId": "string",
- "status": "string",
- "parentJobId": "string",
- "parentTenantCode": "string",
- "receivingJobs": [
- {
- "receivingJobId": "string",
- "tenantCode": "string",
- "status": "string"
}
]
}
Retrieve a receiving job's files
Retrieve the files sent to Visier by a receiving job. You must know the ID of the receiving job to retrieve its files. To retrieve receiving job IDs, see GET /v1/op/job-status/jobs.
Authorizations:
pathParameters
| jobId
required
|
string
The unique identifier of the receiving job. |
queryParameters
| fileNameRegex |
string
The regular expression to match the file names of the files to retrieve. The regex must be URL-encoded; for example, the regular expression |
| limit |
integer <int32>
The maximum number of files to return across tenants. Default is 500. Maximum is 1000. |
| start |
integer <int32>
The starting index of the first file to return. Default is 0. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "receivingJobId": "string",
- "tenants": [
- {
- "tenantCode": "string",
- "extractedFiles": [
- {
- "uploadTime": "string",
- "filename": "string",
- "identifier": "string",
- "sourceId": "string",
- "sourceObjectName": "string",
- "included": true
}
]
}
]
}
Retrieve analytic tenant source files
Retrieve uploaded files for your tenants' sources. The default is to return files for all analytic tenants. Use TargetTenantID to retrieve files for one tenant. Optionally filter files using a filename regex. The response returns details of each source's files, including upload time, filename, and whether the file is included during data version generation.
Authorizations:
queryParameters
| fileNameRegex |
string
The regular expression to match the file names of the source files to retrieve. The regex must be URL-encoded; for example, the regular expression |
| limit |
integer <int32>
The maximum number of source files to return. Default is 500. Maximum is 1000. |
| start |
integer <int32>
The starting index of the first source file to return. Default is 0. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "tenantCode": "string",
- "sourceFiles": [
- {
- "uploadTime": "string",
- "filename": "string",
- "identifier": "string",
- "sourceId": "string",
- "sourceObjectName": "string",
- "included": true
}
]
}
Run a consolidated analytics job
Run a job for a consolidated analytics tenant to retrieve source tenant data.
Set runProcessingJob to true in the request body to generate a data version for the consolidated analytics tenant.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| tenantCode |
string
The tenant code of the consolidated analytics tenant; for example, |
| runProcessingJob |
boolean
If |
Responses
Request samples
- Payload
{- "tenantCode": "string",
- "runProcessingJob": true
}
Response samples
- 200
- default
{- "jobId": "string"
}
Run a data connector extraction job
Run an extraction job using a Visier data connector to generate a new data version. Administrating tenants can run extraction jobs for all analytic tenants, selected tenants, or the administrating tenant.
Running extraction jobs for multiple tenants starts a dispatching job that generates one extraction job per tenant. Returns the extraction job ID or dispatching job ID.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| tenants |
Array of strings
A list of analytic tenants to dispatch extraction jobs for. One extraction job is dispatched per tenant. Only valid for requests from an administrating tenant. |
| allTenants |
boolean
If |
| overrideLastExtractionTimestamp |
string
An epoch timestamp in milliseconds from which to retrieve data. This overrides the last extraction date to retrieve more data. |
| publishDataLoadArtifacts |
boolean
If |
| runProcessingJob |
boolean
If |
| dataCategoryId |
string
The unique identifier of the data category on which to trigger the extraction job. Default is the tenant's primary data category. |
| disableArtifactGeneration |
boolean
If |
| connectorIds |
Array of strings
The unique identifiers of the connectors to run extraction jobs. |
| lastExtractionTimeOffsetWeeks |
integer <int32>
The number of weeks in the past to retrieve data. This overrides the last extraction date to retrieve more data. |
| monthsToExtract |
integer <int32>
The number of months to retrieve snapshot data. |
| extractToTimeOverride |
string
An epoch timestamp in milliseconds for the end time up to which to retrieve data. |
| batchSizeOverride |
integer <int32>
The maximum number of subjects the job can retrieve in each batch. |
| sqlBatchSize |
integer <int32>
The maximum number of SQL table records the job can retrieve in each batch. |
| forceUpdateExistingArtifacts |
boolean
If |
| excludedTenants |
Array of strings
The unique identifiers of the tenants to exclude from the extraction job. Only valid if |
| spillDebugInfoPartitionsDTO |
string <enum>
Enum: "spillNone" "spillStagesAndRecords" "spillAll" The partitioning of debugging info to be generated, if any. Valid values:
|
| spillDebugInfoDetailLevelDTO |
string <enum>
Enum: "fileAndLine" "mappingName" The detail level of the debugging info to be generated. Valid values:
|
| lastExtractionTimeOffsetMonths |
integer <int32>
The number of months to offset the last extraction time. This overrides the last extraction date backward to retrieve more data. |
| lastExtractionTimeOffsetMode |
string
The mode used to offset the last extraction time. Valid values: |
| offsetWeekOption |
string
The week options used to offset the last extraction time. Valid values: |
| offsetMonthOption |
string
The month options used to offset the last extraction time. Valid values: |
| credentialId |
string
If running a job for the Databricks connector, specify the unique identifier of the connector credentials to use. |
| outputTarget |
string
The output of the extraction. Default is
|
Responses
Request samples
- Payload
{- "tenants": [
- "string"
], - "allTenants": true,
- "overrideLastExtractionTimestamp": "string",
- "publishDataLoadArtifacts": true,
- "runProcessingJob": true,
- "dataCategoryId": "string",
- "disableArtifactGeneration": true,
- "connectorIds": [
- "string"
], - "lastExtractionTimeOffsetWeeks": 0,
- "monthsToExtract": 0,
- "extractToTimeOverride": "string",
- "batchSizeOverride": 0,
- "sqlBatchSize": 0,
- "forceUpdateExistingArtifacts": true,
- "excludedTenants": [
- "string"
], - "spillDebugInfoPartitionsDTO": "spillNone",
- "spillDebugInfoDetailLevelDTO": "fileAndLine",
- "lastExtractionTimeOffsetMonths": 0,
- "lastExtractionTimeOffsetMode": "string",
- "offsetWeekOption": "string",
- "offsetMonthOption": "string",
- "credentialId": "string",
- "outputTarget": "string"
}
Response samples
- 200
- default
{- "jobId": "string"
}
Run a processing job
Run a processing job to generate a new data version. Administrating tenants can run jobs for all analytic tenants, selected tenants, or the administrating tenant.
Running jobs for multiple tenants starts a dispatching job that generates one processing job per tenant. Returns the processing job ID or dispatching job ID.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| tenants |
Array of strings
The tenant codes of the tenants to run processing jobs for. If omitted, runs a processing job for the tenant associated with the user who made the API request. Only valid for requests from an administrating tenant. |
| allTenants |
boolean
If |
| dataCategoryId |
string
The unique identifier of the data category to run the job. If omitted, runs a job using the primary data category.
To retrieve a list of all data categories, see |
| publishToProduction |
boolean
If |
| excludedTenants |
Array of strings
The unique IDs of the tenants to exclude from the extraction job. Only valid if |
Responses
Request samples
- Payload
{- "tenants": [
- "string"
], - "allTenants": true,
- "dataCategoryId": "string",
- "publishToProduction": true,
- "excludedTenants": [
- "string"
]
}
Response samples
- 200
- default
{- "jobId": "string"
}
Delete a connector credential
Use this endpoint to delete connector credentials from your tenants. Credentials that are no longer valid should be deleted.
Authorizations:
pathParameters
| id
required
|
string
The |
queryParameters
| tenantCode |
string
The tenant code of the analytic tenant in which the credential you're deleting. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
"string"
Retrieve a job's status
Use this endpoint to retrieve the list of statuses for a specific job with ID jobId.
Authorizations:
pathParameters
| jobId
required
|
string
The unique identifier of the job to retrieve the status for. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
[- {
- "jobId": "string",
- "tenant": "string",
- "status": "string",
- "jobType": "string",
- "startTime": "string",
- "parentJobId": "string"
}
]
The Pretty Good Privacy (PGP) Keys API generates key pairs and provides a public key to encrypt data that you send to Visier. PGP encryption adds an additional layer of security against data disclosure.
After you generate a key pair and retrieve the public encryption key, you can encrypt your data files before sending them to Visier. When Visier receives files encrypted with the public key, we retrieve the associated private key to decrypt and process the file.
Retrieve PGP public keys
Retrieve all PGP public keys in your tenant.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "keys": [
- {
- "keyID": "string",
- "dateGenerated": "string",
- "expiryDate": "string",
- "recipient": "string",
- "publicKey": "string"
}
]
}
Download a public encryption key
Generate a PGP key pair and retrieve the public encryption key.
Set key expiration in UTC using ISO 8601 format in the request body. Expiration must be between 2 and 10 years. Default is 2 years.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| expirationDate |
string
The UTC expiration date of the key in ISO 8601 format. Must be between 2 and 10 years. Default is 2 years. |
Responses
Request samples
- Payload
{- "expirationDate": "string"
}
Response samples
- 200
- default
{- "keyID": "string",
- "dateGenerated": "string",
- "expiryDate": "string",
- "recipient": "string",
- "publicKey": "string"
}
Retrieve a PGP public key
Retrieve a PGP public key using its key ID. You must know the ID of a key to retrieve its details. To retrieve key IDs, see GET /v1/api/pgp-keys.
Authorizations:
pathParameters
| keyID
required
|
string
The unique identifier of the generated key pair in 16-letter hexadecimal format, including leading zeros. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "keyID": "string",
- "dateGenerated": "string",
- "expiryDate": "string",
- "recipient": "string",
- "publicKey": "string"
}
Delete a PGP key pair
Delete a PGP key pair using its key ID.
Authorizations:
pathParameters
| keyID
required
|
string
The unique identifier of the generated key pair in 16-letter hexadecimal format, including leading zeros. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "keyID": "string"
}
Send data files to Visier. After we receive the data, Visier starts a receiving job and a processing job to process the data.
Upload a data file to Visier
Use this endpoint to upload data files to Visier. You can upload ZIP, CSV, XLS, and XLSX filetypes in plaintext or encrypted with Visier's PGP key.
Use of this endpoint requires client redirect. This endpoint redirects requests directly to Visier's upload infrastructure to support long-running uploads. To ensure efficient uploading, we recommend that you use an HTTP client that supports the 100 Continue status code.
The maximum file upload size is 500 MB. We recommend using SFTP for larger file sizes.
Authorizations:
pathParameters
| filename
required
|
string
The filename of the data file to upload, including the file extension such as .zip or .csv. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: */*
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Use row-based management for your source data in Visier. The Table Source API supports direct SQL-based data modifications, eliminating concerns about file management or override behavior. Use the API to create, modify, and delete tables. Use SQL statements to query, insert, update, delete, and merge data into tables with transactions. You can reference the tables by mappings, just like other sources, to load data into an analytic object in a data version.
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.
Retrieve table sources
Retrieve table source configurations. Table sources are SQL-accessible tables that store data in Visier.
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).
Authorizations:
queryParameters
| limit |
integer <int32>
The maximum number of table sources to return. Default is 100. |
| start |
integer <int32>
The starting index of the first result to return. Default is 0. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "tables": [
- {
- "uuid": "string",
- "objectName": "string",
- "basicInformation": {
- "displayName": "string",
- "shortDisplayName": "string",
- "description": "string",
- "explanation": "string",
- "designerNotes": "string",
- "synonymList": {
- "synonyms": [
- "string"
]
}
}, - "columns": [
- {
- "name": "string",
- "dataType": "UNSPECIFIED",
- "isPrimaryTimestamp": true
}
], - "canChildrenInherit": true,
- "canChildrenInheritData": true,
- "excludeFromAutoProcessing": true,
- "snapshotRetentionDays": 0,
- "materializedView": {
- "enabled": true,
- "query": "string",
- "dependencies": [
- {
- "upstreamTable": "string",
- "joinFilter": "string"
}
]
}, - "filterInheritedDataByTenant": true
}
]
}
Create a table source
Create a table source configuration to define table structure and metadata.
Assign a unique object name. Don't set a UUID because Visier generates UUIDs for new objects.
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).
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| uuid |
string
The unique identifier for the table. This UUID is generated automatically when the table is created and cannot be changed. Do not provide a value when creating a new table. |
| objectName |
string
The object name for the table. This determines the name of the table accessible from SQL. |
|
object
Fields that identify and describe the table, such as its display name, description, and explanation. |
|
|
Array of objects (servicing.sqlsource.SqlSourceColumnDTO)
The columns contained within the table. |
|
| canChildrenInherit |
boolean
If |
| canChildrenInheritData |
boolean
If |
| excludeFromAutoProcessing |
boolean
If |
| snapshotRetentionDays |
integer <int32>
The number of days to keep snapshots for this table before permanently deleting them. Must be between 1 and 180 days. Default is 7 days. You cannot reset the table to a timestamp older than the retention period because older snapshots are permanently deleted. |
|
object
The configuration options for a materialized view. Omit or set |
|
| filterInheritedDataByTenant |
boolean
If |
Responses
Request samples
- Payload
{- "uuid": "string",
- "objectName": "string",
- "basicInformation": {
- "displayName": "string",
- "shortDisplayName": "string",
- "description": "string",
- "explanation": "string",
- "designerNotes": "string",
- "synonymList": {
- "synonyms": [
- "string"
]
}
}, - "columns": [
- {
- "name": "string",
- "dataType": "UNSPECIFIED",
- "isPrimaryTimestamp": true
}
], - "canChildrenInherit": true,
- "canChildrenInheritData": true,
- "excludeFromAutoProcessing": true,
- "snapshotRetentionDays": 0,
- "materializedView": {
- "enabled": true,
- "query": "string",
- "dependencies": [
- {
- "upstreamTable": "string",
- "joinFilter": "string"
}
]
}, - "filterInheritedDataByTenant": true
}
Response samples
- 200
- default
{- "uuid": "string",
- "objectName": "string",
- "basicInformation": {
- "displayName": "string",
- "shortDisplayName": "string",
- "description": "string",
- "explanation": "string",
- "designerNotes": "string",
- "synonymList": {
- "synonyms": [
- "string"
]
}
}, - "columns": [
- {
- "name": "string",
- "dataType": "UNSPECIFIED",
- "isPrimaryTimestamp": true
}
], - "canChildrenInherit": true,
- "canChildrenInheritData": true,
- "excludeFromAutoProcessing": true,
- "snapshotRetentionDays": 0,
- "materializedView": {
- "enabled": true,
- "query": "string",
- "dependencies": [
- {
- "upstreamTable": "string",
- "joinFilter": "string"
}
]
}, - "filterInheritedDataByTenant": true
}
Retrieve a table source
Retrieve a table source configuration by unique identifier. To retrieve table source UUIDs, see GET /v1alpha/data/table-sources/tables.
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).
Authorizations:
pathParameters
| tableId
required
|
string
The unique identifier of the table source. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "uuid": "string",
- "objectName": "string",
- "basicInformation": {
- "displayName": "string",
- "shortDisplayName": "string",
- "description": "string",
- "explanation": "string",
- "designerNotes": "string",
- "synonymList": {
- "synonyms": [
- "string"
]
}
}, - "columns": [
- {
- "name": "string",
- "dataType": "UNSPECIFIED",
- "isPrimaryTimestamp": true
}
], - "canChildrenInherit": true,
- "canChildrenInheritData": true,
- "excludeFromAutoProcessing": true,
- "snapshotRetentionDays": 0,
- "materializedView": {
- "enabled": true,
- "query": "string",
- "dependencies": [
- {
- "upstreamTable": "string",
- "joinFilter": "string"
}
]
}, - "filterInheritedDataByTenant": true
}
Update a table source
Update a table source configuration to modify its structure, columns, or metadata.
PUT requests replace existing definitions. Provide the complete object definition in the request body. Omitted fields are removed from the table source.
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).
Authorizations:
pathParameters
| tableId
required
|
string
The unique identifier of the table source to update. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| uuid |
string
The unique identifier for the table. This UUID is generated automatically when the table is created and cannot be changed. Do not provide a value when creating a new table. |
| objectName |
string
The object name for the table. This determines the name of the table accessible from SQL. |
|
object
Fields that identify and describe the table, such as its display name, description, and explanation. |
|
|
Array of objects (servicing.sqlsource.SqlSourceColumnDTO)
The columns contained within the table. |
|
| canChildrenInherit |
boolean
If |
| canChildrenInheritData |
boolean
If |
| excludeFromAutoProcessing |
boolean
If |
| snapshotRetentionDays |
integer <int32>
The number of days to keep snapshots for this table before permanently deleting them. Must be between 1 and 180 days. Default is 7 days. You cannot reset the table to a timestamp older than the retention period because older snapshots are permanently deleted. |
|
object
The configuration options for a materialized view. Omit or set |
|
| filterInheritedDataByTenant |
boolean
If |
Responses
Request samples
- Payload
{- "uuid": "string",
- "objectName": "string",
- "basicInformation": {
- "displayName": "string",
- "shortDisplayName": "string",
- "description": "string",
- "explanation": "string",
- "designerNotes": "string",
- "synonymList": {
- "synonyms": [
- "string"
]
}
}, - "columns": [
- {
- "name": "string",
- "dataType": "UNSPECIFIED",
- "isPrimaryTimestamp": true
}
], - "canChildrenInherit": true,
- "canChildrenInheritData": true,
- "excludeFromAutoProcessing": true,
- "snapshotRetentionDays": 0,
- "materializedView": {
- "enabled": true,
- "query": "string",
- "dependencies": [
- {
- "upstreamTable": "string",
- "joinFilter": "string"
}
]
}, - "filterInheritedDataByTenant": true
}
Response samples
- 200
- default
{- "uuid": "string",
- "objectName": "string",
- "basicInformation": {
- "displayName": "string",
- "shortDisplayName": "string",
- "description": "string",
- "explanation": "string",
- "designerNotes": "string",
- "synonymList": {
- "synonyms": [
- "string"
]
}
}, - "columns": [
- {
- "name": "string",
- "dataType": "UNSPECIFIED",
- "isPrimaryTimestamp": true
}
], - "canChildrenInherit": true,
- "canChildrenInheritData": true,
- "excludeFromAutoProcessing": true,
- "snapshotRetentionDays": 0,
- "materializedView": {
- "enabled": true,
- "query": "string",
- "dependencies": [
- {
- "upstreamTable": "string",
- "joinFilter": "string"
}
]
}, - "filterInheritedDataByTenant": true
}
Delete a table source
Delete a table source configuration. This deletes table definitions but preserves stored data.
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).
Authorizations:
pathParameters
| tableId
required
|
string
The unique identifier of the table source. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Retrieve table source metadata
Retrieve stored metadata for a table source, such as the key-value pairs to apply to the table if you commit the transaction. Store metadata using setMetadata in POST /v1alpha/data/table-sources/transactions/{transactionId}/jobs.
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).
Authorizations:
pathParameters
| tableId
required
|
string
The unique identifier of the table source for which to retrieve metadata. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "tableId": "string",
- "transactionId": "string",
- "metadata": {
- "property1": "string",
- "property2": "string"
}, - "recordCount": "string",
- "recordsUpdatedAt": "string",
- "dataFilesSizeBytes": "string"
}
Regenerate a materialized view
Run a SQL job to manually refresh the dataset during troubleshooting, query updates, or when manual data fetching is required.
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).
Authorizations:
pathParameters
| tableId
required
|
string
The unique identifier of the table source. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| tableId |
string
The unique identifier of the table source. |
Responses
Request samples
- Payload
{- "tableId": "string"
}
Response samples
- 200
- default
{- "jobId": "string",
- "tableAccess": {
- "read": [
- "string"
], - "write": [
- "string"
]
}, - "transactionId": "string"
}
Start a transaction
Start a transaction for SQL operations. Transactions isolate operations and support rollback capabilities.
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).
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| expireAfterSeconds |
integer <int32>
The number of seconds that the transaction is open before rolling back and the number of seconds that query results are available. |
| tablesToModify |
Array of strings
The tables to modify in the transaction. If unspecified, the transaction is read-only. You cannot add tables to modify after creating the transaction. After a job starts running, the tables are locked for the duration of the transaction to prevent concurrent writes. Each tenant has independent locks; there is no cross-tenant locking. |
Responses
Request samples
- Payload
{- "expireAfterSeconds": 0,
- "tablesToModify": [
- "string"
]
}
Response samples
- 200
- default
{- "transactionId": "string",
- "status": "UNSPECIFIED",
- "createdAt": "string",
- "createdBy": "string",
- "expireAt": "string",
- "startedAt": "string",
- "closedAt": "string",
- "tablesToModify": [
- "string"
], - "children": [
- {
- "tenantCode": "string",
- "status": "UNSPECIFIED",
- "startedAt": "string",
- "closedAt": "string"
}
], - "summary": {
- "open": 0,
- "resolving": 0,
- "committed": 0,
- "rolledBack": 0
}
}
Retrieve transaction status
Retrieve a transaction's status and details. Dispatched transactions return each analytic tenant's transaction status details in children.
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).
Authorizations:
pathParameters
| transactionId
required
|
string
The unique identifier of the transaction. |
queryParameters
| summaryOnly |
boolean
If |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "transactionId": "string",
- "status": "UNSPECIFIED",
- "createdAt": "string",
- "createdBy": "string",
- "expireAt": "string",
- "startedAt": "string",
- "closedAt": "string",
- "tablesToModify": [
- "string"
], - "children": [
- {
- "tenantCode": "string",
- "status": "UNSPECIFIED",
- "startedAt": "string",
- "closedAt": "string"
}
], - "summary": {
- "open": 0,
- "resolving": 0,
- "committed": 0,
- "rolledBack": 0
}
}
Extend transaction expiry
Extend an open transaction's expiry time.
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).
Authorizations:
pathParameters
| transactionId
required
|
string
The unique identifier of the transaction to extend. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| expireAfterSeconds |
integer <int32>
The number of seconds that the transaction is open before rolling back and the number of seconds that query results are available. |
Responses
Request samples
- Payload
{- "expireAfterSeconds": 0
}
Response samples
- 200
- default
{- "transactionId": "string",
- "status": "UNSPECIFIED",
- "createdAt": "string",
- "createdBy": "string",
- "expireAt": "string",
- "startedAt": "string",
- "closedAt": "string",
- "tablesToModify": [
- "string"
], - "children": [
- {
- "tenantCode": "string",
- "status": "UNSPECIFIED",
- "startedAt": "string",
- "closedAt": "string"
}
], - "summary": {
- "open": 0,
- "resolving": 0,
- "committed": 0,
- "rolledBack": 0
}
}
Upload an input file to a transaction
Upload input files to a transaction. SQL jobs query input files as temporary local views. For example, the input file can contain data to insert into your sources, IDs to match against to change or delete rows, or any other input for your SQL query.
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).
Authorizations:
pathParameters
| transactionId
required
|
string
The unique identifier of the transaction. |
| filename
required
|
string
The name of the file to upload. The input will be accessible with this filename during job execution. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: multipart/form-data
| file |
string <binary>
The input file to upload. The file is accessible during SQL job execution as a temporary view using the provided filename. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Run a SQL job within a transaction
Execute a SQL job within a transaction. Jobs execute SQL operations including queries, inserts, updates, deletes, and merge operations.
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).
Authorizations:
pathParameters
| transactionId
required
|
string
The unique identifier of the transaction. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
|
Array of objects (servicing.sqlsource.SqlSourceActionDTO)
The actions to execute within the job, in order. |
|
| tenants |
Array of strings
The tenants to schedule the job for. If this field isn't specified and a distribution mode is set, the job dispatches to the tenants detected from the input data. If this field isn't specified and no distribution mode is set, the job runs for the current tenant only. |
|
Array of objects (servicing.sqlsource.SqlSourceInputDTO)
The input files to make available to the job. |
|
| keepTransactionOpenOnError |
boolean
If |
|
Array of objects (servicing.sqlsource.SqlSourceJobPreconditionDTO)
The precondition requirements to execute the job. If any precondition isn't met, the job fails with an error. To set metadata to use for preconditions, use the |
Responses
Request samples
- Payload
{- "actions": [
- {
- "query": {
- "query": "string",
- "timeoutSeconds": 0,
- "output": {
- "format": {
- "csv": {
- "header": true
}, - "parquet": { }
}, - "filename": "string"
}, - "rollbackOnEmpty": true
}, - "upsert": {
- "source": "string",
- "target": "string",
- "keys": [
- "string"
]
}, - "replace": {
- "source": "string",
- "target": "string"
}, - "rollback": { },
- "commit": { },
- "process": {
- "projectId": "string",
- "versionId": "string",
- "dataCategoryIds": [
- "string"
], - "deferTimeNotAfter": "string"
}, - "setMetadata": {
- "table": "string",
- "metadata": {
- "property1": "string",
- "property2": "string"
}, - "applyToUnmodifiedTenants": true
}, - "reset": {
- "table": "string",
- "asOfTimestamp": "string"
}
}
], - "tenants": [
- "string"
], - "inputs": [
- {
- "id": "string",
- "filename": "string",
- "format": {
- "csv": {
- "header": true
}, - "parquet": { }
}, - "tenantCodeColumn": "string",
- "prependAdminTenantCode": true,
- "inputDistributionMode": "NO_DISTRIBUTION",
- "fileContainerName": "string",
- "filenames": [
- "string"
]
}
], - "keepTransactionOpenOnError": true,
- "preconditions": [
- {
- "table": "string",
- "metadata": {
- "property1": "string",
- "property2": "string"
}
}
]
}
Response samples
- 200
- default
{- "jobId": "string",
- "tableAccess": {
- "read": [
- "string"
], - "write": [
- "string"
]
}, - "transactionId": "string"
}
Retrieve a job's status
Retrieve the status for a SQL job and child jobs. Use the job ID returned by POST /v1alpha/data/table-sources/transactions/{transactionId}/jobs.
Dispatched jobs include status details and aggregated summary counts per 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).
Authorizations:
pathParameters
| transactionId
required
|
string
The unique identifier of the transaction. |
| jobId
required
|
string
The unique identifier of the job. |
queryParameters
| summaryOnly |
boolean
If |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "status": "UNKNOWN",
- "summary": {
- "pending": 0,
- "running": 0,
- "succeeded": 0,
- "failed": 0
}, - "processingSummary": {
- "pending": 0,
- "running": 0,
- "succeeded": 0,
- "failed": 0
}, - "tenants": [
- {
- "tenantCode": "string",
- "status": "UNKNOWN",
- "message": "string",
- "processingJobIds": [
- "string"
], - "jobId": "string"
}
], - "jobId": "string"
}
Download a transaction's output file
Download an output file generated by a transaction SQL operation. Generate output files using the QUERY action and output parameter in POST /v1alpha/data/table-sources/transactions/{transactionId}/jobs.
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).
Authorizations:
pathParameters
| transactionId
required
|
string
The unique identifier of the transaction. |
| filename
required
|
string
The name of the file to download. This should be the filename specified in an output of an action during job execution. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
List output file parts
List parts of a multi-part output file. SQL operations generate output files inside transactions. Each part is a complete file indexed from 0. For an output with numberOfParts: 3, the part numbers are 0, 1, and 2. Download large files by part to optimize performance.
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).
Authorizations:
pathParameters
| transactionId
required
|
string
The unique identifier of the transaction. |
| filename
required
|
string
The name of the output file to list parts for. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "transactionId": "string",
- "filename": "string",
- "numberOfParts": 0
}
Download an output file part
Download a single part of a multi-part output file. Output parts are 0-indexed complete files generated by transaction SQL operations. For an output with numberOfParts: 3, the part numbers are 0, 1, and 2. Download large files by part to optimize performance.
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).
Authorizations:
pathParameters
| transactionId
required
|
string
The unique identifier of the transaction. |
| filename
required
|
string
The name of the output file to download a part of. |
| partIndex
required
|
integer <int32>
The zero-based index of the part to download. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Query aggregate data
Retrieve aggregated values from your data in Visier. Aggregations retrieve values over time, such as multiple months. Group and filter data in an aggregation query to retrieve detailed information.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
Request Body schema: application/jsonrequired
|
object
The data to perform an aggregation on, such as a metric or formula. The query must include a time interval, and may optionally include filters and axes. |
|
|
object
Additional instructions for your query, such as a calendar type or conversion information. |
Responses
Request samples
- Payload
{- "query": {
- "source": {
- "formula": "string",
- "metric": "string",
- "metrics": {
- "columns": [
- {
- "columnName": "string",
- "id": "string",
- "formula": "string",
- "qualifyingPath": "string"
}
]
}
}, - "filters": [
- {
- "formula": "string",
- "selectionConcept": {
- "name": "string",
- "qualifyingPath": "string"
}, - "memberSet": {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "values": {
- "included": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
], - "excluded": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
]
}
}, - "cohort": {
- "keyGroup": {
- "filters": [
- {
- "formula": "string",
- "selectionConcept": {
- "name": "string",
- "qualifyingPath": "string"
}, - "memberSet": {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "values": {
- "included": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
], - "excluded": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
]
}
}
}
]
}, - "exclude": true,
- "timeInterval": {
- "intervalPeriodType": "MONTH",
- "intervalPeriodCount": 0,
- "direction": "BACKWARD",
- "shift": {
- "periodType": "MONTH",
- "periodCount": 0,
- "direction": "BACKWARD"
}, - "fromInstant": "string"
}
}, - "advanced": {
- "filters": [
- { }
], - "operation": "UNSPECIFIED"
}
}
], - "axes": [
- {
- "formula": "string",
- "selectionConcept": {
- "name": "string",
- "qualifyingPath": "string"
}, - "dimensionMemberSelection": {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "members": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
]
}, - "memberMapSelection": {
- "memberMap": {
- "name": "string",
- "qualifyingPath": "string"
}, - "targetDimensionName": "string",
- "members": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
]
}, - "numericRanges": {
- "property": {
- "formula": "string",
- "property": {
- "name": "string",
- "qualifyingPath": "string"
}, - "selectionConcept": {
- "name": "string",
- "qualifyingPath": "string"
}, - "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "memberMapProperty": {
- "memberMap": {
- "name": "string",
- "qualifyingPath": "string"
}, - "targetDimensionName": "string"
}, - "effectiveDateProperty": { },
- "dimensionLevelSelection": {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "memberValueMode": "NAME",
- "levelId": "string",
- "levelDepth": 0
}
}, - "ranges": "string",
- "includeNegative": true,
- "includeIndependentZeroRange": true,
- "includeAllMember": true
}, - "dimensionLevelSelection": {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "levelIds": [
- "string"
], - "levelDepths": [
- 0
]
}, - "dimensionLeafMemberSelection": {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}
}, - "dimensionDataMemberSelection": {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}
}, - "dimensionLevelWithUncategorizedValueSelection": {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "levelIds": [
- "string"
], - "levelDepths": [
- 0
]
}, - "tableAxisOptions": {
- "memberDisplayMode": "UNCHANGED",
- "columnName": "string"
}, - "sortAndLimitOptions": {
- "sort": {
- "sortType": "CONFIGURED",
- "sortDirection": "SORT_ASCENDING"
}, - "limit": {
- "limitType": "FIRST_N",
- "n": 0,
- "showOthers": true
}
}
}
], - "timeIntervals": {
- "intervalPeriodType": "MONTH",
- "intervalPeriodCount": 0,
- "intervalCount": 0,
- "direction": "BACKWARD",
- "shift": {
- "periodType": "MONTH",
- "periodCount": 0,
- "direction": "BACKWARD"
}, - "trailingPeriodType": "MONTH",
- "trailingPeriodCount": 0,
- "fromInstant": "string"
}, - "parameterValues": [
- {
- "memberValue": {
- "parameterId": "string",
- "dimensionId": "string",
- "referencePath": [
- "string"
], - "values": {
- "included": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
], - "excluded": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
]
}
}, - "numericValue": {
- "parameterId": "string",
- "value": 0.1
}, - "planValue": {
- "parameterId": "string",
- "planId": "string",
- "scenarioId": "string",
- "snapshotId": "string"
}, - "aggregationTypeValue": {
- "parameterId": "string",
- "aggregationOptionId": "string"
}, - "subjectMemberSetValue": {
- "parameterId": "string",
- "keyNamePaths": [
- {
- "namePath": [
- "string"
]
}
], - "valueNamePaths": [
- {
- "namePaths": [
- {
- "namePath": [
- "string"
]
}
]
}
]
}
}
]
}, - "options": {
- "calendarType": "TENANT_CALENDAR",
- "currencyConversionMode": "TENANT_CURRENCY_CONVERSION",
- "currencyConversionDate": "string",
- "lineageDepth": 0,
- "zeroVisibility": "SHOW",
- "nullVisibility": "SHOW",
- "cellDistributionOptions": {
- "binCount": 0
}, - "axisVisibility": "SIMPLE",
- "enableSparseResults": true,
- "internal": {
- "sparseHandlingMode": "ALLOW",
- "alignTimeAxisToPeriodEnd": true
}, - "enableDescendingSpace": true,
- "currencyConversionCode": "string",
- "memberDisplayMode": "DEFAULT",
- "axesOverallValueMode": "NONE",
- "calendarId": "string"
}
}
Response samples
- 200
- default
{- "cellSet": {
- "cells": [
- {
- "value": "string",
- "support": "string",
- "coordinates": [
- 0
], - "distribution": [
- {
- "value": "string",
- "support": "string"
}
]
}
], - "axes": [
- {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "positions": [
- {
- "path": [
- "string"
], - "displayName": "string",
- "displayNamePath": [
- "string"
]
}
]
}
], - "lineage": {
- "cellSets": [
- { }
], - "op": "string"
}
}, - "error": {
- "errorCode": "string",
- "message": "string",
- "allErrors": [
- {
- "errorCode": "string",
- "message": "string",
- "allErrorDetails": [
- {
- "objectType": "string",
- "queryIndex": 0,
- "columnIndex": 0,
- "error": "string"
}
]
}
]
}
}
Retrieve a data out connector's latest version
Retrieve the latest released version of a data out connector. Use this endpoint to automate checking connector release versions.
Authorizations:
queryParameters
| connectorId |
string <enum>
Enum: "powerbi" "tableau" The name of the connector for which to retrieve the latest version. Valid values:
|
Responses
Response samples
- 200
- default
{- "version": "string",
- "id": "string"
}
Query a list of details
Retrieve unaggregated values for specific objects using a list query. A list query provides details for selected data points. In the Visier interface, a list query compares to Detailed View for a data point in a visualization.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
Request Body schema: application/jsonrequired
|
object
The source data to query. |
|
|
Array of objects (dataservices.query.PropertyColumnDTO)
The columns to include in the result. This must contain at least one column. |
|
|
Array of objects (dataservices.query.SortOptionDTO)
The index and direction to sort a column in the |
|
|
Array of objects (dataservices.query.QueryFilterDTO)
The filters of this query. Omit |
|
|
QueryTimeIntervalDTO with fromInstant (object) or QueryTimeIntervalDTO with fromDatetime (object) or QueryTimeIntervalDTO with dynamicDateFrom (object)
The time that the data is valid, such as a specific day or period of months. |
|
|
Array of objects (dataservices.query.QueryParameterValueDTO)
The parameter values for either member or numeric parameters. |
|
|
object
Additional instructions for your query, such as a calendar type or conversion information. |
Responses
Request samples
- Payload
{- "source": {
- "formula": "string",
- "metric": "string",
- "analyticObject": "string",
- "textConcept": "string"
}, - "columns": [
- {
- "columnName": "string",
- "columnDefinition": {
- "formula": "string",
- "property": {
- "name": "string",
- "qualifyingPath": "string"
}, - "selectionConcept": {
- "name": "string",
- "qualifyingPath": "string"
}, - "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "memberMapProperty": {
- "memberMap": {
- "name": "string",
- "qualifyingPath": "string"
}, - "targetDimensionName": "string"
}, - "effectiveDateProperty": { },
- "dimensionLevelSelection": {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "memberValueMode": "NAME",
- "levelId": "string",
- "levelDepth": 0
}
}
}
], - "sortOptions": [
- {
- "columnIndex": 0,
- "sortDirection": "SORT_ASCENDING"
}
], - "filters": [
- {
- "formula": "string",
- "selectionConcept": {
- "name": "string",
- "qualifyingPath": "string"
}, - "memberSet": {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "values": {
- "included": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
], - "excluded": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
]
}
}, - "cohort": {
- "keyGroup": {
- "filters": [
- {
- "formula": "string",
- "selectionConcept": {
- "name": "string",
- "qualifyingPath": "string"
}, - "memberSet": {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "values": {
- "included": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
], - "excluded": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
]
}
}
}
]
}, - "exclude": true,
- "timeInterval": {
- "intervalPeriodType": "MONTH",
- "intervalPeriodCount": 0,
- "direction": "BACKWARD",
- "shift": {
- "periodType": "MONTH",
- "periodCount": 0,
- "direction": "BACKWARD"
}, - "fromInstant": "string"
}
}, - "advanced": {
- "filters": [
- { }
], - "operation": "UNSPECIFIED"
}
}
], - "timeInterval": {
- "intervalPeriodType": "MONTH",
- "intervalPeriodCount": 0,
- "direction": "BACKWARD",
- "shift": {
- "periodType": "MONTH",
- "periodCount": 0,
- "direction": "BACKWARD"
}, - "fromInstant": "string"
}, - "parameterValues": [
- {
- "memberValue": {
- "parameterId": "string",
- "dimensionId": "string",
- "referencePath": [
- "string"
], - "values": {
- "included": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
], - "excluded": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
]
}
}, - "numericValue": {
- "parameterId": "string",
- "value": 0.1
}, - "planValue": {
- "parameterId": "string",
- "planId": "string",
- "scenarioId": "string",
- "snapshotId": "string"
}, - "aggregationTypeValue": {
- "parameterId": "string",
- "aggregationOptionId": "string"
}, - "subjectMemberSetValue": {
- "parameterId": "string",
- "keyNamePaths": [
- {
- "namePath": [
- "string"
]
}
], - "valueNamePaths": [
- {
- "namePaths": [
- {
- "namePath": [
- "string"
]
}
]
}
]
}
}
], - "options": {
- "limit": 0,
- "queryMode": "DEFAULT",
- "omitHeader": true,
- "calendarType": "TENANT_CALENDAR",
- "currencyConversionMode": "TENANT_CURRENCY_CONVERSION",
- "currencyConversionDate": "string",
- "page": 0,
- "multipleTables": true,
- "currencyConversionCode": "string",
- "recordMode": "NORMAL",
- "dateTimeDisplayMode": "EPOCH",
- "calendarId": "string"
}
}
Response samples
- 200
- default
{- "header": {
- "@type": "string"
}, - "rows": [
- {
- "@type": "string"
}
]
}
Query a series of detailed snapshots
Retrieve detailed time series snapshots taken at defined intervals. Each snapshot links to an effective date timestamp when data was valid.
Snapshot queries differ from list queries:
- A snapshot query can include an
effectiveDatePropertycolumn to specify time. Add this object to thecolumnsarray:{"columnName": "Snapshot_Date","columnDefinition": {"effectiveDateProperty": {}}} - A snapshot query uses
timeIntervalsinstead oftimeIntervalto specify generated snapshot counts. UseintervalCountintimeIntervals:{"timeIntervals": {"fromDateTime": "2022-01-01","intervalPeriodType": "MONTH","intervalPeriodCount": 6,"intervalCount": 4}
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
Request Body schema: application/jsonrequired
|
object
The source data to query. |
|
|
Array of objects (dataservices.query.PropertyColumnDTO)
The columns to include in the result. This must contain at least one column. |
|
|
Array of objects (dataservices.query.SortOptionDTO)
The index and direction to sort a column in the |
|
|
Array of objects (dataservices.query.QueryFilterDTO)
The filters of this query. Omit |
|
|
QueryTimeIntervalsDTO with fromInstant (object) or QueryTimeIntervalsDTO with fromDatetime (object) or QueryTimeIntervalsDTO with dynamicDateFrom (object)
The time intervals to query. |
|
|
Array of objects (dataservices.query.QueryParameterValueDTO)
The parameter values for either member or numeric parameters. |
|
|
object
Additional instructions for your query, such as a calendar type or conversion information. |
Responses
Request samples
- Payload
{- "source": {
- "formula": "string",
- "metric": "string",
- "analyticObject": "string",
- "textConcept": "string"
}, - "columns": [
- {
- "columnName": "string",
- "columnDefinition": {
- "formula": "string",
- "property": {
- "name": "string",
- "qualifyingPath": "string"
}, - "selectionConcept": {
- "name": "string",
- "qualifyingPath": "string"
}, - "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "memberMapProperty": {
- "memberMap": {
- "name": "string",
- "qualifyingPath": "string"
}, - "targetDimensionName": "string"
}, - "effectiveDateProperty": { },
- "dimensionLevelSelection": {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "memberValueMode": "NAME",
- "levelId": "string",
- "levelDepth": 0
}
}
}
], - "sortOptions": [
- {
- "columnIndex": 0,
- "sortDirection": "SORT_ASCENDING"
}
], - "filters": [
- {
- "formula": "string",
- "selectionConcept": {
- "name": "string",
- "qualifyingPath": "string"
}, - "memberSet": {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "values": {
- "included": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
], - "excluded": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
]
}
}, - "cohort": {
- "keyGroup": {
- "filters": [
- {
- "formula": "string",
- "selectionConcept": {
- "name": "string",
- "qualifyingPath": "string"
}, - "memberSet": {
- "dimension": {
- "name": "string",
- "qualifyingPath": "string"
}, - "values": {
- "included": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
], - "excluded": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
]
}
}
}
]
}, - "exclude": true,
- "timeInterval": {
- "intervalPeriodType": "MONTH",
- "intervalPeriodCount": 0,
- "direction": "BACKWARD",
- "shift": {
- "periodType": "MONTH",
- "periodCount": 0,
- "direction": "BACKWARD"
}, - "fromInstant": "string"
}
}, - "advanced": {
- "filters": [
- { }
], - "operation": "UNSPECIFIED"
}
}
], - "timeIntervals": {
- "intervalPeriodType": "MONTH",
- "intervalPeriodCount": 0,
- "intervalCount": 0,
- "direction": "BACKWARD",
- "shift": {
- "periodType": "MONTH",
- "periodCount": 0,
- "direction": "BACKWARD"
}, - "trailingPeriodType": "MONTH",
- "trailingPeriodCount": 0,
- "fromInstant": "string"
}, - "parameterValues": [
- {
- "memberValue": {
- "parameterId": "string",
- "dimensionId": "string",
- "referencePath": [
- "string"
], - "values": {
- "included": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
], - "excluded": [
- {
- "path": [
- "string"
], - "memberId": "string"
}
]
}
}, - "numericValue": {
- "parameterId": "string",
- "value": 0.1
}, - "planValue": {
- "parameterId": "string",
- "planId": "string",
- "scenarioId": "string",
- "snapshotId": "string"
}, - "aggregationTypeValue": {
- "parameterId": "string",
- "aggregationOptionId": "string"
}, - "subjectMemberSetValue": {
- "parameterId": "string",
- "keyNamePaths": [
- {
- "namePath": [
- "string"
]
}
], - "valueNamePaths": [
- {
- "namePaths": [
- {
- "namePath": [
- "string"
]
}
]
}
]
}
}
], - "options": {
- "limit": 0,
- "queryMode": "DEFAULT",
- "omitHeader": true,
- "calendarType": "TENANT_CALENDAR",
- "currencyConversionDate": "string",
- "page": 0,
- "multipleTables": true,
- "currencyConversionCode": "string",
- "dateTimeDisplayMode": "EPOCH",
- "calendarId": "string"
}
}
Response samples
- 200
- default
{- "header": {
- "@type": "string"
}, - "rows": [
- {
- "@type": "string"
}
]
}
Query aggregate or list data using SQL-like syntax
Query aggregate or list data using SQL-like syntax. Responses match query types. Aggregate query results flatten into tabular formats when requested.
Queries containing metrics are aggregate queries and must specify time intervals divided into periods:
SELECT
employeeCount() AS "Employee Count",level(Gender, "Gender") AS Gender
FROM
Employee
WHERE
Visier_Time IN periods(date("2023-01-01"), 4, period(3, Month));
Queries without metrics are list queries and define time intervals as simple ranges:
SELECT
EmployeeID AS "Employee ID",level(Gender, "Gender") AS Gender
FROM
Employee
WHERE
Visier_Time BETWEEN date("2022-01-01") AND date("2023-01-01");
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
Request Body schema: application/jsonrequired
| query |
string
The SQL-like query string |
|
object
Options to apply to a SQL-like aggregate query. The query is aggregate if it contains at least one metric.
|
|
|
object
Options to apply to a SQL-like list query. The query is list if it contains no metrics and has only properties.
|
Responses
Request samples
- Payload
{- "query": "string",
- "aggregateQueryOptions": {
- "calendarType": "TENANT_CALENDAR",
- "currencyConversionMode": "TENANT_CURRENCY_CONVERSION",
- "currencyConversionDate": "string",
- "lineageDepth": 0,
- "zeroVisibility": "SHOW",
- "nullVisibility": "SHOW",
- "cellDistributionOptions": {
- "binCount": 0
}, - "axisVisibility": "SIMPLE",
- "enableSparseResults": true,
- "internal": {
- "sparseHandlingMode": "ALLOW",
- "alignTimeAxisToPeriodEnd": true
}, - "enableDescendingSpace": true,
- "currencyConversionCode": "string",
- "memberDisplayMode": "DEFAULT",
- "axesOverallValueMode": "NONE",
- "calendarId": "string"
}, - "listQueryOptions": {
- "limit": 0,
- "queryMode": "DEFAULT",
- "omitHeader": true,
- "calendarType": "TENANT_CALENDAR",
- "currencyConversionMode": "TENANT_CURRENCY_CONVERSION",
- "currencyConversionDate": "string",
- "page": 0,
- "multipleTables": true,
- "currencyConversionCode": "string",
- "recordMode": "NORMAL",
- "dateTimeDisplayMode": "EPOCH",
- "calendarId": "string"
}
}
Response samples
- 200
- default
{- "header": {
- "property1": "string",
- "property2": "string"
}, - "rows": [
- {
- "property1": "string",
- "property2": "string"
}
]
}
Export Visier data version information, such as tables, columns, and file information, in CSV format.
Monitor export jobs using GET /v1alpha/data/data-version-exports/jobs/{jobUuid}. Use the returned exportUuid and fileId from GET /v1alpha/data/data-version-exports/exports/{exportUuid} to download CSV files.
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).
Retrieve data versions
Retrieve all data versions in the 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).
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "dataVersions": [
- {
- "dataVersion": "string",
- "dataCategory": "string",
- "created": "string"
}
]
}
Retrieve data version exports
Retrieve the details of all available data version exports. Exports remain available for 14 days after job completion.
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).
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "dataVersionExports": [
- {
- "uuid": "string",
- "timestamp": "string",
- "dataVersionNumber": "string",
- "baseDataVersionNumber": "string",
- "tables": [
- {
- "name": "string",
- "commonColumns": {
- "columns": [
- {
- "name": "string",
- "dataType": "string",
- "allowsNull": true,
- "isPrimaryKeyComponent": true
}
], - "files": [
- {
- "fileId": 0,
- "filename": "string"
}
]
}, - "newColumns": {
- "columns": [
- {
- "name": "string",
- "dataType": "string",
- "allowsNull": true,
- "isPrimaryKeyComponent": true
}
], - "files": [
- {
- "fileId": 0,
- "filename": "string"
}
]
}, - "deletedColumns": [
- "string"
]
}
], - "newTables": [
- "string"
], - "deletedTables": [
- "string"
]
}
]
}
Retrieve a data version export
Retrieve the details of a specific data version export. Exports remain available for 14 days after completion. You must know the ID of a data version export to retrieve its details. To retrieve data version export IDs, see GET/v1alpha/data/data-version-exports/exports.
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).
Authorizations:
pathParameters
| exportUuid
required
|
string
The unique identifier of the data version export. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "uuid": "string",
- "timestamp": "string",
- "dataVersionNumber": "string",
- "baseDataVersionNumber": "string",
- "tables": [
- {
- "name": "string",
- "commonColumns": {
- "columns": [
- {
- "name": "string",
- "dataType": "string",
- "allowsNull": true,
- "isPrimaryKeyComponent": true
}
], - "files": [
- {
- "fileId": 0,
- "filename": "string"
}
]
}, - "newColumns": {
- "columns": [
- {
- "name": "string",
- "dataType": "string",
- "allowsNull": true,
- "isPrimaryKeyComponent": true
}
], - "files": [
- {
- "fileId": 0,
- "filename": "string"
}
]
}, - "deletedColumns": [
- "string"
]
}
], - "newTables": [
- "string"
], - "deletedTables": [
- "string"
]
}
Schedule a data version export job
Schedule a data version export job. The job schedules immediately and will begin when resources are available. The response returns a jobUuid to check export job status.
Note: Limit of 10 export jobs per tenant per day.
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).
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| dataVersionNumber |
string
The data version number to generate an export for. |
| baseDataVersionNumber |
string
Optional. The baseline data version number to use to generate a delta export.
Delta exports contain the differences between |
Responses
Request samples
- Payload
{- "dataVersionNumber": "string",
- "baseDataVersionNumber": "string"
}
Response samples
- 200
- default
{- "jobUuid": "string"
}
Retrieve a data version export job's status
Retrieve the status of a data version export job. Returns an exportUuid when completed to retrieve export details and files.
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).
Authorizations:
pathParameters
| jobUuid
required
|
string
The unique identifier of the data version export job. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "jobUuid": "string",
- "completed": true,
- "failed": true,
- "exportUuid": "string"
}
Download a file from a data version export
This endpoint allows you to download a file from a data version export. Data version export files are in CSV format, compressed with gzip.
Authorizations:
pathParameters
| exportUuid
required
|
string
The unique identifier of the data version export. |
| fileId
required
|
integer
The unique integer identifier of the file within the data version export. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "errorCode": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Ask questions, submit feedback, and retrieve sample questions using Vee. Vee provides answers based on the user's organization's people data and, if specified, the answer's numerical visualization data.
Submit Vee feedback
Submit feedback for a previous Vee answer.
Include in your feedback:
- Conversation details from the
/questionresponse. - Answer rating. If
isApprovedistrue, Vee answered correctly. IfisApprovedisfalse, the answer was incorrect or incomplete. - Description of expected answer improvements, such as
Expected Headcount metric, but Vee returned Average Headcount.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
|
object
Details of the Vee conversation to provide feedback about. |
|
| isApproved |
boolean
If |
| description |
string
A description of how Vee should have answered the question or how Vee can improve the answer; for example, "Expected Headcount metric, but Vee returned Average Headcount". |
Responses
Request samples
- Payload
{- "conversation": {
- "conversationState": {
- "questionState": [
- "string"
]
}
}, - "isApproved": true,
- "description": "string"
}
Response samples
- 200
- default
{- "statusCode": "UNDEFINED",
- "statusMsg": "string"
}
Ask Vee a question
Use plain language to ask Vee a people question. Use body parameters to specify how Vee should respond, such as returning a visualization, data, or rewording the question.
The response returns a conversationState object with a unique conversation ID. Include conversationState in your next /question request for follow-up questions. Include the response in /feedback calls to submit feedback.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| question |
string
The question to ask Vee. If asking a follow-up question or continuing a conversation with Vee, specify the |
|
object
The unique identifier of the conversation with Vee. If empty, starts a new conversation with Vee. If asking a follow-up question or continuing a conversation with Vee, specify the |
|
|
object
Options to specify how Vee should respond to a question. |
|
| maxViewDetailsMembers |
integer <uint32>
The maximum number of members to return in Detailed View. At maximum chart size (1600 by 900 pixels), a maximum of 16 members can be shown in the chart. |
Responses
Request samples
- Payload
{- "question": "string",
- "conversationState": {
- "questionState": [
- "string"
]
}, - "options": {
- "includeVisual": true,
- "visualOptions": {
- "width": 0,
- "height": 0
}, - "includeData": true,
- "dataFormat": "json",
- "includeRewordedQuestion": true,
- "includeDetailData": true,
- "includeRelatedAnalyses": true,
- "includeRelatedReports": true,
- "includeSuggestions": true
}, - "maxViewDetailsMembers": 0
}
Response samples
- 200
- default
{- "conversationState": {
- "questionState": [
- "string"
]
}, - "statusCode": {
- "statusCode": "UNDEFINED",
- "statusMsg": "string"
}, - "narrative": "string",
- "chartUrl": "string",
- "schema": {
- "metrics": [
- "string"
], - "dimensions": [
- {
- "name": "string",
- "paths": [
- "string"
]
}
], - "concepts": [
- {
- "name": "string",
- "paths": [
- "string"
]
}
]
}, - "corrections": [
- {
- "warning": [
- "VEE_NO_WARNING"
], - "clarifications": [
- {
- "message": "string",
- "questions": [
- "string"
], - "metrics": [
- "string"
], - "dimensions": [
- "string"
], - "filters": [
- "string"
], - "attributes": [
- "string"
]
}
]
}
], - "data": {
- "dataJson": "string",
- "context": "string"
}, - "visual": {
- "image": "string",
- "title": "string",
- "context": "string"
}, - "rewordedQuestion": "string",
- "relatedDocuments": {
- "analyses": [
- {
- "id": "string",
- "title": "string",
- "description": "string",
- "url": "string"
}
], - "reports": [
- {
- "id": "string",
- "title": "string",
- "description": "string",
- "url": "string"
}
]
}, - "suggestions": [
- {
- "suggestion": "string"
}
]
}
Retrieve Vee question categories
Retrieve Vee sample question categories displayed in the conversation interface.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "categories": [
- {
- "categoryId": "string",
- "basicInformation": {
- "displayName": "string",
- "description": "string"
}, - "categoryIcon": {
- "base64Image": "string",
- "backgroundColor": "string"
}
}
]
}
Retrieve a Vee question category
Retrieve details of a Vee sample question category by questionCategoryId returned from GET /v1/vee/sample-question-categories.
Authorizations:
pathParameters
| questionCategoryId
required
|
string
|
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "categoryId": "string",
- "basicInformation": {
- "displayName": "string",
- "description": "string"
}, - "categoryIcon": {
- "base64Image": "string",
- "backgroundColor": "string"
}
}
Retrieve sample questions to ask Vee
Retrieve sample questions to start using Vee. Returns questions like What is the turnover rate?.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "questions": [
- {
- "question": "string",
- "questionId": "string",
- "categoryId": "string",
- "isAssignedToUser": true
}
]
}
Retrieve Vee's status
Check the current overall status of Vee.
Overall status values:
UP: Vee is operational.DOWN: Vee isn't operational.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "overall": "string"
}
Ask questions, submit feedback, and retrieve sample questions using Vee. Vee provides answers based on the user's organization's people data and, if specified, the answer's numerical visualization data. Vee V2 improves upon Vee V1 by aligning response field names with the Vee UI.
Retrieve sample questions to ask Vee
Retrieve sample questions to start using Vee. Returns questions like What is the turnover rate?.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "questions": [
- {
- "question": "string",
- "questionId": "string",
- "categoryId": "string",
- "isSpotlightedForUser": true
}
]
}
Search for documents in Visier, such as analyses.
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).
Search document headers
Search Visier document headers, such as analysis titles. Simple search doesn't support keywords, Boolean expressions, or any other advanced search features.
Example: GET /v1alpha/search/simple/document-headers?q=My+Query&limit=10 returns the first 10 document headers that best match My Query.
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).
Authorizations:
queryParameters
| q |
string
The search query string. Search results include document headers matching the string. The search string is case insensitive and supports partial matches. Must be between 2 and 200 characters. |
| limit |
integer <int32>
The maximum number of results to return. Default is 100. |
| offset |
integer <int32>
The zero-based index to start retrieving results from. Default is 0. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "documentHeaders": [
- {
- "displayName": "string",
- "description": "string",
- "relevance": 0.1,
- "viewLink": {
- "href": "string",
- "verb": "string"
}
}
]
}
Search Visier objects
Search Visier objects, such as metrics, dimensions, dimension members, concepts, analytic objects, and properties.
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).
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
Request Body schema: application/jsonrequired
| query |
Array of strings
The search string. You can provide multiple search strings. The results include Visier object headers that match each of the search strings. Search strings are case-insensitive and support partial matches. Search strings must be at least 2 characters up to a maximum of 200 characters. |
| objectType |
string <enum>
Enum: "UNKNOWN" "METRIC" "DIMENSION" "DIMENSION_MEMBER" "CONCEPT" "ANALYTIC_OBJECT" "PROPERTY" The type of Visier object to search. Valid values:
|
| limit |
integer <int32>
The maximum number of results to return. Default and maximum are 100. |
| offset |
integer <int32>
The index to start retrieving results from, also known as offset. Default is 0. |
| mask |
string
A comma-separated list of additional fields to include in the response. Valid values:
Returns For example, to get descriptions and tags in the response, set |
| includeDocumentIdSearch |
boolean
If |
|
object
Additional context to refine a dimension search. |
|
|
object
Additional context to refine a concept search. |
|
|
object
Additional context to refine a dimension member search. |
|
|
object
Additional context to refine a property search. |
Responses
Request samples
- Payload
{- "query": [
- "string"
], - "objectType": "UNKNOWN",
- "limit": 0,
- "offset": 0,
- "mask": "string",
- "includeDocumentIdSearch": true,
- "dimensionSearchContext": {
- "analyticObjectId": "string",
- "metricId": "string"
}, - "conceptSearchContext": {
- "analyticObjectId": "string",
- "metricId": "string"
}, - "dimensionMemberSearchContext": {
- "analyticObjectId": "string",
- "dimensionId": [
- "string"
], - "leafMembersOnly": true
}, - "propertySearchContext": {
- "analyticObjectId": "string"
}
}
Response samples
- 200
- default
{- "results": [
- {
- "resultsForQuery": [
- {
- "id": "string",
- "displayName": "string",
- "matchedField": "string",
- "matchScore": 0.1,
- "description": "string",
- "explanation": "string",
- "tags": [
- "string"
], - "qualifyingPath": "string",
- "metadata": { }
}
]
}
]
}
Download a tenant's source files.
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).
Download source files
Download source files for a tenant. Download all included source files or specify sources by object name or unique identifier. Excluded source files aren't downloaded.
If minTimestamp and maxTimestamp are defined, downloads source files uploaded within the time range.
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).
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| downloadAll |
boolean
If |
| sources |
Array of strings
A comma-separated list of strings representing the object name of each source to download. |
| sourceIds |
Array of strings
A comma-separated list of strings representing the unique identifier of each source to download. |
| minTimestamp |
string
The earliest upload time to download files from in ISO 8601 format, such as |
| maxTimestamp |
string
The latest upload time to download files up to in ISO 8601 format, such as |
| minSnapshotTimestamp |
string
The earliest snapshot time to download files from in ISO 8601 format, such as |
| maxSnapshotTimestamp |
string
The latest snapshot time to download files up to in ISO 8601 format, such as |
| includeNonActiveFiles |
boolean
If |
Responses
Request samples
- Payload
{- "downloadAll": true,
- "sources": [
- "string"
], - "sourceIds": [
- "string"
], - "minTimestamp": "string",
- "maxTimestamp": "string",
- "minSnapshotTimestamp": "string",
- "maxSnapshotTimestamp": "string",
- "includeNonActiveFiles": true
}
Response samples
- 200
- default
{- "status": "string",
- "messages": "string"
}
Download a source file
Download a single source file in ZIP format using its unique identifier. To retrieve file identifiers, see GET /v1alpha/op/data/uploaded-files.
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).
Authorizations:
pathParameters
| identifier
required
|
string
The unique identifier of the source file. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "status": "string",
- "messages": "string"
}
Create, retrieve, delete, copy, and download reports.
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).
Retrieve reports
Retrieve reports in the tenant. The response returns information such as the unique ID, title, description, owner, and the allowed actions you can take on the report.
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).
Authorizations:
queryParameters
| limit |
integer <int32>
The maximum number of reports to return. Default is 100. |
| start |
integer <int32>
The starting index of the first report to return. Default is 0. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "reports": [
- {
- "id": "string",
- "title": "string",
- "description": "string",
- "updatedTime": "string",
- "isPublishedReport": true,
- "owner": "string",
- "isOwnedByUser": true,
- "allowedActions": [
- "duplicate"
], - "link": "string"
}
]
}
Create a report
Create a new report with a title and description. To edit other contents of the report, such as columns and group bys, navigate to the Reports room in Visier.
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).
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| title |
string
The localized title of the report. |
| description |
string
The localized description of the report. |
Responses
Request samples
- Payload
{- "title": "string",
- "description": "string"
}
Response samples
- 200
- default
{- "id": "string",
- "title": "string",
- "description": "string",
- "updatedTime": "string",
- "isPublishedReport": true,
- "owner": "string",
- "isOwnedByUser": true,
- "allowedActions": [
- "duplicate"
], - "link": "string"
}
Retrieve a report
Retrieve a specific report's details. You must know the ID of the report to retrieve its details. To retrieve report IDs, see GET /v1alpha/reporting/reports.
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).
Authorizations:
pathParameters
| reportId
required
|
string
The unique identifier of the report. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "id": "string",
- "title": "string",
- "description": "string",
- "updatedTime": "string",
- "isPublishedReport": true,
- "owner": "string",
- "isOwnedByUser": true,
- "allowedActions": [
- "duplicate"
], - "link": "string"
}
Duplicate a report
Make a copy of an existing report. You must know the ID of the report to copy it. To retrieve report IDs, see GET /v1alpha/reporting/reports.
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).
Authorizations:
pathParameters
| reportId
required
|
string
The unique identifier of the report. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "id": "string",
- "title": "string",
- "description": "string",
- "updatedTime": "string",
- "isPublishedReport": true,
- "owner": "string",
- "isOwnedByUser": true,
- "allowedActions": [
- "duplicate"
], - "link": "string"
}
Delete a report
Delete a specific report. You must know the ID of the report to delete it. To retrieve report IDs, see GET /v1alpha/reporting/reports.
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).
Authorizations:
pathParameters
| reportId
required
|
string
The unique identifier of the report. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "id": "string"
}
Download a report
Download a report as a CSV file. The returned CSV file contains the data in the report. You must know the ID of the report to download it. To retrieve report IDs, see GET /v1alpha/reporting/reports.
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).
Authorizations:
pathParameters
| reportId
required
|
string
The unique identifier of the report you want to download. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Manage data export connectors, credentials, and jobs. Data export connectors send Visier data to external systems, such as Databricks or Snowflake. Use these APIs to manage the credentials for authenticating with destinations, validate that credentials work, list available data export connectors, and dispatch connector jobs.
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).
Retrieve data export connectors
Retrieve data export connectors. Each connector defines its Data Exports and associated credentials.
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).
Authorizations:
Responses
Response samples
- 200
- default
{- "connectors": [
- {
- "id": "string",
- "objectName": "string",
- "basicInformation": {
- "displayName": "string",
- "shortDisplayName": "string",
- "description": "string",
- "explanation": "string",
- "designerNotes": "string",
- "synonymList": {
- "synonyms": [
- "string"
]
}
}, - "links": [
- {
- "linkedDataExport": {
- "dataExportId": "string",
- "tableName": "string"
}
}
], - "credentialIds": [
- "string"
]
}
]
}
Run a data export connector job
Dispatch a job for a data export connector using the production version. Returns an id to monitor job progress with GET /v1alpha/data/export-connectors/jobs/{jobId}.
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).
Authorizations:
pathParameters
| connectorId
required
|
string
The unique identifier of the data export connector. |
Responses
Response samples
- 200
- default
{- "id": "string"
}
Retrieve data export connector credentials
Retrieve data export connector credentials. The response returns each credential's identifying fields and authentication parameters. Masked values hide sensitive fields, such as secrets and private 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).
Authorizations:
Responses
Response samples
- 200
- default
{- "credentials": [
- {
- "id": "string",
- "basicInformation": {
- "displayName": "string",
- "shortDisplayName": "string",
- "description": "string",
- "explanation": "string",
- "designerNotes": "string",
- "synonymList": {
- "synonyms": [
- "string"
]
}
}, - "parameters": {
- "databricks": {
- "workspaceUrl": "string",
- "catalog": "string",
- "schema": "string",
- "clientId": "string",
- "clientSecret": "string"
}
}
}
]
}
Create a data export connector credential
Create a data export connector credential to authenticate with external systems, such as Databricks or Snowflake. Omit id when creating a credential. Visier generates the ID automatically.
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).
Authorizations:
Request Body schema: application/jsonrequired
| id |
string
The unique identifier for the credential. This identifier is a UUID generated automatically when the credential is created and cannot be changed.
Do not provide a value when creating a new credential. When updating a credential, this field is required and must match the |
|
object
Fields that identify and describe the credential, such as its display name, description, and explanation. |
|
|
DataExportConnectorCredentialParameters with Databricks (object) or DataExportConnectorCredentialParameters with Snowflake (object) or DataExportConnectorCredentialParameters with BigQueryServiceAccount (object)
The parameters for the credential. Sensitive fields are masked when retrieved. |
Responses
Request samples
- Payload
{- "id": "string",
- "basicInformation": {
- "displayName": "string",
- "shortDisplayName": "string",
- "description": "string",
- "explanation": "string",
- "designerNotes": "string",
- "synonymList": {
- "synonyms": [
- "string"
]
}
}, - "parameters": {
- "databricks": {
- "workspaceUrl": "string",
- "catalog": "string",
- "schema": "string",
- "clientId": "string",
- "clientSecret": "string"
}
}
}
Response samples
- 201
- default
{- "id": "string",
- "basicInformation": {
- "displayName": "string",
- "shortDisplayName": "string",
- "description": "string",
- "explanation": "string",
- "designerNotes": "string",
- "synonymList": {
- "synonyms": [
- "string"
]
}
}, - "parameters": {
- "databricks": {
- "workspaceUrl": "string",
- "catalog": "string",
- "schema": "string",
- "clientId": "string",
- "clientSecret": "string"
}
}
}
Validate a data export connector credential
Validate that a data export connector credential can connect to its destination. Validation runs asynchronously. Returns an id to poll for results with GET /v1alpha/data/export-connectors/credentials/validations/{id}.
Specify id to validate existing credentials or parameters to validate new values without saving.
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).
Authorizations:
Request Body schema: application/jsonrequired
| id
required
|
string
The unique identifier of an existing credential to validate. |
Responses
Request samples
- Payload
{- "id": "string"
}
Response samples
- 201
- default
{- "id": "string"
}
Retrieve a data export connector credential validation result
Retrieve validation results for a credential using the id from POST /v1alpha/data/export-connectors/credentials/validations.
Validation runs asynchronously. Continue polling this endpoint until results return:
- While validation is in progress, the response is 200 OK with a
nullbody. - When validation completes, the response is 200 OK with validation status and error details.
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).
Authorizations:
pathParameters
| id
required
|
string
The unique identifier of the credential validation request. |
Responses
Response samples
- 200
- default
{- "success": true,
- "errors": [
- {
- "rci": "string",
- "message": "string"
}
]
}
Retrieve a data export connector credential
Retrieve a specific data export connector credential. Masked values hide sensitive fields, such as secrets and private keys. You must know the ID of the data export credential to retrieve its details. To retrieve data export connector IDs, see GET /v1alpha/data/export-connectors/credentials.
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).
Authorizations:
pathParameters
| id
required
|
string
The unique identifier of the data export connector credential. |
Responses
Response samples
- 200
- default
{- "id": "string",
- "basicInformation": {
- "displayName": "string",
- "shortDisplayName": "string",
- "description": "string",
- "explanation": "string",
- "designerNotes": "string",
- "synonymList": {
- "synonyms": [
- "string"
]
}
}, - "parameters": {
- "databricks": {
- "workspaceUrl": "string",
- "catalog": "string",
- "schema": "string",
- "clientId": "string",
- "clientSecret": "string"
}
}
}
Update a data export connector credential
Update a data export connector credential. PUT requests replace existing definitions. Provide the complete object definition in the request body, including secrets and private keys in plain text.
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).
Authorizations:
pathParameters
| id
required
|
string
The unique identifier of the data export connector credential. |
Request Body schema: application/jsonrequired
| id |
string
The unique identifier for the credential. This identifier is a UUID generated automatically when the credential is created and cannot be changed.
Do not provide a value when creating a new credential. When updating a credential, this field is required and must match the |
|
object
Fields that identify and describe the credential, such as its display name, description, and explanation. |
|
|
DataExportConnectorCredentialParameters with Databricks (object) or DataExportConnectorCredentialParameters with Snowflake (object) or DataExportConnectorCredentialParameters with BigQueryServiceAccount (object)
The parameters for the credential. Sensitive fields are masked when retrieved. |
Responses
Request samples
- Payload
{- "id": "string",
- "basicInformation": {
- "displayName": "string",
- "shortDisplayName": "string",
- "description": "string",
- "explanation": "string",
- "designerNotes": "string",
- "synonymList": {
- "synonyms": [
- "string"
]
}
}, - "parameters": {
- "databricks": {
- "workspaceUrl": "string",
- "catalog": "string",
- "schema": "string",
- "clientId": "string",
- "clientSecret": "string"
}
}
}
Response samples
- 200
- default
{- "id": "string",
- "basicInformation": {
- "displayName": "string",
- "shortDisplayName": "string",
- "description": "string",
- "explanation": "string",
- "designerNotes": "string",
- "synonymList": {
- "synonyms": [
- "string"
]
}
}, - "parameters": {
- "databricks": {
- "workspaceUrl": "string",
- "catalog": "string",
- "schema": "string",
- "clientId": "string",
- "clientSecret": "string"
}
}
}
Delete a data export connector credential
Delete a data export connector credential. You must know the ID of the data export credential to delete it. To retrieve data export connector IDs, see GET /v1alpha/data/export-connectors/credentials.
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).
Authorizations:
pathParameters
| id
required
|
string
The unique identifier of the data export connector credential. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Retrieve a data export connector job status
Retrieve the status of a data export connector job using the id from POST /v1alpha/data/export-connectors/connectors/{connectorId}/jobs. Returns job status, error messages, and spawned sync job statuses. A sync job sends the data from Visier to the target system, such as Databricks or Snowflake.
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).
Authorizations:
pathParameters
| id
required
|
string
The unique identifier of the data export connector job. |
Responses
Response samples
- 200
- default
{- "id": "string",
- "status": "string",
- "errorMessage": "string",
- "syncJobs": [
- {
- "id": "string",
- "status": "string",
- "errorMessage": "string"
}
]
}
Retrieve draft projects
Retrieve a list of draft projects accessible to the requesting user in the tenant.
A project is accessible if it is owned by the user or shared to the user.
Authorizations:
queryParameters
| with |
Array of strings
The types of draft projects to include in the request response.
|
| limit |
integer <int32>
The maximum number of projects to return per type. Default is 100. Maximum is 1000. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "openProjects": [
- {
- "id": "string",
- "name": "string",
- "description": "string",
- "releaseVersion": "string",
- "ticketNumber": "string",
- "versionNumber": 0,
- "capabilities": [
- "canRead"
], - "projectType": "Standard"
}
], - "approvalProjects": [
- {
- "id": "string",
- "name": "string",
- "description": "string",
- "releaseVersion": "string",
- "ticketNumber": "string",
- "versionNumber": 0,
- "capabilities": [
- "canRead"
], - "projectType": "Standard"
}
], - "rejectedProjects": [
- {
- "id": "string",
- "name": "string",
- "description": "string",
- "releaseVersion": "string",
- "ticketNumber": "string",
- "versionNumber": 0,
- "capabilities": [
- "canRead"
], - "projectType": "Standard"
}
], - "archivedProjects": [
- {
- "id": "string",
- "name": "string",
- "description": "string",
- "releaseVersion": "string",
- "ticketNumber": "string",
- "versionNumber": 0,
- "capabilities": [
- "canRead"
], - "projectType": "Standard"
}
]
}
Create a new draft project
Create a new draft project in the tenant.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| id |
string
The unique identifier of the project. Omit when creating a new project. |
| name |
string
An identifiable project name to display in Visier. |
| description |
string
A description of the project. |
| releaseVersion |
string
The release version of the project. |
| ticketNumber |
string
The change management ticket number of the project. |
| versionNumber |
integer <int32>
The version number of the project. |
| capabilities |
Array of strings <enum>[ items <enum> ]
ItemsEnum: "canRead" "canWrite" "canShare" "owner" The current user's capabilities for the project. Users with |
| projectType |
string <enum>
Enum: "Standard" "Prototype" "UnknownType" The type of the project. Omit when creating a new project. |
Responses
Request samples
- Payload
{- "id": "string",
- "name": "string",
- "description": "string",
- "releaseVersion": "string",
- "ticketNumber": "string",
- "versionNumber": 0,
- "capabilities": [
- "canRead"
], - "projectType": "Standard"
}
Response samples
- 200
- default
{- "id": "string",
- "name": "string",
- "description": "string",
- "releaseVersion": "string",
- "ticketNumber": "string",
- "versionNumber": 0,
- "capabilities": [
- "canRead"
], - "projectType": "Standard"
}
Retrieve a draft project
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.
A project is accessible if it is owned by the user or shared to the user.
Authorizations:
pathParameters
| projectId
required
|
string
The unique identifier of the draft project to retrieve. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "id": "string",
- "name": "string",
- "description": "string",
- "releaseVersion": "string",
- "ticketNumber": "string",
- "versionNumber": 0,
- "capabilities": [
- "canRead"
], - "projectType": "Standard"
}
Perform an operation on a draft project
Perform operations on a draft project. Supported operations:
commitAndPublish: Commits project changes and publishes the project to production.
Authorizations:
pathParameters
| projectId
required
|
string
|
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| operation |
string <enum>
Enum: "unknown" "commitAndPublish" The operation to perform on a draft project. Valid values:
|
Responses
Request samples
- Payload
{- "operation": "unknown"
}
Response samples
- 200
- default
{- "commitAndPublish": {
- "publishedVersion": {
- "id": "string",
- "name": "string",
- "description": "string",
- "releaseVersion": "string",
- "ticketNumber": "string",
- "versionNumber": 0,
- "capabilities": [
- "canRead"
], - "projectType": "Standard"
}
}
}
Delete a draft project
Delete a draft project in the tenant. The project is archived first if applicable.
Authorizations:
pathParameters
| projectId
required
|
string
The unique identifier of the draft project to delete. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "id": "string",
- "name": "string",
- "description": "string",
- "releaseVersion": "string",
- "ticketNumber": "string",
- "versionNumber": 0,
- "capabilities": [
- "canRead"
], - "projectType": "Standard"
}
Retrieve all committed changes in a project
Retrieve the full list of all committed changes in a project.
Authorizations:
pathParameters
| projectId
required
|
string
The unique identifier of the draft project to retrieve the committed changes for. |
queryParameters
| limit |
integer <int32>
The maximum number of committed changes to return. Default is 400. |
| start |
integer <int32>
The starting index of the first committed change to return. Default is 0. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "commits": [
- {
- "id": "string",
- "name": "string",
- "description": "string"
}
]
}
Import committed changes into a project
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 endpoint after making changes in a development environment to copy the changes to a draft project in your production environment.
Authorizations:
pathParameters
| projectId
required
|
string
The unique identifier of the draft project to import committed changes into. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/ziprequired
Responses
Response samples
- 200
- default
{- "commits": [
- {
- "id": "string",
- "name": "string",
- "description": "string"
}
]
}
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.
Retrieve production versions
Retrieve a list of all projects published to production, ordered from latest published to earliest published.
Authorizations:
queryParameters
| limit |
integer <int32>
The maximum number of production versions to return. Default is 400. |
| start |
integer <int32>
The starting index of the first production version to return. Default is 0. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "publishedVersions": [
- {
- "id": "string",
- "name": "string",
- "description": "string",
- "releaseVersion": "string",
- "ticketNumber": "string",
- "versionNumber": 0,
- "capabilities": [
- "canRead"
], - "projectType": "Standard"
}
]
}
Perform an operation on production versions
Perform operations on production versions, such as exporting a production project's committed changes.
If exporting, specify Accept: application/zip, application/json in the header. The endpoint 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 receive an HTTP 406 status code instead of the error response body.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| operation |
string <enum>
Enum: "unknownProductionVersionsAPIOperation" "export" The operation to perform. Valid values:
|
|
object
The parameters for the |
Responses
Request samples
- Payload
{- "operation": "unknownProductionVersionsAPIOperation",
- "exportParameters": {
- "startVersion": "string",
- "endVersion": "string",
- "excludedVersions": [
- "string"
]
}
}
Response samples
- 200
- default
{- "export": { }
}
Perform an operation on a production version
Perform operations on a specific production version. Supported operations:
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.
Authorizations:
pathParameters
| productionVersionId
required
|
string
The production version to use as the target of the operation; for example, the production version to roll back to for the |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| operation |
string <enum>
Enum: "unknownProductionVersionAPIOperation" "rollBackTo" The operation to perform. Valid values:
|
Responses
Request samples
- Payload
{- "operation": "unknownProductionVersionAPIOperation"
}
Response samples
- 200
- default
{- "rollBackTo": {
- "id": "string",
- "name": "string",
- "description": "string",
- "releaseVersion": "string",
- "ticketNumber": "string",
- "versionNumber": 0,
- "capabilities": [
- "canRead"
], - "projectType": "Standard"
}
}
Manage users within an organization. Users V3 offers the ability to update or insert (upsert) a user.
Update or insert (upsert) a user
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.
PUT requests replace existing definitions. Provide the complete object definition in the request body. Omitted fields are removed from the user if the user exists.
Authorizations:
pathParameters
| username
required
|
string
The username of the user to update if the user exists, otherwise creates a new user. |
headerParameters
| TargetTenantID |
string
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. |
| NonVersioned |
boolean
If |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| Prefer |
string
When
|
Request Body schema: application/jsonrequired
| username |
string
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 |
string
An identifiable name to display within Visier. For example, "John Smith". |
| employeeId |
string
If applicable, and if available, the user employee ID in the data. |
| accountEnabled |
string
If |
|
string
The user's email address. |
|
| userGroupIds |
Array of strings
The user groups to assign to the user. |
| permissionIds |
Array of strings
The permissions to assign to the user. |
|
Array of objects (servicing.ProfileAssignmentDTO)
The profiles to assign to the user. |
Responses
Request samples
- Payload
{- "username": "string",
- "displayName": "string",
- "employeeId": "string",
- "accountEnabled": "string",
- "email": "string",
- "userGroupIds": [
- "string"
], - "permissionIds": [
- "string"
], - "profileAssignments": [
- {
- "profileId": "string",
- "validityStartTime": "string",
- "validityEndTime": "string"
}
]
}
Response samples
- 200
- default
{- "userId": "string",
- "username": "string",
- "displayName": "string",
- "employeeId": "string",
- "accountEnabled": "string",
- "email": "string",
- "userGroupIds": [
- "string"
], - "profileIds": [
- "string"
], - "permissionIds": [
- "string"
]
}
Manage users in bulk, such as creating, updating, and deleting many users.
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.
Update users
Update an existing user's information, such as their display name or if the user is enabled in Visier.
Authorizations:
queryParameters
| tenantCode |
string
The tenant to update a user in. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
|
Array of objects (servicing.UsersUpdateAPIUserDTO)
The users to update. Maximum is 100. |
Responses
Request samples
- Payload
{- "users": [
- {
- "userId": "string",
- "displayName": "string",
- "employeeId": "string",
- "accountEnabled": "string",
- "email": "string",
- "username": "string"
}
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "userId": "string",
- "username": "string",
- "displayName": "string",
- "employeeId": "string",
- "accountEnabled": "string",
- "email": "string"
}
], - "failures": [
- {
- "userId": "string",
- "userName": "string",
- "displayName": "string",
- "error": {
- "message": "string",
- "rci": "string"
}
}
]
}
Add users
Create new users. Administrating tenant users can specify the tenant in which to add these users.
Authorizations:
queryParameters
| tenantCode |
string
The tenant to create a user in. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
|
Array of objects (servicing.UserCreationAPIRequestDTO)
The users to create. Maximum is 100. |
Responses
Request samples
- Payload
{- "users": [
- {
- "username": "string",
- "displayName": "string",
- "employeeId": "string",
- "accountEnabled": "string",
- "email": "string"
}
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "userId": "string",
- "username": "string",
- "displayName": "string",
- "employeeId": "string",
- "accountEnabled": "string",
- "email": "string"
}
], - "failures": [
- {
- "userId": "string",
- "userName": "string",
- "displayName": "string",
- "error": {
- "message": "string",
- "rci": "string"
}
}
]
}
Delete users
Delete an existing user. Administrating tenant users can specify the tenant from which to delete a user.
Authorizations:
queryParameters
| tenantCode |
string
The tenant to delete a user in. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| userIds |
Array of strings
The users to delete. Maximum is 100. |
Responses
Request samples
- Payload
{- "userIds": [
- "string"
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "userId": "string",
- "username": "string",
- "displayName": "string",
- "employeeId": "string",
- "accountEnabled": "string",
- "email": "string"
}
], - "failures": [
- {
- "userId": "string",
- "userName": "string",
- "displayName": "string",
- "error": {
- "message": "string",
- "rci": "string"
}
}
]
}
Manage user groups in Visier, such as creating, updating, and deleting user groups in bulk.
Retrieve user groups
Retrieve a collection of user groups. Use with to control the amount of detail returned in the response.
with supports these values:
permissions: Include the user group's permissions.users: Include the users in the user group.details: Include all available information.
This endpoint can return a maximum of 1000 user groups. Default is 100.
To specify the project in which to return user groups, provide a project UUID in the ProjectID request header.
To specify the tenant in which to retrieve user groups, administrating tenants can provide an analytic tenant code in the TargetTenantID request header.
Authorizations:
queryParameters
| with |
string <enum>
Enum: "permissions" "users" "details" Controls the amount of detail to return in the response. Omit to return basic information.
|
| limit |
integer <uint32>
The maximum number of user groups to return. Default is 100. Maximum is 1000. |
| start |
integer <uint32>
The starting index of the first result to return. Default is 0. |
| displayNameFilter |
string
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:
Example:
|
| correlationIds |
string
If defined, Note:
|
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Responses
Response samples
- 200
- default
{- "userGroups": [
- {
- "userGroupId": "string",
- "displayName": "string",
- "description": "string",
- "permissionIds": {
- "ids": [
- "string"
]
}, - "users": {
- "includeAllUsers": true,
- "manuallyIncludedIds": {
- "ids": [
- "string"
]
}, - "manuallyExcludedIds": {
- "ids": [
- "string"
]
}, - "dynamicFilterDefinition": {
- "filters": [
- {
- "filterId": "string",
- "analyticObjectId": "string",
- "dimensionFilters": [
- {
- "dimensionId": "string",
- "subjectReferencePath": {
- "ids": [
- "string"
]
}, - "memberSelections": [
- {
- "isExcluded": true,
- "namePath": [
- "string"
]
}
]
}
]
}
]
}
}, - "tenantCode": "string",
- "projectId": "string",
- "visibleForSelection": {
- "enabled": true,
- "features": [
- "AnalyticsFeatures"
]
}, - "correlationId": "string"
}
]
}
Update user groups
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.
PUT requests replace existing definitions. Provide the complete object definition in the request body. Omitted fields are removed from the user group. We recommend retrieving details before updating.
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.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Request Body schema: application/jsonrequired
|
Array of objects (admin.UserGroupChangeDefinitionDTO)
The user groups and their definitions. |
Responses
Request samples
- Payload
{- "userGroups": [
- {
- "userGroupId": "string",
- "displayName": "string",
- "description": "string",
- "permissionIds": {
- "ids": [
- "string"
]
}, - "users": {
- "includeAllUsers": true,
- "manuallyIncludedIds": {
- "ids": [
- "string"
]
}, - "manuallyExcludedIds": {
- "ids": [
- "string"
]
}, - "dynamicFilterDefinition": {
- "filters": [
- {
- "filterId": "string",
- "analyticObjectId": "string",
- "dimensionFilters": [
- {
- "dimensionId": "string",
- "subjectReferencePath": {
- "ids": [
- "string"
]
}, - "memberSelections": [
- {
- "isExcluded": true,
- "namePath": [
- "string"
]
}
]
}
]
}
]
}
}, - "tenantCode": "string",
- "projectId": "string",
- "visibleForSelection": {
- "enabled": true,
- "features": [
- "AnalyticsFeatures"
]
}, - "correlationId": "string"
}
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "displayName": "string",
- "userGroupId": "string",
- "tenantCode": "string",
- "projectId": "string",
- "correlationId": "string"
}
], - "failures": [
- {
- "displayName": "string",
- "message": "string",
- "rci": "string",
- "tenantCode": "string",
- "projectId": "string",
- "userGroupId": "string",
- "correlationId": "string"
}
]
}
Create user groups
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.
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.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Request Body schema: application/jsonrequired
|
Array of objects (admin.UserGroupChangeDefinitionDTO)
The user groups and their definitions. |
Responses
Request samples
- Payload
{- "userGroups": [
- {
- "userGroupId": "string",
- "displayName": "string",
- "description": "string",
- "permissionIds": {
- "ids": [
- "string"
]
}, - "users": {
- "includeAllUsers": true,
- "manuallyIncludedIds": {
- "ids": [
- "string"
]
}, - "manuallyExcludedIds": {
- "ids": [
- "string"
]
}, - "dynamicFilterDefinition": {
- "filters": [
- {
- "filterId": "string",
- "analyticObjectId": "string",
- "dimensionFilters": [
- {
- "dimensionId": "string",
- "subjectReferencePath": {
- "ids": [
- "string"
]
}, - "memberSelections": [
- {
- "isExcluded": true,
- "namePath": [
- "string"
]
}
]
}
]
}
]
}
}, - "tenantCode": "string",
- "projectId": "string",
- "visibleForSelection": {
- "enabled": true,
- "features": [
- "AnalyticsFeatures"
]
}, - "correlationId": "string"
}
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "displayName": "string",
- "userGroupId": "string",
- "tenantCode": "string",
- "projectId": "string",
- "correlationId": "string"
}
], - "failures": [
- {
- "displayName": "string",
- "message": "string",
- "rci": "string",
- "tenantCode": "string",
- "projectId": "string",
- "userGroupId": "string",
- "correlationId": "string"
}
]
}
Delete user groups
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.
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.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Request Body schema: application/jsonrequired
|
Array of objects (admin.UserGroupDeleteDTO)
The user groups to delete. |
Responses
Request samples
- Payload
{- "userGroups": [
- {
- "tenantCode": "string",
- "userGroupId": "string",
- "projectId": "string"
}
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "tenantCode": "string",
- "userGroupId": "string",
- "projectId": "string"
}
], - "failures": [
- {
- "tenantCode": "string",
- "userGroupId": "string",
- "message": "string",
- "rci": "string",
- "projectId": "string"
}
]
}
Patch user groups
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.
Unlike PUT, which completely replaces the user group definition, use PATCH to change specific fields in the user group without affecting omitted fields.
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.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
| Prefer |
string
When
|
Request Body schema: application/jsonrequired
|
Array of objects (admin.UserGroupChangeDefinitionDTO)
The user groups and their definitions. |
Responses
Request samples
- Payload
{- "userGroups": [
- {
- "userGroupId": "string",
- "displayName": "string",
- "description": "string",
- "permissionIds": {
- "ids": [
- "string"
]
}, - "users": {
- "includeAllUsers": true,
- "manuallyIncludedIds": {
- "ids": [
- "string"
]
}, - "manuallyExcludedIds": {
- "ids": [
- "string"
]
}, - "dynamicFilterDefinition": {
- "filters": [
- {
- "filterId": "string",
- "analyticObjectId": "string",
- "dimensionFilters": [
- {
- "dimensionId": "string",
- "subjectReferencePath": {
- "ids": [
- "string"
]
}, - "memberSelections": [
- {
- "isExcluded": true,
- "namePath": [
- "string"
]
}
]
}
]
}
]
}
}, - "tenantCode": "string",
- "projectId": "string",
- "visibleForSelection": {
- "enabled": true,
- "features": [
- "AnalyticsFeatures"
]
}, - "correlationId": "string"
}
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "displayName": "string",
- "userGroupId": "string",
- "tenantCode": "string",
- "projectId": "string",
- "correlationId": "string"
}
], - "failures": [
- {
- "displayName": "string",
- "message": "string",
- "rci": "string",
- "tenantCode": "string",
- "projectId": "string",
- "userGroupId": "string",
- "correlationId": "string"
}
]
}
Revert user groups
Revert a user group to its parent version.
Reverting behavior by object type:
- Blueprint object: No changes. Objects are inherited from the parent.
- Tenant override object: Reverts to the Blueprint version or administrating tenant version.
- Tenant object: Request fails. Tenant-unique objects do not have Blueprint versions.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Request Body schema: application/jsonrequired
|
Array of objects (admin.UserGroupRevertDTO)
The user groups to revert. |
Responses
Request samples
- Payload
{- "userGroups": [
- {
- "tenantCode": "string",
- "userGroupId": "string",
- "projectId": "string"
}
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "displayName": "string",
- "userGroupId": "string",
- "tenantCode": "string",
- "projectId": "string",
- "correlationId": "string"
}
], - "failures": [
- {
- "displayName": "string",
- "message": "string",
- "rci": "string",
- "tenantCode": "string",
- "projectId": "string",
- "userGroupId": "string",
- "correlationId": "string"
}
]
}
Retrieve a user group
Retrieve all available information about a specific user group.
To specify the tenant in which to retrieve a user group, administrating tenants can provide an analytic tenant code in the TargetTenantID request header.
To specify the project in which to return a user group, provide a project UUID in the ProjectID request header.
Authorizations:
pathParameters
| userGroupId
required
|
string
The unique identifier of the user group. |
queryParameters
| with |
string <enum>
Enum: "permissions" "users" "details" Controls the amount of detail to return in the response. Omit to return detailed information.
|
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Responses
Response samples
- 200
- default
{- "userGroupId": "string",
- "displayName": "string",
- "description": "string",
- "permissionIds": {
- "ids": [
- "string"
]
}, - "users": {
- "includeAllUsers": true,
- "manuallyIncludedIds": {
- "ids": [
- "string"
]
}, - "manuallyExcludedIds": {
- "ids": [
- "string"
]
}, - "dynamicFilterDefinition": {
- "filters": [
- {
- "filterId": "string",
- "analyticObjectId": "string",
- "dimensionFilters": [
- {
- "dimensionId": "string",
- "subjectReferencePath": {
- "ids": [
- "string"
]
}, - "memberSelections": [
- {
- "isExcluded": true,
- "namePath": [
- "string"
]
}
]
}
]
}
]
}
}, - "tenantCode": "string",
- "projectId": "string",
- "visibleForSelection": {
- "enabled": true,
- "features": [
- "AnalyticsFeatures"
]
}, - "correlationId": "string"
}
Delete a user group
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.
To specify the project in which to delete a user group, provide a project UUID in the ProjectID request header.
Authorizations:
pathParameters
| userGroupId
required
|
string
The unique identifier of user group to delete. |
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Responses
Response samples
- 200
- default
{- "success": {
- "tenantCode": "string",
- "userGroupId": "string",
- "projectId": "string"
}, - "failure": {
- "tenantCode": "string",
- "userGroupId": "string",
- "message": "string",
- "rci": "string",
- "projectId": "string"
}
}
Manage users within an organization, such as assigning permissions to users and retrieving user permission assignments and application logs.
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
Assign permissions to users
Assign a permission to specific users. Administrating tenant users can assign permissions to users in the administrating tenant and in the analytic tenants those users belong to. Administrating tenants can assign permissions to users in analytic tenants by providing a tenant code and project ID in the request body.
Authorizations:
headerParameters
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| TargetTenantID |
string
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. |
| NonVersioned |
boolean
If |
| SessionBasedPermissions |
boolean
If |
| SessionRepoId |
string
Optionally, specify a session repository ID to overwrite the user's permissions that are associated with the |
Request Body schema: application/jsonrequired
|
Array of objects (servicing.AssignRevokePermissionRequestDTO)
The permissions to assign to or remove from users. |
|
|
object
Administrating tenants can specify the tenants and projects in which to assign permissions to users or remove permissions from users. Specify one |
Responses
Request samples
- Payload
{- "permissions": [
- {
- "permissionId": "string",
- "userIds": [
- "string"
]
}
], - "targetProjectForTenantsList": {
- "targetProjectForTenants": [
- {
- "tenantCode": "string",
- "projectId": "string"
}
]
}
}
Response samples
- 200
- default
{- "tenants": [
- {
- "tenantCode": "string",
- "permissions": [
- {
- "permission": {
- "permissionId": "string",
- "displayName": "string",
- "description": "string"
}, - "users": [
- {
- "userId": "string",
- "username": "string",
- "message": "string"
}
]
}
], - "status": "Unknown",
- "message": "string",
- "projectId": "string"
}
], - "sessionRepoId": "string"
}
Remove permissions from users
Remove a permission from specific users. Administrating tenant users can remove permissions from users in the administrating tenant and in the analytic tenants those users belong to. Administrating tenants can remove permissions from users in analytic tenants by providing a tenant code and project ID in the request body.
Authorizations:
headerParameters
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| TargetTenantID |
string
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. |
| NonVersioned |
boolean
If |
Request Body schema: application/jsonrequired
|
Array of objects (servicing.AssignRevokePermissionRequestDTO)
The permissions to assign to or remove from users. |
|
|
object
Administrating tenants can specify the tenants and projects in which to assign permissions to users or remove permissions from users. Specify one |
Responses
Request samples
- Payload
{- "permissions": [
- {
- "permissionId": "string",
- "userIds": [
- "string"
]
}
], - "targetProjectForTenantsList": {
- "targetProjectForTenants": [
- {
- "tenantCode": "string",
- "projectId": "string"
}
]
}
}
Response samples
- 200
- default
{- "tenants": [
- {
- "tenantCode": "string",
- "permissions": [
- {
- "permission": {
- "permissionId": "string",
- "displayName": "string",
- "description": "string"
}, - "users": [
- {
- "userId": "string",
- "username": "string",
- "message": "string"
}
]
}
], - "status": "Unknown",
- "message": "string",
- "projectId": "string"
}
], - "sessionRepoId": "string"
}
Retrieve users that are assigned a specific permission
Retrieve all users assigned to a specified permission. You must know the ID of the permission you want to retrieve users for.
Authorizations:
pathParameters
| permissionId
required
|
string
The unique identifier of the permission to retrieve users for. |
queryParameters
| includeUserGroups |
boolean
If |
| tenantFilter |
string
The tenant to retrieve the list of users from. |
| limit |
integer <int32>
The maximum number of results to return. Maximum is 100. |
| start |
integer <int32>
The starting index of the first result to return. Default is 0. |
headerParameters
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| TargetTenantID |
string
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. |
| NonVersioned |
boolean
If |
Responses
Response samples
- 200
- default
{- "tenants": [
- {
- "tenantCode": "string",
- "users": [
- {
- "userId": "string",
- "username": "string",
- "permissionFrom": "string"
}
]
}
], - "limit": 0,
- "start": 0
}
Retrieve user groups
Retrieve the full list of user groups in a tenant.
Authorizations:
queryParameters
| tenantCode |
string
The tenant to retrieve the list of user groups from. |
| limit |
integer <uint32>
The maximum number of users to return. Maximum is 1000. |
| start |
integer <uint32>
The starting index of the first result to return. Default is 0. |
headerParameters
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "userGroups": [
- {
- "userGroupId": "string",
- "displayName": "string",
- "permissions": [
- {
- "permissionId": "string",
- "displayName": "string"
}
]
}
], - "limit": 0,
- "start": 0
}
Assign permissions to user groups
Assign a permission to specific user groups. This assigns the permission to all users in the user group.
Authorizations:
headerParameters
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
|
Array of objects (admin.PermissionsToUserGroupRequestDTO)
The user groups and permissions to assign or remove. |
Responses
Request samples
- Payload
{- "userGroups": [
- {
- "userGroupId": "string",
- "permissionsIds": [
- "string"
]
}
]
}
Response samples
- 200
- default
{- "tenantCode": "string",
- "status": "string",
- "message": "string",
- "userGroups": [
- {
- "userGroupId": "string",
- "displayName": "string",
- "permissions": [
- {
- "permissionId": "string",
- "displayName": "string"
}
]
}
]
}
Remove permissions from user groups
Remove a permission from specific user groups.
Authorizations:
headerParameters
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
|
Array of objects (admin.PermissionsToUserGroupRequestDTO)
The user groups and permissions to assign or remove. |
Responses
Request samples
- Payload
{- "userGroups": [
- {
- "userGroupId": "string",
- "permissionsIds": [
- "string"
]
}
]
}
Response samples
- 200
- default
{- "tenantCode": "string",
- "status": "string",
- "message": "string",
- "userGroups": [
- {
- "userGroupId": "string",
- "displayName": "string",
- "permissions": [
- {
- "permissionId": "string",
- "displayName": "string"
}
]
}
]
}
Assign users to user groups
Assign users to specific user groups. Administrating tenants can assign users to user groups in multiple analytic tenants by providing a tenant code and project ID in the request body.
We recommend that administrating tenants set the analytic tenant in which to execute the API call using the TargetTenantID request header.
Authorizations:
headerParameters
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| TargetTenantID |
string
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. |
| NonVersioned |
boolean
If |
| Prefer |
string
When
|
Request Body schema: application/jsonrequired
|
Array of objects (admin.UsersToUserGroupRequestDTO)
The user groups and users to assign or remove. |
|
|
object
Administrating tenants can specify the tenants and projects in which to assign users to user groups or remove users from user groups. Specify one |
Responses
Request samples
- Payload
{- "userGroups": [
- {
- "userGroupId": "string",
- "userIds": [
- "string"
]
}
], - "targetProjectForTenantsList": {
- "targetProjectForTenants": [
- {
- "tenantCode": "string",
- "projectId": "string"
}
]
}
}
Response samples
- 200
- default
{- "tenants": [
- {
- "tenantCode": "string",
- "status": "Unknown",
- "message": "string",
- "assignments": [
- {
- "id": "string",
- "name": "string",
- "users": [
- {
- "userId": "string",
- "username": "string"
}
]
}
], - "projectId": "string"
}
]
}
Remove users from user groups
Remove users from specific user groups. Administrating tenants can remove users to user groups in multiple analytic tenants by providing a tenant code and project ID in the request body.
We recommend that administrating tenants set the analytic tenant in which to execute the API call using the TargetTenantID request header.
Authorizations:
headerParameters
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| TargetTenantID |
string
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. |
| NonVersioned |
boolean
If |
| Prefer |
string
When
|
Request Body schema: application/jsonrequired
|
Array of objects (admin.UsersToUserGroupRequestDTO)
The user groups and users to assign or remove. |
|
|
object
Administrating tenants can specify the tenants and projects in which to assign users to user groups or remove users from user groups. Specify one |
Responses
Request samples
- Payload
{- "userGroups": [
- {
- "userGroupId": "string",
- "userIds": [
- "string"
]
}
], - "targetProjectForTenantsList": {
- "targetProjectForTenants": [
- {
- "tenantCode": "string",
- "projectId": "string"
}
]
}
}
Response samples
- 200
- default
{- "tenants": [
- {
- "tenantCode": "string",
- "status": "Unknown",
- "message": "string",
- "assignments": [
- {
- "id": "string",
- "name": "string",
- "users": [
- {
- "userId": "string",
- "username": "string"
}
]
}
], - "projectId": "string"
}
]
}
Retrieve user group users
Retrieve the list of users explicitly assigned to a user group. Doesn't return users implicitly included in the user group through dynamic filters.
Authorizations:
pathParameters
| userGroupId
required
|
string
The unique identifier of user group. |
queryParameters
| tenantFilter |
string
Specifies the tenant to retrieve the list of users from. |
| limit |
integer <uint32>
The maximum number of tenants to return. The maximum number of tenants to retrieve is 100. |
| start |
integer <uint32>
The starting index of the first result to return. Default is 0. |
headerParameters
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| TargetTenantID |
string
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. |
| NonVersioned |
boolean
If |
Responses
Response samples
- 200
- default
{- "tenants": [
- {
- "tenantCode": "string",
- "users": [
- {
- "userId": "string",
- "username": "string"
}
]
}
], - "limit": 0,
- "start": 0
}
Retrieve users
Retrieve the full list of users and their current states.
Authorizations:
queryParameters
| tenantCode |
string
The tenant to retrieve a list of users from. |
| assignedProfiles |
boolean
If |
| assignedPermissions |
boolean
If |
| assignedUserGroups |
boolean
If |
| limit |
integer <uint32>
The maximum number of users to return. Maximum is 1000. |
| start |
integer <uint32>
The starting index of the first result to return. Default is 0. |
headerParameters
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| TargetTenantID |
string
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. |
| NonVersioned |
boolean
If |
Responses
Response samples
- 200
- default
{- "users": [
- {
- "userId": "string",
- "username": "string",
- "displayName": "string",
- "employeeId": "string",
- "accountEnabled": true,
- "profiles": {
- "assignedProfiles": [
- {
- "profileId": "string",
- "displayName": "string",
- "validityStartTime": "string",
- "validityEndTime": "string",
- "capabilities": [
- {
- "capability": "string",
- "accessLevel": "string",
- "viewLevel": "string"
}
], - "additionalCapabilities": {
- "additionalCapabilities": [
- "string"
]
}
}
]
}, - "permissions": {
- "assignedPermissions": [
- {
- "permissionId": "string",
- "displayName": "string",
- "description": "string"
}
]
}, - "userGroups": {
- "assignedUserGroups": [
- {
- "userGroupId": "string",
- "displayName": "string"
}
]
}, - "lastLogin": {
- "timestamp": "string"
}, - "email": "string"
}
], - "limit": 0,
- "start": 0
}
Add a user
Create a new user. Administrating tenant users can specify the tenant in which to add a user.
Authorizations:
queryParameters
| tenantCode |
string
Specify the tenant to create a user in. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| username |
string
The user's username. This is typically the user's email, such as john@visier.com. |
| displayName |
string
An identifiable name to display within Visier. For example, "John Smith". |
| employeeId |
string
If applicable, and if available, the user employee ID in the data. |
| accountEnabled |
string
If |
|
string
The user's email. This is used if the user's email is different from their username. For example, "john.doe@visier.com". |
Responses
Request samples
- Payload
{- "username": "string",
- "displayName": "string",
- "employeeId": "string",
- "accountEnabled": "string",
- "email": "string"
}
Response samples
- 201
- default
{- "userId": "string",
- "username": "string",
- "displayName": "string",
- "employeeId": "string",
- "accountEnabled": "string",
- "email": "string"
}
Retrieve a user
Retrieve all details for a specified user.
Authorizations:
pathParameters
| userId
required
|
string
The unique identifier of the user to retrieve. |
queryParameters
| tenantCode |
string
The tenant to retrieve a user from. |
| assignedProfiles |
boolean
If |
| assignedPermissions |
boolean
If |
| assignedUserGroups |
boolean
If |
headerParameters
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| TargetTenantID |
string
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. |
| NonVersioned |
boolean
If |
Responses
Response samples
- 200
- default
{- "userId": "string",
- "username": "string",
- "displayName": "string",
- "employeeId": "string",
- "accountEnabled": true,
- "profiles": {
- "assignedProfiles": [
- {
- "profileId": "string",
- "displayName": "string",
- "validityStartTime": "string",
- "validityEndTime": "string",
- "capabilities": [
- {
- "capability": "string",
- "accessLevel": "string",
- "viewLevel": "string"
}
], - "additionalCapabilities": {
- "additionalCapabilities": [
- "string"
]
}
}
]
}, - "permissions": {
- "assignedPermissions": [
- {
- "permissionId": "string",
- "displayName": "string",
- "description": "string"
}
]
}, - "userGroups": {
- "assignedUserGroups": [
- {
- "userGroupId": "string",
- "displayName": "string"
}
]
}, - "lastLogin": {
- "timestamp": "string"
}, - "email": "string"
}
Update a user
Update an existing user's information, such as their display name or if the user is enabled in Visier.
Authorizations:
pathParameters
| userId
required
|
string
The unique identifier of the user to update. |
queryParameters
| tenantCode |
string
The tenant to update a user in. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| displayName |
string
An identifiable name to display within Visier. For example, "John Smith". |
| employeeId |
string
If applicable, and if available, the user employee ID in the data. |
| accountEnabled |
string
If |
|
string
The user's email address. |
|
| username |
string
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. |
Responses
Request samples
- Payload
{- "displayName": "string",
- "employeeId": "string",
- "accountEnabled": "string",
- "email": "string",
- "username": "string"
}
Response samples
- 200
- default
{- "displayName": "string",
- "employeeId": "string",
- "accountEnabled": "string",
- "email": "string",
- "username": "string"
}
Delete a user
Delete an existing user. Administrating tenant users can specify the tenant from which to delete a user.
Authorizations:
pathParameters
| userId
required
|
string
The unique identifier of the user to delete. |
queryParameters
| tenantCode |
string
The tenant to delete a user in. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{ }
Retrieve the Application Logs
Export Application Logs for a tenant. Application Logs track user activity and help you identify potential security issues.
Application Logs are retained for 180 days.
Administrating tenant users can export logs for their tenant and its assigned analytic tenants.
Authorizations:
queryParameters
| startTime |
string
Examples:
An inclusive date-time in milliseconds to start retrieving Application Logs from. |
| endTime |
string
Examples:
An exclusive date-time in milliseconds to stop retrieving Application Logs from. |
| tenantCode |
string
The tenant to retrieve Application Logs from. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Retrieve the Data Security Report
Export the Data Security Report for a user. This report shows which populations and properties a user can access.
Administrating tenant users can export reports for users in their tenant and its assigned analytic tenants.
Authorizations:
pathParameters
| userId
required
|
string
The unique identifier of the user to retrieve the Data Security Report for. |
queryParameters
| tenantCode |
string
The tenant to retrieve the Data Security Report from. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Retrieve user profile assignments in XLSX format
Export profiles assigned to each user and their validity periods.
Administrating tenant users can export profile assignments for their tenant and its assigned analytic tenants.
Authorizations:
queryParameters
| tenantCode |
string
The tenant to retrieve profile assignments from. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Retrieve user permissions in XLSX format
Export user permission assignments for a tenant. This report summarizes assigned permissions, their usage across users, and users without assigned permissions.
Administrating tenant users can export permission assignments for their tenant and its assigned analytic tenants.
Authorizations:
queryParameters
| tenantCode |
string
The tenant to retrieve the permission assignments report from. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Retrieve permissions in XLSX format
Export the list of permissions in a tenant. This report includes the name, description, and ID for each permission.
Administrating tenant users can export permission lists for their tenant and its assigned analytic tenants.
Authorizations:
queryParameters
| tenantCode |
string
The tenant to retrieve permissions from. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
Retrieve the Vee Logs
This API allows you to download the Vee Logs for a tenant. The Vee Logs track information about Vee queries executed by your users, including query content, execution status, processing time, and user feedback. Performing regular audits will help you understand how users are interacting with Vee and identify potential issues.
Administrating tenant users can export Vee Logs for the administrating tenant and the analytic tenants those users belong to.
Authorizations:
queryParameters
| startTime
required
|
string
Examples:
An inclusive date-time to start retrieving Vee Logs from in milliseconds since the Unix epoch. |
| endTime
required
|
string
Examples:
An exclusive date-time to stop retrieving Vee Logs from in milliseconds since the Unix epoch. |
| tenantCode |
string
Specify the tenant to retrieve Vee Logs from. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- default
{- "localizedMessage": "string",
- "code": "string",
- "message": "string",
- "rci": "string",
- "userError": true
}
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.
Retrieve profiles
Retrieve all available profiles. For administrating tenants, this retrieves all administrating tenant profiles.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "profiles": [
- {
- "profileId": "string",
- "displayName": "string",
- "capabilities": [
- {
- "capability": "string",
- "accessLevel": "string",
- "viewLevel": "string"
}
], - "additionalCapabilities": [
- "string"
]
}
]
}
Retrieve analytic tenant profiles
Retrieve a list of profiles available for analytic tenants.
Note: Administrating tenants only.
Authorizations:
Responses
Response samples
- 200
- default
{- "profiles": [
- {
- "profileId": "string",
- "displayName": "string",
- "capabilities": [
- {
- "capability": "string",
- "accessLevel": "string",
- "viewLevel": "string"
}
], - "additionalCapabilities": [
- "string"
]
}
]
}
Retrieve an analytic tenant profile
Retrieve the details of an analytic tenant profile.
Note: Administrating tenants only.
Authorizations:
pathParameters
| profileId
required
|
string
The unique identifier of the profile to retrieve details for. |
Responses
Response samples
- 200
- default
{- "profileId": "string",
- "displayName": "string",
- "capabilities": [
- {
- "capability": "string",
- "accessLevel": "string",
- "viewLevel": "string"
}
], - "additionalCapabilities": [
- "string"
]
}
Assign an analytic tenant profile to administrating tenant users
Assign an analytic tenant profile to a list of administrating tenant users for a list of analytic tenants.
Note:
- Administrating tenants only.
- Revoke a profile by setting
validityEndTimeto a past time.
Authorizations:
pathParameters
| profileId
required
|
string
The unique identifier of the profile to assign. |
Request Body schema: application/jsonrequired
| targetUserIds |
Array of strings
The users to assign this profile. |
|
Array of objects (servicing.TargetTenantCodeDTO)
The analytic tenants for profiles assigned to the users. |
|
| validityStartTime |
string
An inclusive date-time when this profile is active. |
| validityEndTime |
string
An exclusive date-time when this profile is no longer active. |
Responses
Request samples
- Payload
{- "targetUserIds": [
- "string"
], - "targetTenantCodes": [
- {
- "tenantCode": "string",
- "forAllChildren": true
}
], - "validityStartTime": "string",
- "validityEndTime": "string"
}
Response samples
- 200
- default
{- "errors": true,
- "badTenantCodes": [
- {
- "tenantCode": "string",
- "forAllChildren": true,
- "error": {
- "rootCauseId": "string",
- "errorCode": "string",
- "errorMessage": "string"
}
}
], - "badUserIds": [
- {
- "userId": "string",
- "error": {
- "rootCauseId": "string",
- "errorCode": "string",
- "errorMessage": "string"
}
}
], - "failedAssignments": [
- {
- "userId": "string",
- "tenantCode": "string",
- "forAllChildren": true,
- "error": {
- "rootCauseId": "string",
- "errorCode": "string",
- "errorMessage": "string"
}
}
], - "successfulAssignments": [
- {
- "userId": "string",
- "tenantCode": "string",
- "forAllChildren": true
}
]
}
Remove an analytic tenant profile from administrating tenant users
Remove an analytic tenant profile from a list of administrating tenant users for a list of analytic tenants.
Note: Administrating tenants only.
Authorizations:
pathParameters
| profileId
required
|
string
The unique identifier of the profile to remove. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| targetUserIds |
Array of strings
The users to remove this profile from. |
|
Array of objects (servicing.TargetTenantCodeDTO)
The analytic tenants for removing profiles from each target user ID. |
Responses
Request samples
- Payload
{- "targetUserIds": [
- "string"
], - "targetTenantCodes": [
- {
- "tenantCode": "string",
- "forAllChildren": true
}
]
}
Response samples
- 200
- default
{- "badTenantCodes": [
- {
- "tenantCode": "string",
- "forAllChildren": true,
- "error": {
- "errorMessage": "string"
}
}
], - "badUserIds": [
- {
- "userId": "string",
- "error": {
- "errorMessage": "string"
}
}
], - "unaffectedUsers": [
- {
- "userId": "string"
}
], - "succeeded": [
- {
- "userId": "string"
}
]
}
Retrieve a profile
Retrieve the details of a specific profile. For administrating tenants, this retrieves the details of administrating tenant profiles.
Authorizations:
pathParameters
| profileId
required
|
string
The unique identifier of the profile to retrieve details for. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "profileId": "string",
- "displayName": "string",
- "capabilities": [
- {
- "capability": "string",
- "accessLevel": "string",
- "viewLevel": "string"
}
], - "additionalCapabilities": [
- "string"
]
}
Assign a profile to users
Assign a profile to a list of users. For administrating tenants, this assigns an administrating tenant profile to a list of users.
Authorizations:
pathParameters
| profileId
required
|
string
The unique identifier of the profile to assign to a list of users. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| targetUserIds |
Array of strings
The users to assign this profile. |
| validityStartTime |
string
An inclusive date-time when this profile is active. |
| validityEndTime |
string
An exclusive date-time when this profile is no longer active. |
Responses
Request samples
- Payload
{- "targetUserIds": [
- "string"
], - "validityStartTime": "string",
- "validityEndTime": "string"
}
Response samples
- 200
- default
{- "errors": true,
- "badUserIds": [
- {
- "userId": "string",
- "error": {
- "rootCauseId": "string",
- "errorCode": "string",
- "errorMessage": "string"
}
}
], - "failedAssignments": [
- {
- "userId": "string",
- "error": {
- "rootCauseId": "string",
- "errorCode": "string",
- "errorMessage": "string"
}
}
], - "successfulAssignments": [
- {
- "userId": "string"
}
]
}
Remove a profile from users
Remove a profile from a list of users. For administrating tenants, this removes an administrating tenant profile from a list of users.
Authorizations:
pathParameters
| profileId
required
|
string
The unique identifier of the profile to remove to a list of users. |
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| targetUserIds |
Array of strings
The users to remove this profile from. |
Responses
Request samples
- Payload
{- "targetUserIds": [
- "string"
]
}
Response samples
- 200
- default
{- "failed": [
- {
- "userId": "string",
- "message": "string"
}
], - "succeeded": [
- {
- "userId": "string"
}
]
}
Retrieve an administrating tenant user's analytic tenant profiles
Retrieve a specified user's assigned profiles for analytic tenants.
Note: Administrating tenants only.
Authorizations:
pathParameters
| userId
required
|
string
The unique identifier of the user to retrieve. |
Responses
Response samples
- 200
- default
{- "assignedProfilesForAccessibleTenant": [
- {
- "profileId": "string",
- "displayName": "string",
- "tenantCode": "string",
- "forAllChildren": true,
- "validityStartTime": "string",
- "validityEndTime": "string"
}
]
}
Retrieve a user's profiles
Retrieve a specified user's assigned profiles. For administrating tenants, this retrieves a user's administrating tenant profiles.
Authorizations:
pathParameters
| userId
required
|
string
The unique identifier of the user to retrieve. |
headerParameters
| TargetTenantID |
string
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. |
Responses
Response samples
- 200
- default
{- "assignedProfiles": [
- {
- "profileId": "string",
- "displayName": "string",
- "validityStartTime": "string",
- "validityEndTime": "string",
- "capabilities": [
- {
- "capability": "string",
- "accessLevel": "string",
- "viewLevel": "string"
}
], - "additionalCapabilities": {
- "additionalCapabilities": [
- "string"
]
}
}
]
}
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.
Retrieve permission capabilities
Retrieve all permission capabilities in your tenant. Assign returned capabilities to permissions when creating or updating permissions.
Authorizations:
queryParameters
| tenantCode |
string
The tenant to retrieve capabilities from. |
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
Responses
Response samples
- 200
- default
{- "capabilities": [
- {
- "name": "string",
- "displayName": "string",
- "description": "string"
}
]
}
Retrieve a permission capability
Retrieve the details of a specific capability.
Authorizations:
pathParameters
| capabilityId
required
|
string
The unique identifier of the capability to retrieve. |
queryParameters
| tenantCode |
string
The tenant to retrieve a capability from. |
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
Responses
Response samples
- 200
- default
{- "name": "string",
- "displayName": "string",
- "description": "string"
}
Retrieve content packages
Retrieve the list of available content packages. Add returned content packages to permissions when creating or updating permissions.
Authorizations:
queryParameters
| tenantCode |
string
The tenant to retrieve content packages from. |
| searchString |
string
Optional search string to return only content packages whose display name or description contains that search string.
If |
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
Responses
Response samples
- 200
- default
{- "contentPackages": [
- {
- "contentPackageId": "string",
- "displayName": "string",
- "description": "string",
- "artifactsByType": [
- {
- "artifactType": "string",
- "artifacts": [
- {
- "uuid": "string",
- "objectName": "string",
- "displayName": "string",
- "canFilterBy": true,
- "canGroupBy": true
}
]
}
]
}
]
}
Retrieve a content package
Retrieve the details of a specific content package.
Authorizations:
pathParameters
| contentPackageId
required
|
string
The unique identifier of the content package to retrieve. |
queryParameters
| tenantCode |
string
The tenant to retrieve a content package from. |
| with |
Array of strings
Controls the amount of detail to return in the response. Omit to return basic information.
|
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
Responses
Response samples
- 200
- default
{- "contentPackageId": "string",
- "displayName": "string",
- "description": "string",
- "artifactsByType": [
- {
- "artifactType": "string",
- "artifacts": [
- {
- "uuid": "string",
- "objectName": "string",
- "displayName": "string",
- "canFilterBy": true,
- "canGroupBy": true
}
]
}
]
}
Retrieve data access sets
Retrieve a list of all shareable data access sets. Data access sets define user access levels for properties and property values of analytic objects in a permission. Data access sets also grant access to properties of subjects referenced by the object. Assign data access sets when creating or updating permissions.
Note: If valid data access sets exceed the default limit of 100, the response status code is 206. Set limit higher to retrieve more.
Authorizations:
queryParameters
| analyticObjectId |
string
Specify the analytic object ID to retrieve the shareable data access sets for. Default is all analytic objects. |
| with |
Array of strings
The information about the data access set to include in the request response.
|
| limit |
integer <int32>
The maximum number of data access sets to return. Default is 100. Maximum is 1000. |
| correlationIds |
string
If defined, Note:
|
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Responses
Response samples
- 200
- default
{- "dataAccessSets": [
- {
- "id": "string",
- "displayName": "string",
- "description": "string",
- "analyticObjectId": "string",
- "propertyAccessConfigs": [
- {
- "propertyId": "string",
- "analyticObjectId": "string",
- "analyticObjectReferencePaths": [
- "string"
], - "accessLevel": "None",
- "propertyStatus": "Unset"
}
], - "correlationId": "string"
}
]
}
Update shareable data access sets
Update shareable data access sets. Shareable data access sets let you reuse common data access configurations across multiple permissions.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Request Body schema: application/jsonrequired
|
Array of objects (servicing.DataAccessSetDTO)
The data access sets to create or update. |
Responses
Request samples
- Payload
{- "shareablePropertyAccessConfigs": [
- {
- "id": "string",
- "displayName": "string",
- "description": "string",
- "analyticObjectId": "string",
- "propertyAccessConfigs": [
- {
- "propertyId": "string",
- "analyticObjectId": "string",
- "analyticObjectReferencePaths": [
- "string"
], - "accessLevel": "None",
- "propertyStatus": "Unset"
}
], - "correlationId": "string"
}
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "dataAccessSetId": "string",
- "displayName": "string",
- "correlationId": "string"
}
], - "failures": [
- {
- "dataAccessSetId": "string",
- "displayName": "string",
- "error": {
- "message": "string",
- "rci": "string"
}, - "correlationId": "string"
}
]
}
Create shareable data access sets
Create shareable data access sets. Shareable data access sets let you reuse common data access configurations across multiple permissions.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Request Body schema: application/jsonrequired
|
Array of objects (servicing.DataAccessSetDTO)
The data access sets to create or update. |
Responses
Request samples
- Payload
{- "shareablePropertyAccessConfigs": [
- {
- "id": "string",
- "displayName": "string",
- "description": "string",
- "analyticObjectId": "string",
- "propertyAccessConfigs": [
- {
- "propertyId": "string",
- "analyticObjectId": "string",
- "analyticObjectReferencePaths": [
- "string"
], - "accessLevel": "None",
- "propertyStatus": "Unset"
}
], - "correlationId": "string"
}
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "dataAccessSetId": "string",
- "displayName": "string",
- "correlationId": "string"
}
], - "failures": [
- {
- "dataAccessSetId": "string",
- "displayName": "string",
- "error": {
- "message": "string",
- "rci": "string"
}, - "correlationId": "string"
}
]
}
Delete shareable data access sets
Delete shareable data access sets.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Request Body schema: application/jsonrequired
|
Array of objects (servicing.DataAccessSetIdDTO)
The data access sets to delete. |
Responses
Request samples
- Payload
{- "shareablePropertyAccessConfigs": [
- {
- "id": "string"
}
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "dataAccessSetId": "string",
- "displayName": "string",
- "correlationId": "string"
}
], - "failures": [
- {
- "dataAccessSetId": "string",
- "displayName": "string",
- "error": {
- "message": "string",
- "rci": "string"
}, - "correlationId": "string"
}
]
}
Revert data access sets
Revert a shareable data access set to its parent version.
Reverting behavior by object type:
- Blueprint object: No changes. Objects are inherited from the parent.
- Tenant override object: Reverts to the Blueprint version or administrating tenant version.
- Tenant object: Request fails. Tenant-unique objects do not have Blueprint versions.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Request Body schema: application/jsonrequired
|
Array of objects (servicing.DataAccessSetIdDTO)
The data access sets to revert. |
Responses
Request samples
- Payload
{- "shareablePropertyAccessConfigs": [
- {
- "id": "string"
}
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "dataAccessSetId": "string",
- "displayName": "string",
- "correlationId": "string"
}
], - "failures": [
- {
- "dataAccessSetId": "string",
- "displayName": "string",
- "error": {
- "message": "string",
- "rci": "string"
}, - "correlationId": "string"
}
]
}
Retrieve a data access set
Retrieve details for a specific shareable data access set. You must know the ID to retrieve its details. To retrieve IDs, see GET /v1/admin/data-access-sets.
Authorizations:
pathParameters
| dataAccessSetId
required
|
string
The unique identifier of the data access set to retrieve. |
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Responses
Response samples
- 200
- default
{- "id": "string",
- "displayName": "string",
- "description": "string",
- "analyticObjectId": "string",
- "propertyAccessConfigs": [
- {
- "propertyId": "string",
- "analyticObjectId": "string",
- "analyticObjectReferencePaths": [
- "string"
], - "accessLevel": "None",
- "propertyStatus": "Unset"
}
], - "correlationId": "string"
}
Retrieve data security objects
Retrieve the list of available data security objects. Data security objects are analytic objects and their related objects available to define permission security profiles.
Authorizations:
queryParameters
| id |
Array of strings
The unique identifiers of the data security objects (analytic objects) to retrieve. Default is all data security objects. |
| includeDetails |
boolean
If |
| tenantCode |
string
The tenant to retrieve data security objects from. |
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
Responses
Response samples
- 200
- default
{- "analyticObjects": [
- {
- "analyticObjectId": "string",
- "displayName": "string",
- "objectType": "Event",
- "relatedObjects": [
- {
- "analyticObjectId": "string",
- "displayName": "string"
}
], - "securableProperties": [
- {
- "propertyId": "string",
- "displayName": "string",
- "analyticObjectId": "string",
- "isPrimaryKey": true,
- "referenceSymbolName": "string"
}
], - "securableDimensions": [
- {
- "dimensionId": "string",
- "displayName": "string",
- "analyticObjectIds": [
- "string"
], - "hierarchyProperties": [
- {
- "hierarchyPropertyId": "string",
- "displayName": "string"
}
]
}
]
}
]
}
Retrieve permissions
Retrieve the full list of user permissions in your tenant.
Authorizations:
queryParameters
| tenantCode |
string
The tenant to retrieve permissions from. |
| includeDetails |
boolean
If |
| includeDetailsWithStatus |
boolean
If |
| correlationIds |
string
If defined, Note:
|
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Responses
Response samples
- 200
- default
{- "permissions": [
- {
- "permissionId": "string",
- "displayName": "string",
- "description": "string",
- "dataSecurityProfiles": [
- {
- "analyticObjectId": "string",
- "propertySetConfig": {
- "propertyAccessConfigs": [
- {
- "propertyId": "string",
- "analyticObjectId": "string",
- "analyticObjectReferencePaths": [
- "string"
], - "accessLevel": "None",
- "propertyStatus": "Unset"
}
], - "shareableDataAccessSet": {
- "dataAccessSetId": "string"
}
}, - "allDataPointAccess": true,
- "memberFilterConfigs": [
- {
- "dimensionFilters": [
- {
- "staticDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "memberSelections": [
- {
- "namePath": [
- "string"
], - "excluded": true,
- "dimensionMemberStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}, - "dynamicDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "dynamicPropertyMappings": [
- {
- "hierarchyPropertyId": "string",
- "userProperty": {
- "name": "string"
}, - "hierarchyPropertyStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}
}
]
}
], - "inheritedAccessConfigs": [
- {
- "analyticObjectId": "string",
- "removeAccess": true,
- "memberFilterConfigs": [
- {
- "dimensionFilters": [
- {
- "staticDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "memberSelections": [
- {
- "namePath": [
- "string"
], - "excluded": true,
- "dimensionMemberStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}, - "dynamicDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "dynamicPropertyMappings": [
- {
- "hierarchyPropertyId": "string",
- "userProperty": {
- "name": "string"
}, - "hierarchyPropertyStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}
}
]
}
], - "shareableSecurityFilters": [
- {
- "securityFilterId": "string"
}
]
}
], - "inheritedReferenceMemberFilterConfig": {
- "targetAnalyticObjectId": "string",
- "analyticObjectReference": "string"
}, - "analyticObjectStatus": "Unset",
- "shareableSecurityFilters": [
- {
- "securityFilterId": "string"
}
]
}
], - "adminCapabilityConfig": {
- "allCapabilitiesAccess": true,
- "capabilities": [
- "string"
]
}, - "roleModulesConfig": {
- "contentPackageIds": [
- "string"
]
}, - "sourceSecurityConfig": {
- "sourceSecurityProfiles": [
- {
- "sourceId": "string"
}
], - "hasWriteAccessToAllSources": true
}, - "targetSecurityConfig": {
- "targetSecurityForAll": {
- "accessToAllTargets": true,
- "targetIds": [
- "string"
]
}, - "targetSecurityProfiles": [
- {
- "dataCategoryId": "string",
- "accessToAllTargets": true,
- "targetIds": [
- "string"
]
}
]
}, - "correlationId": "string"
}
]
}
Update permissions
Update existing permissions.
Authorizations:
queryParameters
| tenantCode |
string
The tenant to update permissions in. |
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
| FastMode |
boolean
If |
Request Body schema: application/jsonrequired
|
Array of objects (servicing.PermissionDTO)
The permissions to create or update. |
Responses
Request samples
- Payload
{- "permissions": [
- {
- "permissionId": "string",
- "displayName": "string",
- "description": "string",
- "dataSecurityProfiles": [
- {
- "analyticObjectId": "string",
- "propertySetConfig": {
- "propertyAccessConfigs": [
- {
- "propertyId": "string",
- "analyticObjectId": "string",
- "analyticObjectReferencePaths": [
- "string"
], - "accessLevel": "None",
- "propertyStatus": "Unset"
}
], - "shareableDataAccessSet": {
- "dataAccessSetId": "string"
}
}, - "allDataPointAccess": true,
- "memberFilterConfigs": [
- {
- "dimensionFilters": [
- {
- "staticDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "memberSelections": [
- {
- "namePath": [
- "string"
], - "excluded": true,
- "dimensionMemberStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}, - "dynamicDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "dynamicPropertyMappings": [
- {
- "hierarchyPropertyId": "string",
- "userProperty": {
- "name": "string"
}, - "hierarchyPropertyStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}
}
]
}
], - "inheritedAccessConfigs": [
- {
- "analyticObjectId": "string",
- "removeAccess": true,
- "memberFilterConfigs": [
- {
- "dimensionFilters": [
- {
- "staticDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "memberSelections": [
- {
- "namePath": [
- "string"
], - "excluded": true,
- "dimensionMemberStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}, - "dynamicDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "dynamicPropertyMappings": [
- {
- "hierarchyPropertyId": "string",
- "userProperty": {
- "name": "string"
}, - "hierarchyPropertyStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}
}
]
}
], - "shareableSecurityFilters": [
- {
- "securityFilterId": "string"
}
]
}
], - "inheritedReferenceMemberFilterConfig": {
- "targetAnalyticObjectId": "string",
- "analyticObjectReference": "string"
}, - "analyticObjectStatus": "Unset",
- "shareableSecurityFilters": [
- {
- "securityFilterId": "string"
}
]
}
], - "adminCapabilityConfig": {
- "allCapabilitiesAccess": true,
- "capabilities": [
- "string"
]
}, - "roleModulesConfig": {
- "contentPackageIds": [
- "string"
]
}, - "sourceSecurityConfig": {
- "sourceSecurityProfiles": [
- {
- "sourceId": "string"
}
], - "hasWriteAccessToAllSources": true
}, - "targetSecurityConfig": {
- "targetSecurityForAll": {
- "accessToAllTargets": true,
- "targetIds": [
- "string"
]
}, - "targetSecurityProfiles": [
- {
- "dataCategoryId": "string",
- "accessToAllTargets": true,
- "targetIds": [
- "string"
]
}
]
}, - "correlationId": "string"
}
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "permissionId": "string",
- "displayName": "string",
- "correlationId": "string"
}
], - "failures": [
- {
- "permissionId": "string",
- "displayName": "string",
- "error": {
- "message": "string",
- "rci": "string"
}, - "correlationId": "string"
}
]
}
Create permissions
Create new permissions.
Authorizations:
queryParameters
| tenantCode |
string
The tenant to create permissions in. |
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
| FastMode |
boolean
If |
Request Body schema: application/jsonrequired
|
Array of objects (servicing.PermissionDTO)
The permissions to create or update. |
Responses
Request samples
- Payload
{- "permissions": [
- {
- "permissionId": "string",
- "displayName": "string",
- "description": "string",
- "dataSecurityProfiles": [
- {
- "analyticObjectId": "string",
- "propertySetConfig": {
- "propertyAccessConfigs": [
- {
- "propertyId": "string",
- "analyticObjectId": "string",
- "analyticObjectReferencePaths": [
- "string"
], - "accessLevel": "None",
- "propertyStatus": "Unset"
}
], - "shareableDataAccessSet": {
- "dataAccessSetId": "string"
}
}, - "allDataPointAccess": true,
- "memberFilterConfigs": [
- {
- "dimensionFilters": [
- {
- "staticDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "memberSelections": [
- {
- "namePath": [
- "string"
], - "excluded": true,
- "dimensionMemberStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}, - "dynamicDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "dynamicPropertyMappings": [
- {
- "hierarchyPropertyId": "string",
- "userProperty": {
- "name": "string"
}, - "hierarchyPropertyStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}
}
]
}
], - "inheritedAccessConfigs": [
- {
- "analyticObjectId": "string",
- "removeAccess": true,
- "memberFilterConfigs": [
- {
- "dimensionFilters": [
- {
- "staticDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "memberSelections": [
- {
- "namePath": [
- "string"
], - "excluded": true,
- "dimensionMemberStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}, - "dynamicDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "dynamicPropertyMappings": [
- {
- "hierarchyPropertyId": "string",
- "userProperty": {
- "name": "string"
}, - "hierarchyPropertyStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}
}
]
}
], - "shareableSecurityFilters": [
- {
- "securityFilterId": "string"
}
]
}
], - "inheritedReferenceMemberFilterConfig": {
- "targetAnalyticObjectId": "string",
- "analyticObjectReference": "string"
}, - "analyticObjectStatus": "Unset",
- "shareableSecurityFilters": [
- {
- "securityFilterId": "string"
}
]
}
], - "adminCapabilityConfig": {
- "allCapabilitiesAccess": true,
- "capabilities": [
- "string"
]
}, - "roleModulesConfig": {
- "contentPackageIds": [
- "string"
]
}, - "sourceSecurityConfig": {
- "sourceSecurityProfiles": [
- {
- "sourceId": "string"
}
], - "hasWriteAccessToAllSources": true
}, - "targetSecurityConfig": {
- "targetSecurityForAll": {
- "accessToAllTargets": true,
- "targetIds": [
- "string"
]
}, - "targetSecurityProfiles": [
- {
- "dataCategoryId": "string",
- "accessToAllTargets": true,
- "targetIds": [
- "string"
]
}
]
}, - "correlationId": "string"
}
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "permissionId": "string",
- "displayName": "string",
- "correlationId": "string"
}
], - "failures": [
- {
- "permissionId": "string",
- "displayName": "string",
- "error": {
- "message": "string",
- "rci": "string"
}, - "correlationId": "string"
}
]
}
Delete permissions
Delete existing permissions.
To specify the project in which to delete permissions, provide a project UUID in the ProjectID request header.
Authorizations:
queryParameters
| tenantCode |
string
The tenant to delete permissions from. |
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Request Body schema: application/jsonrequired
| permissionIds |
Array of strings
The identifiers of the permissions to delete. |
Responses
Request samples
- Payload
{- "permissionIds": [
- "string"
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "permissionId": "string",
- "displayName": "string",
- "correlationId": "string"
}
], - "failures": [
- {
- "permissionId": "string",
- "displayName": "string",
- "error": {
- "message": "string",
- "rci": "string"
}, - "correlationId": "string"
}
]
}
Revert permissions
Revert a permission to its parent version.
Reverting behavior by object type:
- Blueprint object: No changes. Objects are inherited from the parent.
- Tenant override object: Reverts to the Blueprint version or administrating tenant version.
- Tenant object: Request fails. Tenant-unique objects do not have Blueprint versions.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Request Body schema: application/jsonrequired
| permissionIds |
Array of strings
The identifiers of the permissions to revert. |
Responses
Request samples
- Payload
{- "permissionIds": [
- "string"
]
}
Response samples
- 200
- default
{- "successes": [
- {
- "permissionId": "string",
- "displayName": "string",
- "correlationId": "string"
}
], - "failures": [
- {
- "permissionId": "string",
- "displayName": "string",
- "error": {
- "message": "string",
- "rci": "string"
}, - "correlationId": "string"
}
]
}
Retrieve a permission
Retrieve details for a specified permission.
Authorizations:
pathParameters
| permissionId
required
|
string
The unique identifier of the permission to retrieve. |
queryParameters
| tenantCode |
string
The tenant to retrieve a permission from. |
| includeDetailsWithStatus |
string
If |
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Responses
Response samples
- 200
- default
{- "permissionId": "string",
- "displayName": "string",
- "description": "string",
- "dataSecurityProfiles": [
- {
- "analyticObjectId": "string",
- "propertySetConfig": {
- "propertyAccessConfigs": [
- {
- "propertyId": "string",
- "analyticObjectId": "string",
- "analyticObjectReferencePaths": [
- "string"
], - "accessLevel": "None",
- "propertyStatus": "Unset"
}
], - "shareableDataAccessSet": {
- "dataAccessSetId": "string"
}
}, - "allDataPointAccess": true,
- "memberFilterConfigs": [
- {
- "dimensionFilters": [
- {
- "staticDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "memberSelections": [
- {
- "namePath": [
- "string"
], - "excluded": true,
- "dimensionMemberStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}, - "dynamicDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "dynamicPropertyMappings": [
- {
- "hierarchyPropertyId": "string",
- "userProperty": {
- "name": "string"
}, - "hierarchyPropertyStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}
}
]
}
], - "inheritedAccessConfigs": [
- {
- "analyticObjectId": "string",
- "removeAccess": true,
- "memberFilterConfigs": [
- {
- "dimensionFilters": [
- {
- "staticDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "memberSelections": [
- {
- "namePath": [
- "string"
], - "excluded": true,
- "dimensionMemberStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}, - "dynamicDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "dynamicPropertyMappings": [
- {
- "hierarchyPropertyId": "string",
- "userProperty": {
- "name": "string"
}, - "hierarchyPropertyStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}
}
]
}
], - "shareableSecurityFilters": [
- {
- "securityFilterId": "string"
}
]
}
], - "inheritedReferenceMemberFilterConfig": {
- "targetAnalyticObjectId": "string",
- "analyticObjectReference": "string"
}, - "analyticObjectStatus": "Unset",
- "shareableSecurityFilters": [
- {
- "securityFilterId": "string"
}
]
}
], - "adminCapabilityConfig": {
- "allCapabilitiesAccess": true,
- "capabilities": [
- "string"
]
}, - "roleModulesConfig": {
- "contentPackageIds": [
- "string"
]
}, - "sourceSecurityConfig": {
- "sourceSecurityProfiles": [
- {
- "sourceId": "string"
}
], - "hasWriteAccessToAllSources": true
}, - "targetSecurityConfig": {
- "targetSecurityForAll": {
- "accessToAllTargets": true,
- "targetIds": [
- "string"
]
}, - "targetSecurityProfiles": [
- {
- "dataCategoryId": "string",
- "accessToAllTargets": true,
- "targetIds": [
- "string"
]
}
]
}, - "correlationId": "string"
}
Synchronize versioned security artifacts
Copy permissions, data access sets, user groups, and direct user assignments from the versioned environment to the non-versioned environment. This operation immediately applies security configurations, independent of data versioning.
The versioned environment uses projects and data versions, while the non-versioned environment applies changes directly.
This endpoint always synchronizes permissions and data access sets. You can optionally synchronize user group assignments and direct permissions assignments to users.
Use this operation to apply security configurations immediately without waiting for data version changes. This is particularly useful for administrating tenants syncing security artifacts to analytic tenants.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
Request Body schema: application/jsonrequired
| syncTypes |
Array of strings <enum>[ items <enum> ]
ItemsEnum: "UserGroups" "UserDirectAssignments" Optional types to synchronize. Specify which artifact types to include in the sync operation. Valid values:
Data access sets and permissions are always synchronized regardless of this setting. |
Responses
Request samples
- Payload
{- "syncTypes": [
- "UserGroups"
]
}
Response samples
- 200
- default
{- "status": "Unknown",
- "errors": [
- {
- "type": "UserGroups",
- "objectId": "string",
- "displayName": "string",
- "message": "string"
}
]
}
Retrieve security filters
Retrieve all shareable security filters. Security filters define member populations users can access for analytic objects in permissions. Assign security filters when creating or updating permissions.
Authorizations:
queryParameters
| analyticObjectId |
string
The unique identifier of the analytic object to retrieve shareable security filters for. Default is all analytic objects. |
| with |
Array of strings
The security filter information to include in the response.
|
| limit |
integer <int32>
The maximum number of security filters to return. Default is 100. Maximum is 1000. |
| correlationIds |
string
Filter the security filters to return by correlation ID.
Specify multiple correlation IDs as a comma-separated list. For example, Note:
|
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
Responses
Response samples
- 200
- default
{- "securityFilters": [
- {
- "id": "string",
- "displayName": "string",
- "description": "string",
- "analyticObjectId": "string",
- "dimensionFilters": [
- {
- "staticDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "memberSelections": [
- {
- "namePath": [
- "string"
], - "excluded": true,
- "dimensionMemberStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}, - "dynamicDimensionFilter": {
- "dimensionId": "string",
- "subjectReferencePath": [
- "string"
], - "dynamicPropertyMappings": [
- {
- "hierarchyPropertyId": "string",
- "userProperty": {
- "name": "string"
}, - "hierarchyPropertyStatus": "Unset"
}
], - "dimensionStatus": "Unset"
}
}
], - "correlationId": "string"
}
]
}
Update shareable security filters
Update shareable security filters. Shareable data access sets let you reuse common populations across multiple permissions.
Authorizations:
headerParameters
| TargetTenantID |
string
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. |
| ProjectID |
string <uuid>
Optionally, specify a project in which to make the request. If omitted, the request uses the production version. |
| NonVersioned |
boolean
If |
