openapi: 3.2.0
info:
title: Visier Data In Table Source API
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
security:
- ApiKeyAuth: []
BearerAuth: []
- ApiKeyAuth: []
CookieAuth: []
- ApiKeyAuth: []
OAuth2Auth: []
tags:
- name: TableSource
x-displayName: Table Source
description: '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.
<br><br>
**Note:** <em>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.</em>'
paths:
/v1alpha/data/table-sources/tables:
get:
tags:
- TableSource
summary: Retrieve table sources
description: "Retrieve a list of table source configurations. Table sources are SQL-accessible tables that can store and manage data directly within Visier.\n \n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_GetTableSources
parameters:
- name: limit
in: query
description: The maximum number of table sources to return. Default is 100.
schema:
type: integer
format: int32
- name: start
in: query
description: The index to start retrieving results from, also known as offset. The index begins at 0.
schema:
type: integer
format: int32
- name: 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.sqlsource.SqlSourceTableListResponseDTO'
post:
tags:
- TableSource
summary: Create a table source
description: "Create a table source configuration. Table sources define the structure and metadata for SQL-accessible tables in Visier.\n\n When creating objects, assign a unique object name but don't set a UUID. Visier generates UUIDs for new objects.\n \n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_CreateTableSource
parameters:
- name: TargetTenantID
in: header
description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/servicing.sqlsource.SqlSourceTableDTO'
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.sqlsource.SqlSourceTableDTO'
/v1alpha/data/table-sources/tables/{tableId}:
get:
tags:
- TableSource
summary: Retrieve a table source
description: "Retrieve a specific table source configuration by its unique identifier.\n \n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_GetTableSource
parameters:
- name: tableId
in: path
description: The unique identifier of the table source.
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.sqlsource.SqlSourceTableDTO'
put:
tags:
- TableSource
summary: Update a table source
description: "Update an existing table source configuration. Use this to modify the structure, columns, or metadata of a table source.\n \n In `PUT` requests, the definition in your API call replaces the prior definition. You must provide the entire definition in the `PUT` call. If you omit values from the update request, those values are removed from the table source. \n \n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_UpdateTableSource
parameters:
- name: tableId
in: path
description: The unique identifier of the table source to update.
required: true
schema:
type: string
- name: TargetTenantID
in: header
description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/servicing.sqlsource.SqlSourceTableDTO'
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.sqlsource.SqlSourceTableDTO'
delete:
tags:
- TableSource
summary: Delete a table source
description: "Delete a table source configuration. This removes the table source definition but does not delete the associated data.\n \n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_DeleteTableSource
parameters:
- name: tableId
in: path
description: The unique identifier of the table source.
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: {}
/v1alpha/data/table-sources/tables/{tableId}/metadata:
get:
tags:
- TableSource
summary: Retrieve a table source's metadata
description: "Retrieve previously-stored metadata for a table source, such as the key-value pairs to apply to the table if you commit the transaction. To store metadata for a table source, use the `setMetadata` action in `POST /v1alpha/data/table-sources/transactions/{transactionId}/jobs`.\n\n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_GetTableSourceMetadata
parameters:
- name: tableId
in: path
description: The unique identifier of the table source for which to retrieve metadata.
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.sqlsource.SqlSourceGetTableMetadataResponseDTO'
/v1alpha/data/table-sources/tables/{tableId}/regenerate:
post:
tags:
- TableSource
summary: Regenerate a materialized view
description: "Run a SQL job to manually refresh the dataset during troubleshooting, query updates, or when manual data fetching is required.\n\n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_RegenerateMaterializedView
parameters:
- name: tableId
in: path
description: The unique identifier of the table source.
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/data_in.TableSourceRequest'
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.sqlsource.SqlSourceExecuteJobResponseDTO'
/v1alpha/data/table-sources/transactions:
post:
tags:
- TableSource
summary: Start a transaction
description: "Start a transaction for SQL operations on table sources. Transactions provide isolation for multiple operations and allow for rollback if needed.\n\n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_BeginTransaction
parameters:
- name: TargetTenantID
in: header
description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/servicing.sqlsource.SqlSourceBeginTransactionRequestDTO'
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.sqlsource.SqlSourceTransactionStateDTO'
/v1alpha/data/table-sources/transactions/{transactionId}:
get:
tags:
- TableSource
summary: Retrieve a transaction's status
description: "Retrieve the current status and details of a specific transaction. If the transaction was dispatched to analytic tenants, the response includes the status of each analytic tenant's transaction in the `children` field.\n\n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_GetTransaction
parameters:
- name: transactionId
in: path
description: The unique identifier of the transaction.
required: true
schema:
type: string
- name: summaryOnly
in: query
description: If `true`, the response omits the `children` array and returns only the `summary` counts. Use for polling. Default is `false`.
schema:
type: boolean
- name: TargetTenantID
in: header
description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
schema:
type: string
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.sqlsource.SqlSourceTransactionStateDTO'
/v1alpha/data/table-sources/transactions/{transactionId}/extend:
post:
tags:
- TableSource
summary: Extend a transaction's expiry
description: "Extend the expiry time of an open transaction.\n\n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_ExtendTransaction
parameters:
- name: transactionId
in: path
description: The unique identifier of the transaction to extend.
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.sqlsource.SqlSourceExtendTransactionRequestDTO'
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.sqlsource.SqlSourceTransactionStateDTO'
/v1alpha/data/table-sources/transactions/{transactionId}/inputs/{filename}:
put:
tags:
- TableSource
summary: Upload an input file to a transaction
description: "Send input files to a transaction. SQL operations can reference an input file within a job as if it were a local, temporary view. 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.\n \n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_UploadInputFile
parameters:
- name: transactionId
in: path
description: The unique identifier of the transaction.
required: true
schema:
type: string
- name: filename
in: path
description: The name of the file to upload. The input will be accessible with this filename during job execution.
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: {}
requestBody:
content:
multipart/form-data:
schema:
type: object
properties:
file:
type: string
format: binary
description: The input file to upload. The file is accessible during SQL job execution as a temporary view using the provided filename.
/v1alpha/data/table-sources/transactions/{transactionId}/jobs:
post:
tags:
- TableSource
summary: Run a SQL job within a transaction
description: "Execute a SQL job within a transaction. Jobs can contain multiple SQL operations including queries, inserts, updates, deletes, and merge operations.\n \n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_ExecuteJob
parameters:
- 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
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/servicing.sqlsource.SqlSourceExecuteJobRequestDTO'
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.sqlsource.SqlSourceExecuteJobResponseDTO'
/v1alpha/data/table-sources/transactions/{transactionId}/jobs/{jobId}:
get:
tags:
- TableSource
summary: Retrieve a job's status
description: "Retrieve the status of a SQL job and any child jobs spawned from it. Use the job ID returned by `POST /v1alpha/data/table-sources/transactions/{transactionId}/jobs` to retrieve the job's status.\n\n If the job was dispatched across multiple tenants, the response includes per-tenant status details along with aggregated summary counts.\n\n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_GetJobStatus
parameters:
- name: transactionId
in: path
description: The unique identifier of the transaction.
required: true
schema:
type: string
- name: jobId
in: path
description: The unique identifier of the job.
required: true
schema:
type: string
- name: summaryOnly
in: query
description: "If `true`, the response includes the overall status and summary counts,\n and omits per-tenant job statuses. Useful for large multi-tenant jobs. Default is `false`."
schema:
type: boolean
- name: TargetTenantID
in: header
description: Optionally, specify the tenant that you want to execute the API call on. This defines the tenant that you're logged into. If omitted, the request uses the administrating tenant as the login tenant.
schema:
type: string
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.sqlsource.SqlSourceGetJobStatusResponseDTO'
/v1alpha/data/table-sources/transactions/{transactionId}/outputs/{filename}:
get:
tags:
- TableSource
summary: Download an output file from a transaction
description: "Download an output file generated by a SQL operation within a transaction. To generate output files, use the `QUERY` action and `output` parameter in `POST /v1alpha/data/table-sources/transactions/{transactionId}/jobs`.\n\n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_DownloadOutputFile
parameters:
- name: transactionId
in: path
description: The unique identifier of the transaction.
required: true
schema:
type: string
- name: filename
in: path
description: The name of the file to download. This should be the filename specified in an output of an action during job execution.
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: File contents
content:
'*/*':
schema:
type: string
format: binary
/v1alpha/data/table-sources/transactions/{transactionId}/outputs/{filename}/parts:
get:
tags:
- TableSource
summary: List output file parts
description: "List the parts of a multi-part output file. SQL operations generate output files within a transaction. Each part is a complete, self-contained file in the output format. Parts are 0-indexed. For an output with `numberOfParts: 3`, the part numbers are 0, 1, and 2. For large output files, download by file part for better performance.\n\n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_ListOutputFileParts
parameters:
- name: transactionId
in: path
description: The unique identifier of the transaction.
required: true
schema:
type: string
- name: filename
in: path
description: The name of the output file to list parts 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.sqlsource.SqlSourceListOutputFilePartsResponseDTO'
/v1alpha/data/table-sources/transactions/{transactionId}/outputs/{filename}/parts/{partIndex}:
get:
tags:
- TableSource
summary: Download an output file part
description: "Download a single part of a multi-part output file. SQL operations generate output files within a transaction. Each part is a complete, self-contained file in the output format. Parts are 0-indexed. For an output with `numberOfParts: 3`, the part numbers are 0, 1, and 2. For large output files, download by file part for better performance.\n\n <br>**Note**: <em>This API is in **alpha**. While in alpha, APIs may change in a breaking way without notice; functionality may be removed, and no deprecation notices will be issued.\n If you are interested in using this API, please contact your Customer Success Manager (CSM).</em>"
operationId: TableSource_DownloadOutputFilePart
parameters:
- name: transactionId
in: path
description: The unique identifier of the transaction.
required: true
schema:
type: string
- name: filename
in: path
description: The name of the output file to download a part of.
required: true
schema:
type: string
- name: partIndex
in: path
description: The zero-based index of the part to download.
required: true
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: File contents
content:
'*/*':
schema:
type: string
format: binary
components:
schemas:
servicing.sqlsource.SqlSourceGetTableMetadataResponseDTO:
type: object
properties:
tableId:
type: string
description: The unique identifier of the table.
transactionId:
type: string
description: The unique identifier of the transaction for which the metadata was retrieved, if applicable.
metadata:
type: object
additionalProperties:
type: string
description: The table's key-value pairs that were set by previously-executed jobs or previously-committed transactions.
recordCount:
type: string
description: The number of records in the table. Not included for inherited tables if `filterInheritedDataByTenant` is `true`.
recordsUpdatedAt:
type: string
description: The timestamp when the table records were last updated in ISO 8601 format. Not included in the response if no data is loaded.
dataFilesSizeBytes:
type: string
description: The table's data files size in bytes. Not included in the response if `filterInheritedDataByTenant` is `true`.
servicing.sqlsource.SqlSourceListOutputFilePartsResponseDTO:
type: object
properties:
transactionId:
type: string
description: The transaction ID the output file belongs to.
filename:
type: string
description: The name of the output file.
numberOfParts:
type: integer
description: The number of parts that are available for the output file. The parts are numbered from 0 up to (but not including) this number.
format: int32
servicing.SynonymListDTO:
type: object
properties:
synonyms:
type: array
items:
type: string
description: Alternative words or phrases for the object.
description: The object's synonyms.
servicing.sqlsource.SqlSourceGetJobStatusResponseDTO:
type: object
properties:
status:
enum:
- UNKNOWN
- PENDING
- RUNNING
- SUCCEEDED
- FAILED
type: string
description: The overall status of the jobs, including children of the requested job.
format: enum
summary:
allOf:
- $ref: '#/components/schemas/servicing.sqlsource.SqlSourceJobStatusSummaryDTO'
description: Summary of job statuses for SQL jobs.
processingSummary:
allOf:
- $ref: '#/components/schemas/servicing.sqlsource.SqlSourceJobStatusSummaryDTO'
description: Summary of job status for processing jobs (if any were created).
tenants:
type: array
items:
$ref: '#/components/schemas/servicing.sqlsource.SqlSourceTenantJobStatusDTO'
description: Status information for each tenant.
jobId:
type: string
description: The ID of the requested job.
data_in.TableSourceRequest:
# --- truncated at 32 KB (58 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/visier/refs/heads/main/openapi/visier-tablesource-api-openapi.yml