Pipelines
Validate unsaved source
Validates source reader and connector configuration without persisting. Returns 204 on success or 200 with error message on validation failure.
POST
/
pipelines
/
validate-unsaved-source
Validate unsaved source
curl --request POST \
--url https://api.artie.com/pipelines/validate-unsaved-source \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"tables": [
{
"advancedSettings": {
"alias": "<string>",
"backfillFromDatabases": [
"<string>"
],
"backfillFromSchemas": [
"<string>"
],
"bigQueryPartitionSettings": {
"partitionBy": "<string>",
"partitionField": "<string>",
"partitionType": "<string>"
},
"bufferRows": 123,
"columnsToCompress": [
"<string>"
],
"columnsToEncrypt": [
"<string>"
],
"columnsToHash": [
"<string>"
],
"ctidSettings": {
"chunkSize": 1,
"enabled": true,
"maxParallelism": 1
},
"encryptJSONBColumns": true,
"endingPrimaryKey": "<string>",
"excludeColumns": [
"<string>"
],
"flushIntervalSeconds": 123,
"flushSizeKb": 123,
"historyTableBackfillFromSchemas": [
"<string>"
],
"includeColumns": [
"<string>"
],
"k8sRequestCPU": 1,
"k8sRequestMemoryMB": 1,
"mergePredicates": [
{
"partitionBy": "<string>",
"partitionField": "<string>",
"partitionType": "<string>"
}
],
"msmFlushCount": 1,
"primaryKeysOverride": [
"<string>"
],
"rangeSettings": {
"batchSize": 1,
"chunksSize": 1,
"enabled": true,
"maxParallelism": 1
},
"shouldBackfillHistoryTable": true,
"skipBackfill": true,
"skipDelete": true,
"skipNoOpUpdates": true,
"softPartitioning": {
"enabled": true,
"maxPartitions": 123,
"partitionColumn": "<string>",
"partitionFrequency": "<string>",
"partitionSchema": "<string>"
},
"startingPrimaryKey": "<string>",
"streamARN": "<string>",
"unifyAcrossDatabases": true,
"unifyAcrossSchemas": true
},
"backfillStage": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"destinationTableName": "<string>",
"disableReplication": true,
"enableHistoryMode": true,
"historyTableBackfillStage": "<string>",
"historyTableStatus": "<string>",
"individualDeployment": true,
"name": "<string>",
"schema": "<string>",
"status": "<string>",
"updatedAt": "2023-11-07T05:31:56Z",
"uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
],
"validateTables": true,
"dataPlaneName": "<string>",
"dynamoDBBackfillConfig": {
"bucket": "<string>",
"enabled": true,
"exportArn": "<string>",
"optionalFolder": "<string>"
},
"sourceConnector": {
"dataPlaneName": "<string>",
"defaultDatabase": "<string>",
"environmentUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"label": "<string>",
"privateLinkUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"sharedConfig": {},
"snapshotPrivateLinkUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"sshTunnelUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>",
"uuid": "<string>"
},
"sourceReaderUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'import requests
url = "https://api.artie.com/pipelines/validate-unsaved-source"
payload = {
"tables": [
{
"advancedSettings": {
"alias": "<string>",
"backfillFromDatabases": ["<string>"],
"backfillFromSchemas": ["<string>"],
"bigQueryPartitionSettings": {
"partitionBy": "<string>",
"partitionField": "<string>",
"partitionType": "<string>"
},
"bufferRows": 123,
"columnsToCompress": ["<string>"],
"columnsToEncrypt": ["<string>"],
"columnsToHash": ["<string>"],
"ctidSettings": {
"chunkSize": 1,
"enabled": True,
"maxParallelism": 1
},
"encryptJSONBColumns": True,
"endingPrimaryKey": "<string>",
"excludeColumns": ["<string>"],
"flushIntervalSeconds": 123,
"flushSizeKb": 123,
"historyTableBackfillFromSchemas": ["<string>"],
"includeColumns": ["<string>"],
"k8sRequestCPU": 1,
"k8sRequestMemoryMB": 1,
"mergePredicates": [
{
"partitionBy": "<string>",
"partitionField": "<string>",
"partitionType": "<string>"
}
],
"msmFlushCount": 1,
"primaryKeysOverride": ["<string>"],
"rangeSettings": {
"batchSize": 1,
"chunksSize": 1,
"enabled": True,
"maxParallelism": 1
},
"shouldBackfillHistoryTable": True,
"skipBackfill": True,
"skipDelete": True,
"skipNoOpUpdates": True,
"softPartitioning": {
"enabled": True,
"maxPartitions": 123,
"partitionColumn": "<string>",
"partitionFrequency": "<string>",
"partitionSchema": "<string>"
},
"startingPrimaryKey": "<string>",
"streamARN": "<string>",
"unifyAcrossDatabases": True,
"unifyAcrossSchemas": True
},
"backfillStage": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"destinationTableName": "<string>",
"disableReplication": True,
"enableHistoryMode": True,
"historyTableBackfillStage": "<string>",
"historyTableStatus": "<string>",
"individualDeployment": True,
"name": "<string>",
"schema": "<string>",
"status": "<string>",
"updatedAt": "2023-11-07T05:31:56Z",
"uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
],
"validateTables": True,
"dataPlaneName": "<string>",
"dynamoDBBackfillConfig": {
"bucket": "<string>",
"enabled": True,
"exportArn": "<string>",
"optionalFolder": "<string>"
},
"sourceConnector": {
"dataPlaneName": "<string>",
"defaultDatabase": "<string>",
"environmentUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"label": "<string>",
"privateLinkUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"sharedConfig": {},
"snapshotPrivateLinkUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"sshTunnelUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>",
"uuid": "<string>"
},
"sourceReaderUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
tables: [
{
advancedSettings: {
alias: '<string>',
backfillFromDatabases: ['<string>'],
backfillFromSchemas: ['<string>'],
bigQueryPartitionSettings: {partitionBy: '<string>', partitionField: '<string>', partitionType: '<string>'},
bufferRows: 123,
columnsToCompress: ['<string>'],
columnsToEncrypt: ['<string>'],
columnsToHash: ['<string>'],
ctidSettings: {chunkSize: 1, enabled: true, maxParallelism: 1},
encryptJSONBColumns: true,
endingPrimaryKey: '<string>',
excludeColumns: ['<string>'],
flushIntervalSeconds: 123,
flushSizeKb: 123,
historyTableBackfillFromSchemas: ['<string>'],
includeColumns: ['<string>'],
k8sRequestCPU: 1,
k8sRequestMemoryMB: 1,
mergePredicates: [
{partitionBy: '<string>', partitionField: '<string>', partitionType: '<string>'}
],
msmFlushCount: 1,
primaryKeysOverride: ['<string>'],
rangeSettings: {batchSize: 1, chunksSize: 1, enabled: true, maxParallelism: 1},
shouldBackfillHistoryTable: true,
skipBackfill: true,
skipDelete: true,
skipNoOpUpdates: true,
softPartitioning: {
enabled: true,
maxPartitions: 123,
partitionColumn: '<string>',
partitionFrequency: '<string>',
partitionSchema: '<string>'
},
startingPrimaryKey: '<string>',
streamARN: '<string>',
unifyAcrossDatabases: true,
unifyAcrossSchemas: true
},
backfillStage: '<string>',
createdAt: '2023-11-07T05:31:56Z',
destinationTableName: '<string>',
disableReplication: true,
enableHistoryMode: true,
historyTableBackfillStage: '<string>',
historyTableStatus: '<string>',
individualDeployment: true,
name: '<string>',
schema: '<string>',
status: '<string>',
updatedAt: '2023-11-07T05:31:56Z',
uuid: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
}
],
validateTables: true,
dataPlaneName: '<string>',
dynamoDBBackfillConfig: {
bucket: '<string>',
enabled: true,
exportArn: '<string>',
optionalFolder: '<string>'
},
sourceConnector: {
dataPlaneName: '<string>',
defaultDatabase: '<string>',
environmentUUID: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
label: '<string>',
privateLinkUUID: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
sharedConfig: {},
snapshotPrivateLinkUUID: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
sshTunnelUUID: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
type: '<string>',
uuid: '<string>'
},
sourceReaderUUID: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
})
};
fetch('https://api.artie.com/pipelines/validate-unsaved-source', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.artie.com/pipelines/validate-unsaved-source",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'tables' => [
[
'advancedSettings' => [
'alias' => '<string>',
'backfillFromDatabases' => [
'<string>'
],
'backfillFromSchemas' => [
'<string>'
],
'bigQueryPartitionSettings' => [
'partitionBy' => '<string>',
'partitionField' => '<string>',
'partitionType' => '<string>'
],
'bufferRows' => 123,
'columnsToCompress' => [
'<string>'
],
'columnsToEncrypt' => [
'<string>'
],
'columnsToHash' => [
'<string>'
],
'ctidSettings' => [
'chunkSize' => 1,
'enabled' => true,
'maxParallelism' => 1
],
'encryptJSONBColumns' => true,
'endingPrimaryKey' => '<string>',
'excludeColumns' => [
'<string>'
],
'flushIntervalSeconds' => 123,
'flushSizeKb' => 123,
'historyTableBackfillFromSchemas' => [
'<string>'
],
'includeColumns' => [
'<string>'
],
'k8sRequestCPU' => 1,
'k8sRequestMemoryMB' => 1,
'mergePredicates' => [
[
'partitionBy' => '<string>',
'partitionField' => '<string>',
'partitionType' => '<string>'
]
],
'msmFlushCount' => 1,
'primaryKeysOverride' => [
'<string>'
],
'rangeSettings' => [
'batchSize' => 1,
'chunksSize' => 1,
'enabled' => true,
'maxParallelism' => 1
],
'shouldBackfillHistoryTable' => true,
'skipBackfill' => true,
'skipDelete' => true,
'skipNoOpUpdates' => true,
'softPartitioning' => [
'enabled' => true,
'maxPartitions' => 123,
'partitionColumn' => '<string>',
'partitionFrequency' => '<string>',
'partitionSchema' => '<string>'
],
'startingPrimaryKey' => '<string>',
'streamARN' => '<string>',
'unifyAcrossDatabases' => true,
'unifyAcrossSchemas' => true
],
'backfillStage' => '<string>',
'createdAt' => '2023-11-07T05:31:56Z',
'destinationTableName' => '<string>',
'disableReplication' => true,
'enableHistoryMode' => true,
'historyTableBackfillStage' => '<string>',
'historyTableStatus' => '<string>',
'individualDeployment' => true,
'name' => '<string>',
'schema' => '<string>',
'status' => '<string>',
'updatedAt' => '2023-11-07T05:31:56Z',
'uuid' => '3c90c3cc-0d44-4b50-8888-8dd25736052a'
]
],
'validateTables' => true,
'dataPlaneName' => '<string>',
'dynamoDBBackfillConfig' => [
'bucket' => '<string>',
'enabled' => true,
'exportArn' => '<string>',
'optionalFolder' => '<string>'
],
'sourceConnector' => [
'dataPlaneName' => '<string>',
'defaultDatabase' => '<string>',
'environmentUUID' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'label' => '<string>',
'privateLinkUUID' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'sharedConfig' => [
],
'snapshotPrivateLinkUUID' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'sshTunnelUUID' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'type' => '<string>',
'uuid' => '<string>'
],
'sourceReaderUUID' => '3c90c3cc-0d44-4b50-8888-8dd25736052a'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.artie.com/pipelines/validate-unsaved-source"
payload := strings.NewReader("{\n \"tables\": [\n {\n \"advancedSettings\": {\n \"alias\": \"<string>\",\n \"backfillFromDatabases\": [\n \"<string>\"\n ],\n \"backfillFromSchemas\": [\n \"<string>\"\n ],\n \"bigQueryPartitionSettings\": {\n \"partitionBy\": \"<string>\",\n \"partitionField\": \"<string>\",\n \"partitionType\": \"<string>\"\n },\n \"bufferRows\": 123,\n \"columnsToCompress\": [\n \"<string>\"\n ],\n \"columnsToEncrypt\": [\n \"<string>\"\n ],\n \"columnsToHash\": [\n \"<string>\"\n ],\n \"ctidSettings\": {\n \"chunkSize\": 1,\n \"enabled\": true,\n \"maxParallelism\": 1\n },\n \"encryptJSONBColumns\": true,\n \"endingPrimaryKey\": \"<string>\",\n \"excludeColumns\": [\n \"<string>\"\n ],\n \"flushIntervalSeconds\": 123,\n \"flushSizeKb\": 123,\n \"historyTableBackfillFromSchemas\": [\n \"<string>\"\n ],\n \"includeColumns\": [\n \"<string>\"\n ],\n \"k8sRequestCPU\": 1,\n \"k8sRequestMemoryMB\": 1,\n \"mergePredicates\": [\n {\n \"partitionBy\": \"<string>\",\n \"partitionField\": \"<string>\",\n \"partitionType\": \"<string>\"\n }\n ],\n \"msmFlushCount\": 1,\n \"primaryKeysOverride\": [\n \"<string>\"\n ],\n \"rangeSettings\": {\n \"batchSize\": 1,\n \"chunksSize\": 1,\n \"enabled\": true,\n \"maxParallelism\": 1\n },\n \"shouldBackfillHistoryTable\": true,\n \"skipBackfill\": true,\n \"skipDelete\": true,\n \"skipNoOpUpdates\": true,\n \"softPartitioning\": {\n \"enabled\": true,\n \"maxPartitions\": 123,\n \"partitionColumn\": \"<string>\",\n \"partitionFrequency\": \"<string>\",\n \"partitionSchema\": \"<string>\"\n },\n \"startingPrimaryKey\": \"<string>\",\n \"streamARN\": \"<string>\",\n \"unifyAcrossDatabases\": true,\n \"unifyAcrossSchemas\": true\n },\n \"backfillStage\": \"<string>\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"destinationTableName\": \"<string>\",\n \"disableReplication\": true,\n \"enableHistoryMode\": true,\n \"historyTableBackfillStage\": \"<string>\",\n \"historyTableStatus\": \"<string>\",\n \"individualDeployment\": true,\n \"name\": \"<string>\",\n \"schema\": \"<string>\",\n \"status\": \"<string>\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"uuid\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n }\n ],\n \"validateTables\": true,\n \"dataPlaneName\": \"<string>\",\n \"dynamoDBBackfillConfig\": {\n \"bucket\": \"<string>\",\n \"enabled\": true,\n \"exportArn\": \"<string>\",\n \"optionalFolder\": \"<string>\"\n },\n \"sourceConnector\": {\n \"dataPlaneName\": \"<string>\",\n \"defaultDatabase\": \"<string>\",\n \"environmentUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"label\": \"<string>\",\n \"privateLinkUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"sharedConfig\": {},\n \"snapshotPrivateLinkUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"sshTunnelUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"type\": \"<string>\",\n \"uuid\": \"<string>\"\n },\n \"sourceReaderUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.artie.com/pipelines/validate-unsaved-source")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"tables\": [\n {\n \"advancedSettings\": {\n \"alias\": \"<string>\",\n \"backfillFromDatabases\": [\n \"<string>\"\n ],\n \"backfillFromSchemas\": [\n \"<string>\"\n ],\n \"bigQueryPartitionSettings\": {\n \"partitionBy\": \"<string>\",\n \"partitionField\": \"<string>\",\n \"partitionType\": \"<string>\"\n },\n \"bufferRows\": 123,\n \"columnsToCompress\": [\n \"<string>\"\n ],\n \"columnsToEncrypt\": [\n \"<string>\"\n ],\n \"columnsToHash\": [\n \"<string>\"\n ],\n \"ctidSettings\": {\n \"chunkSize\": 1,\n \"enabled\": true,\n \"maxParallelism\": 1\n },\n \"encryptJSONBColumns\": true,\n \"endingPrimaryKey\": \"<string>\",\n \"excludeColumns\": [\n \"<string>\"\n ],\n \"flushIntervalSeconds\": 123,\n \"flushSizeKb\": 123,\n \"historyTableBackfillFromSchemas\": [\n \"<string>\"\n ],\n \"includeColumns\": [\n \"<string>\"\n ],\n \"k8sRequestCPU\": 1,\n \"k8sRequestMemoryMB\": 1,\n \"mergePredicates\": [\n {\n \"partitionBy\": \"<string>\",\n \"partitionField\": \"<string>\",\n \"partitionType\": \"<string>\"\n }\n ],\n \"msmFlushCount\": 1,\n \"primaryKeysOverride\": [\n \"<string>\"\n ],\n \"rangeSettings\": {\n \"batchSize\": 1,\n \"chunksSize\": 1,\n \"enabled\": true,\n \"maxParallelism\": 1\n },\n \"shouldBackfillHistoryTable\": true,\n \"skipBackfill\": true,\n \"skipDelete\": true,\n \"skipNoOpUpdates\": true,\n \"softPartitioning\": {\n \"enabled\": true,\n \"maxPartitions\": 123,\n \"partitionColumn\": \"<string>\",\n \"partitionFrequency\": \"<string>\",\n \"partitionSchema\": \"<string>\"\n },\n \"startingPrimaryKey\": \"<string>\",\n \"streamARN\": \"<string>\",\n \"unifyAcrossDatabases\": true,\n \"unifyAcrossSchemas\": true\n },\n \"backfillStage\": \"<string>\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"destinationTableName\": \"<string>\",\n \"disableReplication\": true,\n \"enableHistoryMode\": true,\n \"historyTableBackfillStage\": \"<string>\",\n \"historyTableStatus\": \"<string>\",\n \"individualDeployment\": true,\n \"name\": \"<string>\",\n \"schema\": \"<string>\",\n \"status\": \"<string>\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"uuid\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n }\n ],\n \"validateTables\": true,\n \"dataPlaneName\": \"<string>\",\n \"dynamoDBBackfillConfig\": {\n \"bucket\": \"<string>\",\n \"enabled\": true,\n \"exportArn\": \"<string>\",\n \"optionalFolder\": \"<string>\"\n },\n \"sourceConnector\": {\n \"dataPlaneName\": \"<string>\",\n \"defaultDatabase\": \"<string>\",\n \"environmentUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"label\": \"<string>\",\n \"privateLinkUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"sharedConfig\": {},\n \"snapshotPrivateLinkUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"sshTunnelUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"type\": \"<string>\",\n \"uuid\": \"<string>\"\n },\n \"sourceReaderUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.artie.com/pipelines/validate-unsaved-source")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"tables\": [\n {\n \"advancedSettings\": {\n \"alias\": \"<string>\",\n \"backfillFromDatabases\": [\n \"<string>\"\n ],\n \"backfillFromSchemas\": [\n \"<string>\"\n ],\n \"bigQueryPartitionSettings\": {\n \"partitionBy\": \"<string>\",\n \"partitionField\": \"<string>\",\n \"partitionType\": \"<string>\"\n },\n \"bufferRows\": 123,\n \"columnsToCompress\": [\n \"<string>\"\n ],\n \"columnsToEncrypt\": [\n \"<string>\"\n ],\n \"columnsToHash\": [\n \"<string>\"\n ],\n \"ctidSettings\": {\n \"chunkSize\": 1,\n \"enabled\": true,\n \"maxParallelism\": 1\n },\n \"encryptJSONBColumns\": true,\n \"endingPrimaryKey\": \"<string>\",\n \"excludeColumns\": [\n \"<string>\"\n ],\n \"flushIntervalSeconds\": 123,\n \"flushSizeKb\": 123,\n \"historyTableBackfillFromSchemas\": [\n \"<string>\"\n ],\n \"includeColumns\": [\n \"<string>\"\n ],\n \"k8sRequestCPU\": 1,\n \"k8sRequestMemoryMB\": 1,\n \"mergePredicates\": [\n {\n \"partitionBy\": \"<string>\",\n \"partitionField\": \"<string>\",\n \"partitionType\": \"<string>\"\n }\n ],\n \"msmFlushCount\": 1,\n \"primaryKeysOverride\": [\n \"<string>\"\n ],\n \"rangeSettings\": {\n \"batchSize\": 1,\n \"chunksSize\": 1,\n \"enabled\": true,\n \"maxParallelism\": 1\n },\n \"shouldBackfillHistoryTable\": true,\n \"skipBackfill\": true,\n \"skipDelete\": true,\n \"skipNoOpUpdates\": true,\n \"softPartitioning\": {\n \"enabled\": true,\n \"maxPartitions\": 123,\n \"partitionColumn\": \"<string>\",\n \"partitionFrequency\": \"<string>\",\n \"partitionSchema\": \"<string>\"\n },\n \"startingPrimaryKey\": \"<string>\",\n \"streamARN\": \"<string>\",\n \"unifyAcrossDatabases\": true,\n \"unifyAcrossSchemas\": true\n },\n \"backfillStage\": \"<string>\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"destinationTableName\": \"<string>\",\n \"disableReplication\": true,\n \"enableHistoryMode\": true,\n \"historyTableBackfillStage\": \"<string>\",\n \"historyTableStatus\": \"<string>\",\n \"individualDeployment\": true,\n \"name\": \"<string>\",\n \"schema\": \"<string>\",\n \"status\": \"<string>\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"uuid\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n }\n ],\n \"validateTables\": true,\n \"dataPlaneName\": \"<string>\",\n \"dynamoDBBackfillConfig\": {\n \"bucket\": \"<string>\",\n \"enabled\": true,\n \"exportArn\": \"<string>\",\n \"optionalFolder\": \"<string>\"\n },\n \"sourceConnector\": {\n \"dataPlaneName\": \"<string>\",\n \"defaultDatabase\": \"<string>\",\n \"environmentUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"label\": \"<string>\",\n \"privateLinkUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"sharedConfig\": {},\n \"snapshotPrivateLinkUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"sshTunnelUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"type\": \"<string>\",\n \"uuid\": \"<string>\"\n },\n \"sourceReaderUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}"
response = http.request(request)
puts response.read_body{
"error": "<string>"
}Authorizations
API key passed as a Bearer token in the Authorization header.
Body
application/json
Response
OK
Was this page helpful?
Previous
Create a PrivateLink connectionCreates a new PrivateLink connection for the authenticated company.
Next
⌘I
Validate unsaved source
curl --request POST \
--url https://api.artie.com/pipelines/validate-unsaved-source \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"tables": [
{
"advancedSettings": {
"alias": "<string>",
"backfillFromDatabases": [
"<string>"
],
"backfillFromSchemas": [
"<string>"
],
"bigQueryPartitionSettings": {
"partitionBy": "<string>",
"partitionField": "<string>",
"partitionType": "<string>"
},
"bufferRows": 123,
"columnsToCompress": [
"<string>"
],
"columnsToEncrypt": [
"<string>"
],
"columnsToHash": [
"<string>"
],
"ctidSettings": {
"chunkSize": 1,
"enabled": true,
"maxParallelism": 1
},
"encryptJSONBColumns": true,
"endingPrimaryKey": "<string>",
"excludeColumns": [
"<string>"
],
"flushIntervalSeconds": 123,
"flushSizeKb": 123,
"historyTableBackfillFromSchemas": [
"<string>"
],
"includeColumns": [
"<string>"
],
"k8sRequestCPU": 1,
"k8sRequestMemoryMB": 1,
"mergePredicates": [
{
"partitionBy": "<string>",
"partitionField": "<string>",
"partitionType": "<string>"
}
],
"msmFlushCount": 1,
"primaryKeysOverride": [
"<string>"
],
"rangeSettings": {
"batchSize": 1,
"chunksSize": 1,
"enabled": true,
"maxParallelism": 1
},
"shouldBackfillHistoryTable": true,
"skipBackfill": true,
"skipDelete": true,
"skipNoOpUpdates": true,
"softPartitioning": {
"enabled": true,
"maxPartitions": 123,
"partitionColumn": "<string>",
"partitionFrequency": "<string>",
"partitionSchema": "<string>"
},
"startingPrimaryKey": "<string>",
"streamARN": "<string>",
"unifyAcrossDatabases": true,
"unifyAcrossSchemas": true
},
"backfillStage": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"destinationTableName": "<string>",
"disableReplication": true,
"enableHistoryMode": true,
"historyTableBackfillStage": "<string>",
"historyTableStatus": "<string>",
"individualDeployment": true,
"name": "<string>",
"schema": "<string>",
"status": "<string>",
"updatedAt": "2023-11-07T05:31:56Z",
"uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
],
"validateTables": true,
"dataPlaneName": "<string>",
"dynamoDBBackfillConfig": {
"bucket": "<string>",
"enabled": true,
"exportArn": "<string>",
"optionalFolder": "<string>"
},
"sourceConnector": {
"dataPlaneName": "<string>",
"defaultDatabase": "<string>",
"environmentUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"label": "<string>",
"privateLinkUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"sharedConfig": {},
"snapshotPrivateLinkUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"sshTunnelUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>",
"uuid": "<string>"
},
"sourceReaderUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
'import requests
url = "https://api.artie.com/pipelines/validate-unsaved-source"
payload = {
"tables": [
{
"advancedSettings": {
"alias": "<string>",
"backfillFromDatabases": ["<string>"],
"backfillFromSchemas": ["<string>"],
"bigQueryPartitionSettings": {
"partitionBy": "<string>",
"partitionField": "<string>",
"partitionType": "<string>"
},
"bufferRows": 123,
"columnsToCompress": ["<string>"],
"columnsToEncrypt": ["<string>"],
"columnsToHash": ["<string>"],
"ctidSettings": {
"chunkSize": 1,
"enabled": True,
"maxParallelism": 1
},
"encryptJSONBColumns": True,
"endingPrimaryKey": "<string>",
"excludeColumns": ["<string>"],
"flushIntervalSeconds": 123,
"flushSizeKb": 123,
"historyTableBackfillFromSchemas": ["<string>"],
"includeColumns": ["<string>"],
"k8sRequestCPU": 1,
"k8sRequestMemoryMB": 1,
"mergePredicates": [
{
"partitionBy": "<string>",
"partitionField": "<string>",
"partitionType": "<string>"
}
],
"msmFlushCount": 1,
"primaryKeysOverride": ["<string>"],
"rangeSettings": {
"batchSize": 1,
"chunksSize": 1,
"enabled": True,
"maxParallelism": 1
},
"shouldBackfillHistoryTable": True,
"skipBackfill": True,
"skipDelete": True,
"skipNoOpUpdates": True,
"softPartitioning": {
"enabled": True,
"maxPartitions": 123,
"partitionColumn": "<string>",
"partitionFrequency": "<string>",
"partitionSchema": "<string>"
},
"startingPrimaryKey": "<string>",
"streamARN": "<string>",
"unifyAcrossDatabases": True,
"unifyAcrossSchemas": True
},
"backfillStage": "<string>",
"createdAt": "2023-11-07T05:31:56Z",
"destinationTableName": "<string>",
"disableReplication": True,
"enableHistoryMode": True,
"historyTableBackfillStage": "<string>",
"historyTableStatus": "<string>",
"individualDeployment": True,
"name": "<string>",
"schema": "<string>",
"status": "<string>",
"updatedAt": "2023-11-07T05:31:56Z",
"uuid": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
],
"validateTables": True,
"dataPlaneName": "<string>",
"dynamoDBBackfillConfig": {
"bucket": "<string>",
"enabled": True,
"exportArn": "<string>",
"optionalFolder": "<string>"
},
"sourceConnector": {
"dataPlaneName": "<string>",
"defaultDatabase": "<string>",
"environmentUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"label": "<string>",
"privateLinkUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"sharedConfig": {},
"snapshotPrivateLinkUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"sshTunnelUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"type": "<string>",
"uuid": "<string>"
},
"sourceReaderUUID": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
tables: [
{
advancedSettings: {
alias: '<string>',
backfillFromDatabases: ['<string>'],
backfillFromSchemas: ['<string>'],
bigQueryPartitionSettings: {partitionBy: '<string>', partitionField: '<string>', partitionType: '<string>'},
bufferRows: 123,
columnsToCompress: ['<string>'],
columnsToEncrypt: ['<string>'],
columnsToHash: ['<string>'],
ctidSettings: {chunkSize: 1, enabled: true, maxParallelism: 1},
encryptJSONBColumns: true,
endingPrimaryKey: '<string>',
excludeColumns: ['<string>'],
flushIntervalSeconds: 123,
flushSizeKb: 123,
historyTableBackfillFromSchemas: ['<string>'],
includeColumns: ['<string>'],
k8sRequestCPU: 1,
k8sRequestMemoryMB: 1,
mergePredicates: [
{partitionBy: '<string>', partitionField: '<string>', partitionType: '<string>'}
],
msmFlushCount: 1,
primaryKeysOverride: ['<string>'],
rangeSettings: {batchSize: 1, chunksSize: 1, enabled: true, maxParallelism: 1},
shouldBackfillHistoryTable: true,
skipBackfill: true,
skipDelete: true,
skipNoOpUpdates: true,
softPartitioning: {
enabled: true,
maxPartitions: 123,
partitionColumn: '<string>',
partitionFrequency: '<string>',
partitionSchema: '<string>'
},
startingPrimaryKey: '<string>',
streamARN: '<string>',
unifyAcrossDatabases: true,
unifyAcrossSchemas: true
},
backfillStage: '<string>',
createdAt: '2023-11-07T05:31:56Z',
destinationTableName: '<string>',
disableReplication: true,
enableHistoryMode: true,
historyTableBackfillStage: '<string>',
historyTableStatus: '<string>',
individualDeployment: true,
name: '<string>',
schema: '<string>',
status: '<string>',
updatedAt: '2023-11-07T05:31:56Z',
uuid: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
}
],
validateTables: true,
dataPlaneName: '<string>',
dynamoDBBackfillConfig: {
bucket: '<string>',
enabled: true,
exportArn: '<string>',
optionalFolder: '<string>'
},
sourceConnector: {
dataPlaneName: '<string>',
defaultDatabase: '<string>',
environmentUUID: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
label: '<string>',
privateLinkUUID: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
sharedConfig: {},
snapshotPrivateLinkUUID: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
sshTunnelUUID: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
type: '<string>',
uuid: '<string>'
},
sourceReaderUUID: '3c90c3cc-0d44-4b50-8888-8dd25736052a'
})
};
fetch('https://api.artie.com/pipelines/validate-unsaved-source', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.artie.com/pipelines/validate-unsaved-source",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'tables' => [
[
'advancedSettings' => [
'alias' => '<string>',
'backfillFromDatabases' => [
'<string>'
],
'backfillFromSchemas' => [
'<string>'
],
'bigQueryPartitionSettings' => [
'partitionBy' => '<string>',
'partitionField' => '<string>',
'partitionType' => '<string>'
],
'bufferRows' => 123,
'columnsToCompress' => [
'<string>'
],
'columnsToEncrypt' => [
'<string>'
],
'columnsToHash' => [
'<string>'
],
'ctidSettings' => [
'chunkSize' => 1,
'enabled' => true,
'maxParallelism' => 1
],
'encryptJSONBColumns' => true,
'endingPrimaryKey' => '<string>',
'excludeColumns' => [
'<string>'
],
'flushIntervalSeconds' => 123,
'flushSizeKb' => 123,
'historyTableBackfillFromSchemas' => [
'<string>'
],
'includeColumns' => [
'<string>'
],
'k8sRequestCPU' => 1,
'k8sRequestMemoryMB' => 1,
'mergePredicates' => [
[
'partitionBy' => '<string>',
'partitionField' => '<string>',
'partitionType' => '<string>'
]
],
'msmFlushCount' => 1,
'primaryKeysOverride' => [
'<string>'
],
'rangeSettings' => [
'batchSize' => 1,
'chunksSize' => 1,
'enabled' => true,
'maxParallelism' => 1
],
'shouldBackfillHistoryTable' => true,
'skipBackfill' => true,
'skipDelete' => true,
'skipNoOpUpdates' => true,
'softPartitioning' => [
'enabled' => true,
'maxPartitions' => 123,
'partitionColumn' => '<string>',
'partitionFrequency' => '<string>',
'partitionSchema' => '<string>'
],
'startingPrimaryKey' => '<string>',
'streamARN' => '<string>',
'unifyAcrossDatabases' => true,
'unifyAcrossSchemas' => true
],
'backfillStage' => '<string>',
'createdAt' => '2023-11-07T05:31:56Z',
'destinationTableName' => '<string>',
'disableReplication' => true,
'enableHistoryMode' => true,
'historyTableBackfillStage' => '<string>',
'historyTableStatus' => '<string>',
'individualDeployment' => true,
'name' => '<string>',
'schema' => '<string>',
'status' => '<string>',
'updatedAt' => '2023-11-07T05:31:56Z',
'uuid' => '3c90c3cc-0d44-4b50-8888-8dd25736052a'
]
],
'validateTables' => true,
'dataPlaneName' => '<string>',
'dynamoDBBackfillConfig' => [
'bucket' => '<string>',
'enabled' => true,
'exportArn' => '<string>',
'optionalFolder' => '<string>'
],
'sourceConnector' => [
'dataPlaneName' => '<string>',
'defaultDatabase' => '<string>',
'environmentUUID' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'label' => '<string>',
'privateLinkUUID' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'sharedConfig' => [
],
'snapshotPrivateLinkUUID' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'sshTunnelUUID' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'type' => '<string>',
'uuid' => '<string>'
],
'sourceReaderUUID' => '3c90c3cc-0d44-4b50-8888-8dd25736052a'
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.artie.com/pipelines/validate-unsaved-source"
payload := strings.NewReader("{\n \"tables\": [\n {\n \"advancedSettings\": {\n \"alias\": \"<string>\",\n \"backfillFromDatabases\": [\n \"<string>\"\n ],\n \"backfillFromSchemas\": [\n \"<string>\"\n ],\n \"bigQueryPartitionSettings\": {\n \"partitionBy\": \"<string>\",\n \"partitionField\": \"<string>\",\n \"partitionType\": \"<string>\"\n },\n \"bufferRows\": 123,\n \"columnsToCompress\": [\n \"<string>\"\n ],\n \"columnsToEncrypt\": [\n \"<string>\"\n ],\n \"columnsToHash\": [\n \"<string>\"\n ],\n \"ctidSettings\": {\n \"chunkSize\": 1,\n \"enabled\": true,\n \"maxParallelism\": 1\n },\n \"encryptJSONBColumns\": true,\n \"endingPrimaryKey\": \"<string>\",\n \"excludeColumns\": [\n \"<string>\"\n ],\n \"flushIntervalSeconds\": 123,\n \"flushSizeKb\": 123,\n \"historyTableBackfillFromSchemas\": [\n \"<string>\"\n ],\n \"includeColumns\": [\n \"<string>\"\n ],\n \"k8sRequestCPU\": 1,\n \"k8sRequestMemoryMB\": 1,\n \"mergePredicates\": [\n {\n \"partitionBy\": \"<string>\",\n \"partitionField\": \"<string>\",\n \"partitionType\": \"<string>\"\n }\n ],\n \"msmFlushCount\": 1,\n \"primaryKeysOverride\": [\n \"<string>\"\n ],\n \"rangeSettings\": {\n \"batchSize\": 1,\n \"chunksSize\": 1,\n \"enabled\": true,\n \"maxParallelism\": 1\n },\n \"shouldBackfillHistoryTable\": true,\n \"skipBackfill\": true,\n \"skipDelete\": true,\n \"skipNoOpUpdates\": true,\n \"softPartitioning\": {\n \"enabled\": true,\n \"maxPartitions\": 123,\n \"partitionColumn\": \"<string>\",\n \"partitionFrequency\": \"<string>\",\n \"partitionSchema\": \"<string>\"\n },\n \"startingPrimaryKey\": \"<string>\",\n \"streamARN\": \"<string>\",\n \"unifyAcrossDatabases\": true,\n \"unifyAcrossSchemas\": true\n },\n \"backfillStage\": \"<string>\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"destinationTableName\": \"<string>\",\n \"disableReplication\": true,\n \"enableHistoryMode\": true,\n \"historyTableBackfillStage\": \"<string>\",\n \"historyTableStatus\": \"<string>\",\n \"individualDeployment\": true,\n \"name\": \"<string>\",\n \"schema\": \"<string>\",\n \"status\": \"<string>\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"uuid\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n }\n ],\n \"validateTables\": true,\n \"dataPlaneName\": \"<string>\",\n \"dynamoDBBackfillConfig\": {\n \"bucket\": \"<string>\",\n \"enabled\": true,\n \"exportArn\": \"<string>\",\n \"optionalFolder\": \"<string>\"\n },\n \"sourceConnector\": {\n \"dataPlaneName\": \"<string>\",\n \"defaultDatabase\": \"<string>\",\n \"environmentUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"label\": \"<string>\",\n \"privateLinkUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"sharedConfig\": {},\n \"snapshotPrivateLinkUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"sshTunnelUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"type\": \"<string>\",\n \"uuid\": \"<string>\"\n },\n \"sourceReaderUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.artie.com/pipelines/validate-unsaved-source")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"tables\": [\n {\n \"advancedSettings\": {\n \"alias\": \"<string>\",\n \"backfillFromDatabases\": [\n \"<string>\"\n ],\n \"backfillFromSchemas\": [\n \"<string>\"\n ],\n \"bigQueryPartitionSettings\": {\n \"partitionBy\": \"<string>\",\n \"partitionField\": \"<string>\",\n \"partitionType\": \"<string>\"\n },\n \"bufferRows\": 123,\n \"columnsToCompress\": [\n \"<string>\"\n ],\n \"columnsToEncrypt\": [\n \"<string>\"\n ],\n \"columnsToHash\": [\n \"<string>\"\n ],\n \"ctidSettings\": {\n \"chunkSize\": 1,\n \"enabled\": true,\n \"maxParallelism\": 1\n },\n \"encryptJSONBColumns\": true,\n \"endingPrimaryKey\": \"<string>\",\n \"excludeColumns\": [\n \"<string>\"\n ],\n \"flushIntervalSeconds\": 123,\n \"flushSizeKb\": 123,\n \"historyTableBackfillFromSchemas\": [\n \"<string>\"\n ],\n \"includeColumns\": [\n \"<string>\"\n ],\n \"k8sRequestCPU\": 1,\n \"k8sRequestMemoryMB\": 1,\n \"mergePredicates\": [\n {\n \"partitionBy\": \"<string>\",\n \"partitionField\": \"<string>\",\n \"partitionType\": \"<string>\"\n }\n ],\n \"msmFlushCount\": 1,\n \"primaryKeysOverride\": [\n \"<string>\"\n ],\n \"rangeSettings\": {\n \"batchSize\": 1,\n \"chunksSize\": 1,\n \"enabled\": true,\n \"maxParallelism\": 1\n },\n \"shouldBackfillHistoryTable\": true,\n \"skipBackfill\": true,\n \"skipDelete\": true,\n \"skipNoOpUpdates\": true,\n \"softPartitioning\": {\n \"enabled\": true,\n \"maxPartitions\": 123,\n \"partitionColumn\": \"<string>\",\n \"partitionFrequency\": \"<string>\",\n \"partitionSchema\": \"<string>\"\n },\n \"startingPrimaryKey\": \"<string>\",\n \"streamARN\": \"<string>\",\n \"unifyAcrossDatabases\": true,\n \"unifyAcrossSchemas\": true\n },\n \"backfillStage\": \"<string>\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"destinationTableName\": \"<string>\",\n \"disableReplication\": true,\n \"enableHistoryMode\": true,\n \"historyTableBackfillStage\": \"<string>\",\n \"historyTableStatus\": \"<string>\",\n \"individualDeployment\": true,\n \"name\": \"<string>\",\n \"schema\": \"<string>\",\n \"status\": \"<string>\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"uuid\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n }\n ],\n \"validateTables\": true,\n \"dataPlaneName\": \"<string>\",\n \"dynamoDBBackfillConfig\": {\n \"bucket\": \"<string>\",\n \"enabled\": true,\n \"exportArn\": \"<string>\",\n \"optionalFolder\": \"<string>\"\n },\n \"sourceConnector\": {\n \"dataPlaneName\": \"<string>\",\n \"defaultDatabase\": \"<string>\",\n \"environmentUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"label\": \"<string>\",\n \"privateLinkUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"sharedConfig\": {},\n \"snapshotPrivateLinkUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"sshTunnelUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"type\": \"<string>\",\n \"uuid\": \"<string>\"\n },\n \"sourceReaderUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.artie.com/pipelines/validate-unsaved-source")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"tables\": [\n {\n \"advancedSettings\": {\n \"alias\": \"<string>\",\n \"backfillFromDatabases\": [\n \"<string>\"\n ],\n \"backfillFromSchemas\": [\n \"<string>\"\n ],\n \"bigQueryPartitionSettings\": {\n \"partitionBy\": \"<string>\",\n \"partitionField\": \"<string>\",\n \"partitionType\": \"<string>\"\n },\n \"bufferRows\": 123,\n \"columnsToCompress\": [\n \"<string>\"\n ],\n \"columnsToEncrypt\": [\n \"<string>\"\n ],\n \"columnsToHash\": [\n \"<string>\"\n ],\n \"ctidSettings\": {\n \"chunkSize\": 1,\n \"enabled\": true,\n \"maxParallelism\": 1\n },\n \"encryptJSONBColumns\": true,\n \"endingPrimaryKey\": \"<string>\",\n \"excludeColumns\": [\n \"<string>\"\n ],\n \"flushIntervalSeconds\": 123,\n \"flushSizeKb\": 123,\n \"historyTableBackfillFromSchemas\": [\n \"<string>\"\n ],\n \"includeColumns\": [\n \"<string>\"\n ],\n \"k8sRequestCPU\": 1,\n \"k8sRequestMemoryMB\": 1,\n \"mergePredicates\": [\n {\n \"partitionBy\": \"<string>\",\n \"partitionField\": \"<string>\",\n \"partitionType\": \"<string>\"\n }\n ],\n \"msmFlushCount\": 1,\n \"primaryKeysOverride\": [\n \"<string>\"\n ],\n \"rangeSettings\": {\n \"batchSize\": 1,\n \"chunksSize\": 1,\n \"enabled\": true,\n \"maxParallelism\": 1\n },\n \"shouldBackfillHistoryTable\": true,\n \"skipBackfill\": true,\n \"skipDelete\": true,\n \"skipNoOpUpdates\": true,\n \"softPartitioning\": {\n \"enabled\": true,\n \"maxPartitions\": 123,\n \"partitionColumn\": \"<string>\",\n \"partitionFrequency\": \"<string>\",\n \"partitionSchema\": \"<string>\"\n },\n \"startingPrimaryKey\": \"<string>\",\n \"streamARN\": \"<string>\",\n \"unifyAcrossDatabases\": true,\n \"unifyAcrossSchemas\": true\n },\n \"backfillStage\": \"<string>\",\n \"createdAt\": \"2023-11-07T05:31:56Z\",\n \"destinationTableName\": \"<string>\",\n \"disableReplication\": true,\n \"enableHistoryMode\": true,\n \"historyTableBackfillStage\": \"<string>\",\n \"historyTableStatus\": \"<string>\",\n \"individualDeployment\": true,\n \"name\": \"<string>\",\n \"schema\": \"<string>\",\n \"status\": \"<string>\",\n \"updatedAt\": \"2023-11-07T05:31:56Z\",\n \"uuid\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n }\n ],\n \"validateTables\": true,\n \"dataPlaneName\": \"<string>\",\n \"dynamoDBBackfillConfig\": {\n \"bucket\": \"<string>\",\n \"enabled\": true,\n \"exportArn\": \"<string>\",\n \"optionalFolder\": \"<string>\"\n },\n \"sourceConnector\": {\n \"dataPlaneName\": \"<string>\",\n \"defaultDatabase\": \"<string>\",\n \"environmentUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"label\": \"<string>\",\n \"privateLinkUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"sharedConfig\": {},\n \"snapshotPrivateLinkUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"sshTunnelUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"type\": \"<string>\",\n \"uuid\": \"<string>\"\n },\n \"sourceReaderUUID\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\"\n}"
response = http.request(request)
puts response.read_body{
"error": "<string>"
}