Visier Data In APIs

Data In APIs for loading data into Visier: Direct Data Intake (DDI), Data Upload, Data Intake, data and job handling, PGP key management, and table sources. 66 operations across 6 tags.

OpenAPI Specification

visier-data-in-apis-openapi.yaml Raw ↑
openapi: 3.0.3
info:
  title: Visier Data In APIs
  description: Visier APIs for sending data to Visier and running data load jobs.
  license:
    name: Apache License, Version 2.0
    url: https://www.apache.org/licenses/LICENSE-2.0
  version: 22222222.99201.3040
paths:
  /v1/api/pgp-keys:
    get:
      tags:
        - PGPKeys
      summary: Retrieve all PGP public keys
      description: Retrieve a list of all PGP public keys in your tenant.
      operationId: PGPKeys_GetAllPGPPublicKeys
      parameters:
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.crypto.PublicKeysDTO'
    post:
      tags:
        - PGPKeys
      summary: Download a public encryption key
      description: "Generate a key pair and retrieve the public key that you can use to encrypt your data to send to Visier. \n \n In the request body, optionally set the UTC expiration date for the key pair in ISO-8601 format. Must be between 2 and 10 years. Default is 2 years."
      operationId: PGPKeys_GeneratePGPKeyPair
      parameters:
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/designer.crypto.KeyPairGenerateRequestDTO'
        required: true
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.crypto.PublicKeyDTO'
  /v1/api/pgp-keys/{keyID}:
    get:
      tags:
        - PGPKeys
      summary: Retrieve a PGP public key using the key ID
      description: If you know your PGP key ID, use it to retrieve the PGP public key. To get a list of all key IDs, see `Retrieve all PGP public keys`.
      operationId: PGPKeys_GetPGPPublicKey
      parameters:
        - name: keyID
          in: path
          description: The key ID of the generated key pair in 16-letter hexadecimal format, including leading zeros.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.crypto.PublicKeyDTO'
    delete:
      tags:
        - PGPKeys
      summary: Delete a PGP key pair
      description: Delete a PGP key pair using a key ID.
      operationId: PGPKeys_DeletePGPKeyPair
      parameters:
        - name: keyID
          in: path
          description: The key ID of the generated key pair in 16-letter hexadecimal format, including leading zeros.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.crypto.KeyPairDeleteResponseDTO'
  /v1/data/directloads/{draftId}/configs:
    get:
      tags:
        - DirectDataIntake
      summary: Get the direct data intake configuration
      description: Get the direct data intake configuration.
      operationId: DirectDataIntake_GetConfig
      parameters:
        - name: draftId
          in: path
          description: The unique identifier of the project to load data into. Currently, the only supported value is `prod` to update the production version.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicing.DirectDataLoadConfigDTO'
    put:
      tags:
        - DirectDataIntake
      summary: Update the direct data intake configuration
      description: "Configure the data intake settings, such as the direct data intake job type. Only provide values for the configuration options that should change.\n\n Configuration options that are not present in the PUT request are ignored and left unchanged."
      operationId: DirectDataIntake_PutConfig
      parameters:
        - name: draftId
          in: path
          description: The unique identifier of the project to load data into. Currently, the only supported value is `prod` to update the production version.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/servicing.DirectDataLoadConfigDTO'
        required: true
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicing.DirectDataLoadConfigDTO'
  /v1/data/directloads/{draftId}/schemas/{objectName}:
    get:
      tags:
        - DirectDataIntake
      summary: Retrieve an object's data load schema
      description: "Gets the load schema for a specified object. The object's load schema represents the structure that the data upload file must follow to upload data to the object.\n\n In the load schema, the listed columns must be present in the data file as column headers and exactly match the load schema (case sensitive), however,  only the columns whose `isMandatory` field is `true` must contain values in the data file."
      operationId: DirectDataIntake_ObjectSchema
      parameters:
        - name: draftId
          in: path
          description: The unique identifier of the project to load data into. Currently, the only supported value is `prod` to update the production version.
          required: true
          schema:
            type: string
        - name: objectName
          in: path
          description: The name of the object to return the load schema for.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicing.DirectDataSchemaDTO'
  /v1/data/directloads/{draftId}/transactions:
    get:
      tags:
        - DirectDataIntake
      summary: Retrieve a list of open transactions
      description: Get a list of all open transactions. Doesn't return committed transactions or rolled back transactions.
      operationId: DirectDataIntake_ListTransactions
      parameters:
        - name: draftId
          in: path
          description: Optionally specify the unique identifier of a project to retrieve open transactions from. Currently, the only supported value is `prod` to retrieve open transactions for the production version.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicing.DirectDataListTransactionsResponseDTO'
    post:
      tags:
        - DirectDataIntake
      summary: Start a direct data intake transaction
      description: "Create a transaction to contain your data files. To upload files to objects in Visier, you must first start a transaction.\n\n After starting a transaction and uploading files to the transaction, you can commit the transaction to process the uploaded files or roll back the transaction to discard the uploaded files."
      operationId: DirectDataIntake_StartTransaction
      parameters:
        - name: draftId
          in: path
          description: The unique identifier of the project to load data into. Currently, the only supported value is `prod` to update the production version.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicing.DirectDataTransactionStartResponseDTO'
  /v1/data/directloads/{draftId}/transactions/{transactionId}:
    get:
      tags:
        - DirectDataIntake
      summary: Check transaction status
      description: Retrieve the status of a committed transaction's processing job.
      operationId: DirectDataIntake_JobStatus
      parameters:
        - name: draftId
          in: path
          description: The unique identifier of the project to load data into. Currently, the only supported value is `prod` to update the production version.
          required: true
          schema:
            type: string
        - name: transactionId
          in: path
          description: The unique identifier of the transaction.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicing.DirectDataJobStatusResponseDTO'
    post:
      tags:
        - DirectDataIntake
      summary: Commit a transaction
      description: "Process a transaction and its uploaded data files. This starts a processing job to load the data files into Visier.\n\n After committing a transaction, you cannot upload additional files to the transaction. Use the `Check transaction status` endpoint to monitor the progress of the processing job."
      operationId: DirectDataIntake_CommitTransaction
      parameters:
        - name: draftId
          in: path
          description: The unique identifier of the project to load data into. Currently, the only supported value is `prod` to update the production version.
          required: true
          schema:
            type: string
        - name: transactionId
          in: path
          description: The unique identifier of the transaction.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicing.DirectDataUploadFileResponseDTO'
    delete:
      tags:
        - DirectDataIntake
      summary: Roll back a transaction
      description: "Rolls back the specified transaction. This discards all files uploaded within the transaction and deletes the transaction.\n\n After rolling back a transaction, you cannot use the transaction to upload data files."
      operationId: DirectDataIntake_RollbackTransaction
      parameters:
        - name: draftId
          in: path
          description: The unique identifier of the project to load data into. Currently, the only supported value is `prod` to update the production version.
          required: true
          schema:
            type: string
        - name: transactionId
          in: path
          description: The unique identifier of the transaction.
          required: true
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicing.DirectDataUploadFileResponseDTO'
  /v1/data/directloads/{draftId}/transactions/{transactionId}/{objectName}/sample-data:
    post:
      tags:
        - DirectDataIntake
      summary: Load sample data
      description: Load sample data in a previously-created transaction. The data is not processed in Visier until you commit the transaction. Sample data is available for `employee`, `employee_exit`, `employment_start`, and `organization_hierarchy`.
      operationId: DirectDataIntake_LoadSampleData
      parameters:
        - name: draftId
          in: path
          required: true
          schema:
            type: string
        - name: transactionId
          in: path
          required: true
          schema:
            type: string
        - name: objectName
          in: path
          required: true
          schema:
            type: string
        - name: sampleName
          in: query
          description: "The name of the target object to load sample data. Sample data is available for:\n * `employee`: The Employee subject.\n * `employee_exit`: The Employee Exit event.\n * `employment_start`: The Employment Start event.\n * `organization_hierarchy`: The Organization Hierarchy dimension."
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/servicing.DirectDataUploadFileResponseDTO'
  /v1/op/data-connector-credentials:
    get:
      tags:
        - DataAndJobHandling
      summary: Retrieve a list of all data connector credentials
      description: "Retrieve a list of the connector credentials in a specified tenant. Connector credentials allow\n Visier to retrieve data from your source systems through an integration user in the source system."
      operationId: DataAndJobHandling_DataConnectorCredentials
      parameters:
        - name: tenantCode
          in: query
          description: The tenant code of a specific analytic tenant that you want to retrieve for.
          schema:
            type: string
        - name: limit
          in: query
          description: The limit to retrieve.
          schema:
            type: integer
            format: int32
        - name: start
          in: query
          description: The index to start retrieving results from, also known as offset. The index begins at 0.
          schema:
            type: integer
            format: int32
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.ExtractorCredentialsAPIDTO'
    post:
      tags:
        - DataAndJobHandling
      summary: Create a connector credential
      description: "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. \n \n In the request body, specify one data provider in the `dataProviderAuthParams` parameter. For example, to create connector credentials for a UKG data connector, your request body might look like the following sample.\n ```json\n {\n   model={\n     \"dataProviderAuthParams\": {\n        \"provider\": \"UKG\",\n        \"ultimateAuthParams\": {\n           \"hostDomainName\": \"exampleHostDomain\",\n           \"apiKey\": \"apiKey1234\",\n           \"username\": \"username1234\",\n           \"password\": \"password1234\",\n           \"userAccessKey\": \"accessKey1234\"\n        }\n     },\n     \"dataProviderBasicInformation\": {\n        \"displayName\": \"exampleDisplayName\",\n        \"description\": \"exampleDescription\"\n     }\n }\n ```"
      operationId: DataAndJobHandling_CreateConnectorCredential
      parameters:
        - name: tenantCode
          in: query
          description: The tenant code of a specific analytic tenant that you want to create the credential for.
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/designer.DataProviderAuthInformationDTO'
        required: true
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.CredentialCreationAPIResponseDTO'
  /v1/op/data-connectors:
    get:
      tags:
        - DataAndJobHandling
      summary: Retrieve a list of all data connectors
      description: "Retrieve a list of the data connectors in a specified tenant. Data connectors are an alternative\n to generating flat files and transferring them to Visier via SFTP."
      operationId: DataAndJobHandling_DataConnectors
      parameters:
        - name: tenantCode
          in: query
          description: The tenant code of a specific analytic tenant that you want to retrieve for.
          schema:
            type: string
        - name: limit
          in: query
          description: The limit to retrieve.
          schema:
            type: integer
            format: int32
        - name: start
          in: query
          description: The index to start retrieving results from, also known as offset. The index begins at 0.
          schema:
            type: integer
            format: int32
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/admin.data.ImportDefinitionsAPIDTO'
  /v1/op/data-connectors/assignCredentials:
    post:
      tags:
        - DataAndJobHandling
      summary: Assign connector credentials to data connectors
      description: Assign a connector credential to a data connector.
      operationId: DataAndJobHandling_AssignConnectorCredential
      parameters:
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/data_in.AssignConnectorCredentialRequest'
        required: true
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/admin.AssignConnectorCredentialsResponseDTO'
  /v1/op/data-connectors/connector-settings:
    get:
      tags:
        - DataAndJobHandling
      summary: Retrieve data connector settings
      description: Get a list of settings for all data connectors. This request retrieves data connectors from the production environment. The response returns a list of settings, if available, for each data connector in the tenant.
      operationId: DataAndJobHandling_ListConnectorSettings
      parameters:
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/admin.ExtractorSettingsAPIDTO'
    put:
      tags:
        - DataAndJobHandling
      summary: Update data connector settings
      description: Define the settings for one or more data connectors. To find the available settings, see `Retrieve data connector settings`.
      operationId: DataAndJobHandling_SetConnectorSetting
      parameters:
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/admin.SetConnectorSettingsRequestDTO'
        required: true
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/admin.SetConnectorSettingsResponseDTO'
  /v1/op/data-sources:
    get:
      tags:
        - DataIntake
      summary: Retrieve a list of sources
      description: "Prior to transferring data to Visier, you must identify the sources you want to target. Sources store data for\n the solution and are used to map data to Visier's data model.\n\n **Note:** To set up sources in your tenant, contact Visier Customer Success.\n This API allows you to query the list of available sources, and identify the source schema and required fields."
      operationId: DataIntake_GetSources
      parameters:
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/designer.PushDataSourceDefinitionsDTO'
  /v1/op/data-transfer-sessions:
    post:
      tags:
        - DataIntake
      summary: Start a transfer session
      description: "Start a new transfer session. A transfer session can include one or more batches of records to be\n sent to Visier. Batches of records may be transferred as JSON or file payloads.\n\n Recommended: For optimal performance, please include all batches of records in a single transfer session."
      operationId: DataIntake_StartTransfer
      parameters:
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      responses:
        default:
          description: Default error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Status'
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/data_in.StartTransferResponse'
  /v1/op/data-transfer-sessions/{transferSessionId}/add:
    put:
      tags:
        - DataIntake
      summary: Transfer data to sources via JSON
      description: "Transfer data to Visier in batches of records. Each request includes a batch of records\n formatted as a comma separated array with the first row containing the column headers in the request body. Each\n subsequent request should also include the first row as a header.\n\n Each request transfers a batch of records to a single source. Transfer sessions may include one or more batches before completion.\n\n Each batch is identified by a sequence number. Sequence numbers help identify any batches  that were delivered incorrectly.\n\n Each batch is limited to the following request size:\n - Batch size limit: 10 MB\n - Record count limit: 300,000 rows"
      operationId: DataIntake_PushData
      parameters:
        - name: transferSessionId
          in: path
          description: The transfer session ID returned after the data transfer session starts.
          required: true
          schema:
            type: string
        - name: sourceId
          in: query
          description: The unique identifier associated with the source you want to transfer data to.
          schema:
            type: string
        - name: sequence
          in: query
          description: The unique sequence number associated with a batch of records.
          schema:
            type: integer
            format: uint32
        - name: tenantCode
          in: query
          description: The code of the tenant you want to transfer data to. For example, WFF_j1r or WFF_j1r~c7o.
          schema:
            type: string
        - name: TargetTenantID
          in: header
          description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
          schema:
            type: string
      requestBody:
        content:
          application/json:
   

# --- truncated at 32 KB (220 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/visier/refs/heads/main/openapi/visier-data-in-apis-openapi.yaml