Create ClickPipe
This endpoint is in beta. API contract is stable, and no breaking changes are expected in the future.
Create a new ClickPipe.
POST
/
v1
/
organizations
/
{organizationId}
/
services
/
{serviceId}
/
clickpipes
Create ClickPipe
curl --request POST \
--url https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"source": {
"kafka": {
"brokers": "<string>",
"topics": "<string>",
"consumerGroup": "my-clickpipe-consumer-group",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"offset": {
"timestamp": "2021-01-01T00:00"
},
"schemaRegistry": {
"url": "https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004",
"authentication": "PLAIN",
"caCertificate": "<string>",
"credentials": {
"username": "<string>",
"password": "<string>"
}
},
"caCertificate": "<string>",
"reversePrivateEndpointIds": [
"<string>"
],
"credentials": {
"username": "<string>",
"password": "<string>"
}
},
"objectStorage": {
"url": "https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz",
"delimiter": ",",
"compression": "auto",
"isContinuous": true,
"queueUrl": "https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"connectionString": "DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net",
"path": "data/logs/*.json",
"azureContainerName": "mycontainer",
"accessKey": {
"accessKeyId": "<string>",
"secretKey": "<string>"
}
},
"kinesis": {
"streamName": "my-stream",
"region": "us-east-1",
"useEnhancedFanOut": true,
"timestamp": 1615766400,
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"accessKey": {
"accessKeyId": "<string>",
"secretKey": "<string>"
}
},
"postgres": {
"host": "<string>",
"port": 123,
"database": "<string>",
"settings": {
"syncIntervalSeconds": 123,
"pullBatchSize": 123,
"publicationName": "<string>",
"replicationSlotName": "<string>",
"allowNullableColumns": true,
"initialLoadParallelism": 123,
"snapshotNumRowsPerPartition": 123,
"snapshotNumberOfParallelTables": 123,
"enableFailoverSlots": true
},
"tableMappings": [
{
"sourceSchemaName": "<string>",
"sourceTable": "<string>",
"targetTable": "<string>",
"excludedColumns": [
"<string>"
],
"useCustomSortingKey": true,
"sortingKeys": [
"<string>"
]
}
],
"credentials": {
"username": "<string>",
"password": "<string>"
}
},
"validateSamples": true
},
"destination": {
"database": "<string>",
"table": "<string>",
"managedTable": true,
"tableDefinition": {
"engine": {
"versionColumnId": "<string>",
"columnIds": [
"<string>"
]
},
"sortingKey": [
"<string>"
],
"partitionBy": "<string>",
"primaryKey": "<string>"
},
"columns": [
{
"name": "<string>",
"type": "<string>"
}
],
"roles": [
"<string>"
]
},
"fieldMappings": [
{
"sourceField": "<string>",
"destinationField": "<string>"
}
],
"scaling": {
"replicas": 123,
"concurrency": 123,
"replicaCpuMillicores": 1062,
"replicaMemoryGb": 4.25
},
"settings": {
"streaming_max_insert_wait_ms": 5000,
"object_storage_concurrency": 1,
"object_storage_polling_interval_ms": 30000,
"object_storage_max_insert_bytes": 10737418240,
"object_storage_max_file_count": 100,
"clickhouse_max_threads": 8,
"clickhouse_max_insert_threads": 1,
"clickhouse_min_insert_block_size_bytes": 1073741824,
"clickhouse_max_download_threads": 4,
"clickhouse_parallel_distributed_insert_select": 2,
"object_storage_use_cluster_function": true,
"clickhouse_parallel_view_processing": false
}
}
'import requests
url = "https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes"
payload = {
"name": "<string>",
"source": {
"kafka": {
"brokers": "<string>",
"topics": "<string>",
"consumerGroup": "my-clickpipe-consumer-group",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"offset": { "timestamp": "2021-01-01T00:00" },
"schemaRegistry": {
"url": "https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004",
"authentication": "PLAIN",
"caCertificate": "<string>",
"credentials": {
"username": "<string>",
"password": "<string>"
}
},
"caCertificate": "<string>",
"reversePrivateEndpointIds": ["<string>"],
"credentials": {
"username": "<string>",
"password": "<string>"
}
},
"objectStorage": {
"url": "https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz",
"delimiter": ",",
"compression": "auto",
"isContinuous": True,
"queueUrl": "https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"connectionString": "DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net",
"path": "data/logs/*.json",
"azureContainerName": "mycontainer",
"accessKey": {
"accessKeyId": "<string>",
"secretKey": "<string>"
}
},
"kinesis": {
"streamName": "my-stream",
"region": "us-east-1",
"useEnhancedFanOut": True,
"timestamp": 1615766400,
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"accessKey": {
"accessKeyId": "<string>",
"secretKey": "<string>"
}
},
"postgres": {
"host": "<string>",
"port": 123,
"database": "<string>",
"settings": {
"syncIntervalSeconds": 123,
"pullBatchSize": 123,
"publicationName": "<string>",
"replicationSlotName": "<string>",
"allowNullableColumns": True,
"initialLoadParallelism": 123,
"snapshotNumRowsPerPartition": 123,
"snapshotNumberOfParallelTables": 123,
"enableFailoverSlots": True
},
"tableMappings": [
{
"sourceSchemaName": "<string>",
"sourceTable": "<string>",
"targetTable": "<string>",
"excludedColumns": ["<string>"],
"useCustomSortingKey": True,
"sortingKeys": ["<string>"]
}
],
"credentials": {
"username": "<string>",
"password": "<string>"
}
},
"validateSamples": True
},
"destination": {
"database": "<string>",
"table": "<string>",
"managedTable": True,
"tableDefinition": {
"engine": {
"versionColumnId": "<string>",
"columnIds": ["<string>"]
},
"sortingKey": ["<string>"],
"partitionBy": "<string>",
"primaryKey": "<string>"
},
"columns": [
{
"name": "<string>",
"type": "<string>"
}
],
"roles": ["<string>"]
},
"fieldMappings": [
{
"sourceField": "<string>",
"destinationField": "<string>"
}
],
"scaling": {
"replicas": 123,
"concurrency": 123,
"replicaCpuMillicores": 1062,
"replicaMemoryGb": 4.25
},
"settings": {
"streaming_max_insert_wait_ms": 5000,
"object_storage_concurrency": 1,
"object_storage_polling_interval_ms": 30000,
"object_storage_max_insert_bytes": 10737418240,
"object_storage_max_file_count": 100,
"clickhouse_max_threads": 8,
"clickhouse_max_insert_threads": 1,
"clickhouse_min_insert_block_size_bytes": 1073741824,
"clickhouse_max_download_threads": 4,
"clickhouse_parallel_distributed_insert_select": 2,
"object_storage_use_cluster_function": True,
"clickhouse_parallel_view_processing": False
}
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
source: {
kafka: {
brokers: '<string>',
topics: '<string>',
consumerGroup: 'my-clickpipe-consumer-group',
iamRole: 'arn:aws:iam::123456789012:role/MyRole',
offset: {timestamp: '2021-01-01T00:00'},
schemaRegistry: {
url: 'https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004',
authentication: 'PLAIN',
caCertificate: '<string>',
credentials: {username: '<string>', password: '<string>'}
},
caCertificate: '<string>',
reversePrivateEndpointIds: ['<string>'],
credentials: {username: '<string>', password: '<string>'}
},
objectStorage: {
url: 'https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz',
delimiter: ',',
compression: 'auto',
isContinuous: true,
queueUrl: 'https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue',
iamRole: 'arn:aws:iam::123456789012:role/MyRole',
connectionString: 'DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net',
path: 'data/logs/*.json',
azureContainerName: 'mycontainer',
accessKey: {accessKeyId: '<string>', secretKey: '<string>'}
},
kinesis: {
streamName: 'my-stream',
region: 'us-east-1',
useEnhancedFanOut: true,
timestamp: 1615766400,
iamRole: 'arn:aws:iam::123456789012:role/MyRole',
accessKey: {accessKeyId: '<string>', secretKey: '<string>'}
},
postgres: {
host: '<string>',
port: 123,
database: '<string>',
settings: {
syncIntervalSeconds: 123,
pullBatchSize: 123,
publicationName: '<string>',
replicationSlotName: '<string>',
allowNullableColumns: true,
initialLoadParallelism: 123,
snapshotNumRowsPerPartition: 123,
snapshotNumberOfParallelTables: 123,
enableFailoverSlots: true
},
tableMappings: [
{
sourceSchemaName: '<string>',
sourceTable: '<string>',
targetTable: '<string>',
excludedColumns: ['<string>'],
useCustomSortingKey: true,
sortingKeys: ['<string>']
}
],
credentials: {username: '<string>', password: '<string>'}
},
validateSamples: true
},
destination: {
database: '<string>',
table: '<string>',
managedTable: true,
tableDefinition: {
engine: {versionColumnId: '<string>', columnIds: ['<string>']},
sortingKey: ['<string>'],
partitionBy: '<string>',
primaryKey: '<string>'
},
columns: [{name: '<string>', type: '<string>'}],
roles: ['<string>']
},
fieldMappings: [{sourceField: '<string>', destinationField: '<string>'}],
scaling: {
replicas: 123,
concurrency: 123,
replicaCpuMillicores: 1062,
replicaMemoryGb: 4.25
},
settings: {
streaming_max_insert_wait_ms: 5000,
object_storage_concurrency: 1,
object_storage_polling_interval_ms: 30000,
object_storage_max_insert_bytes: 10737418240,
object_storage_max_file_count: 100,
clickhouse_max_threads: 8,
clickhouse_max_insert_threads: 1,
clickhouse_min_insert_block_size_bytes: 1073741824,
clickhouse_max_download_threads: 4,
clickhouse_parallel_distributed_insert_select: 2,
object_storage_use_cluster_function: true,
clickhouse_parallel_view_processing: false
}
})
};
fetch('https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes', 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.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes",
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([
'name' => '<string>',
'source' => [
'kafka' => [
'brokers' => '<string>',
'topics' => '<string>',
'consumerGroup' => 'my-clickpipe-consumer-group',
'iamRole' => 'arn:aws:iam::123456789012:role/MyRole',
'offset' => [
'timestamp' => '2021-01-01T00:00'
],
'schemaRegistry' => [
'url' => 'https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004',
'authentication' => 'PLAIN',
'caCertificate' => '<string>',
'credentials' => [
'username' => '<string>',
'password' => '<string>'
]
],
'caCertificate' => '<string>',
'reversePrivateEndpointIds' => [
'<string>'
],
'credentials' => [
'username' => '<string>',
'password' => '<string>'
]
],
'objectStorage' => [
'url' => 'https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz',
'delimiter' => ',',
'compression' => 'auto',
'isContinuous' => true,
'queueUrl' => 'https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue',
'iamRole' => 'arn:aws:iam::123456789012:role/MyRole',
'connectionString' => 'DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net',
'path' => 'data/logs/*.json',
'azureContainerName' => 'mycontainer',
'accessKey' => [
'accessKeyId' => '<string>',
'secretKey' => '<string>'
]
],
'kinesis' => [
'streamName' => 'my-stream',
'region' => 'us-east-1',
'useEnhancedFanOut' => true,
'timestamp' => 1615766400,
'iamRole' => 'arn:aws:iam::123456789012:role/MyRole',
'accessKey' => [
'accessKeyId' => '<string>',
'secretKey' => '<string>'
]
],
'postgres' => [
'host' => '<string>',
'port' => 123,
'database' => '<string>',
'settings' => [
'syncIntervalSeconds' => 123,
'pullBatchSize' => 123,
'publicationName' => '<string>',
'replicationSlotName' => '<string>',
'allowNullableColumns' => true,
'initialLoadParallelism' => 123,
'snapshotNumRowsPerPartition' => 123,
'snapshotNumberOfParallelTables' => 123,
'enableFailoverSlots' => true
],
'tableMappings' => [
[
'sourceSchemaName' => '<string>',
'sourceTable' => '<string>',
'targetTable' => '<string>',
'excludedColumns' => [
'<string>'
],
'useCustomSortingKey' => true,
'sortingKeys' => [
'<string>'
]
]
],
'credentials' => [
'username' => '<string>',
'password' => '<string>'
]
],
'validateSamples' => true
],
'destination' => [
'database' => '<string>',
'table' => '<string>',
'managedTable' => true,
'tableDefinition' => [
'engine' => [
'versionColumnId' => '<string>',
'columnIds' => [
'<string>'
]
],
'sortingKey' => [
'<string>'
],
'partitionBy' => '<string>',
'primaryKey' => '<string>'
],
'columns' => [
[
'name' => '<string>',
'type' => '<string>'
]
],
'roles' => [
'<string>'
]
],
'fieldMappings' => [
[
'sourceField' => '<string>',
'destinationField' => '<string>'
]
],
'scaling' => [
'replicas' => 123,
'concurrency' => 123,
'replicaCpuMillicores' => 1062,
'replicaMemoryGb' => 4.25
],
'settings' => [
'streaming_max_insert_wait_ms' => 5000,
'object_storage_concurrency' => 1,
'object_storage_polling_interval_ms' => 30000,
'object_storage_max_insert_bytes' => 10737418240,
'object_storage_max_file_count' => 100,
'clickhouse_max_threads' => 8,
'clickhouse_max_insert_threads' => 1,
'clickhouse_min_insert_block_size_bytes' => 1073741824,
'clickhouse_max_download_threads' => 4,
'clickhouse_parallel_distributed_insert_select' => 2,
'object_storage_use_cluster_function' => true,
'clickhouse_parallel_view_processing' => false
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"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.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"source\": {\n \"kafka\": {\n \"brokers\": \"<string>\",\n \"topics\": \"<string>\",\n \"consumerGroup\": \"my-clickpipe-consumer-group\",\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"offset\": {\n \"timestamp\": \"2021-01-01T00:00\"\n },\n \"schemaRegistry\": {\n \"url\": \"https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004\",\n \"authentication\": \"PLAIN\",\n \"caCertificate\": \"<string>\",\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"caCertificate\": \"<string>\",\n \"reversePrivateEndpointIds\": [\n \"<string>\"\n ],\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"objectStorage\": {\n \"url\": \"https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz\",\n \"delimiter\": \",\",\n \"compression\": \"auto\",\n \"isContinuous\": true,\n \"queueUrl\": \"https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue\",\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"connectionString\": \"DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net\",\n \"path\": \"data/logs/*.json\",\n \"azureContainerName\": \"mycontainer\",\n \"accessKey\": {\n \"accessKeyId\": \"<string>\",\n \"secretKey\": \"<string>\"\n }\n },\n \"kinesis\": {\n \"streamName\": \"my-stream\",\n \"region\": \"us-east-1\",\n \"useEnhancedFanOut\": true,\n \"timestamp\": 1615766400,\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"accessKey\": {\n \"accessKeyId\": \"<string>\",\n \"secretKey\": \"<string>\"\n }\n },\n \"postgres\": {\n \"host\": \"<string>\",\n \"port\": 123,\n \"database\": \"<string>\",\n \"settings\": {\n \"syncIntervalSeconds\": 123,\n \"pullBatchSize\": 123,\n \"publicationName\": \"<string>\",\n \"replicationSlotName\": \"<string>\",\n \"allowNullableColumns\": true,\n \"initialLoadParallelism\": 123,\n \"snapshotNumRowsPerPartition\": 123,\n \"snapshotNumberOfParallelTables\": 123,\n \"enableFailoverSlots\": true\n },\n \"tableMappings\": [\n {\n \"sourceSchemaName\": \"<string>\",\n \"sourceTable\": \"<string>\",\n \"targetTable\": \"<string>\",\n \"excludedColumns\": [\n \"<string>\"\n ],\n \"useCustomSortingKey\": true,\n \"sortingKeys\": [\n \"<string>\"\n ]\n }\n ],\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"validateSamples\": true\n },\n \"destination\": {\n \"database\": \"<string>\",\n \"table\": \"<string>\",\n \"managedTable\": true,\n \"tableDefinition\": {\n \"engine\": {\n \"versionColumnId\": \"<string>\",\n \"columnIds\": [\n \"<string>\"\n ]\n },\n \"sortingKey\": [\n \"<string>\"\n ],\n \"partitionBy\": \"<string>\",\n \"primaryKey\": \"<string>\"\n },\n \"columns\": [\n {\n \"name\": \"<string>\",\n \"type\": \"<string>\"\n }\n ],\n \"roles\": [\n \"<string>\"\n ]\n },\n \"fieldMappings\": [\n {\n \"sourceField\": \"<string>\",\n \"destinationField\": \"<string>\"\n }\n ],\n \"scaling\": {\n \"replicas\": 123,\n \"concurrency\": 123,\n \"replicaCpuMillicores\": 1062,\n \"replicaMemoryGb\": 4.25\n },\n \"settings\": {\n \"streaming_max_insert_wait_ms\": 5000,\n \"object_storage_concurrency\": 1,\n \"object_storage_polling_interval_ms\": 30000,\n \"object_storage_max_insert_bytes\": 10737418240,\n \"object_storage_max_file_count\": 100,\n \"clickhouse_max_threads\": 8,\n \"clickhouse_max_insert_threads\": 1,\n \"clickhouse_min_insert_block_size_bytes\": 1073741824,\n \"clickhouse_max_download_threads\": 4,\n \"clickhouse_parallel_distributed_insert_select\": 2,\n \"object_storage_use_cluster_function\": true,\n \"clickhouse_parallel_view_processing\": false\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"source\": {\n \"kafka\": {\n \"brokers\": \"<string>\",\n \"topics\": \"<string>\",\n \"consumerGroup\": \"my-clickpipe-consumer-group\",\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"offset\": {\n \"timestamp\": \"2021-01-01T00:00\"\n },\n \"schemaRegistry\": {\n \"url\": \"https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004\",\n \"authentication\": \"PLAIN\",\n \"caCertificate\": \"<string>\",\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"caCertificate\": \"<string>\",\n \"reversePrivateEndpointIds\": [\n \"<string>\"\n ],\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"objectStorage\": {\n \"url\": \"https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz\",\n \"delimiter\": \",\",\n \"compression\": \"auto\",\n \"isContinuous\": true,\n \"queueUrl\": \"https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue\",\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"connectionString\": \"DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net\",\n \"path\": \"data/logs/*.json\",\n \"azureContainerName\": \"mycontainer\",\n \"accessKey\": {\n \"accessKeyId\": \"<string>\",\n \"secretKey\": \"<string>\"\n }\n },\n \"kinesis\": {\n \"streamName\": \"my-stream\",\n \"region\": \"us-east-1\",\n \"useEnhancedFanOut\": true,\n \"timestamp\": 1615766400,\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"accessKey\": {\n \"accessKeyId\": \"<string>\",\n \"secretKey\": \"<string>\"\n }\n },\n \"postgres\": {\n \"host\": \"<string>\",\n \"port\": 123,\n \"database\": \"<string>\",\n \"settings\": {\n \"syncIntervalSeconds\": 123,\n \"pullBatchSize\": 123,\n \"publicationName\": \"<string>\",\n \"replicationSlotName\": \"<string>\",\n \"allowNullableColumns\": true,\n \"initialLoadParallelism\": 123,\n \"snapshotNumRowsPerPartition\": 123,\n \"snapshotNumberOfParallelTables\": 123,\n \"enableFailoverSlots\": true\n },\n \"tableMappings\": [\n {\n \"sourceSchemaName\": \"<string>\",\n \"sourceTable\": \"<string>\",\n \"targetTable\": \"<string>\",\n \"excludedColumns\": [\n \"<string>\"\n ],\n \"useCustomSortingKey\": true,\n \"sortingKeys\": [\n \"<string>\"\n ]\n }\n ],\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"validateSamples\": true\n },\n \"destination\": {\n \"database\": \"<string>\",\n \"table\": \"<string>\",\n \"managedTable\": true,\n \"tableDefinition\": {\n \"engine\": {\n \"versionColumnId\": \"<string>\",\n \"columnIds\": [\n \"<string>\"\n ]\n },\n \"sortingKey\": [\n \"<string>\"\n ],\n \"partitionBy\": \"<string>\",\n \"primaryKey\": \"<string>\"\n },\n \"columns\": [\n {\n \"name\": \"<string>\",\n \"type\": \"<string>\"\n }\n ],\n \"roles\": [\n \"<string>\"\n ]\n },\n \"fieldMappings\": [\n {\n \"sourceField\": \"<string>\",\n \"destinationField\": \"<string>\"\n }\n ],\n \"scaling\": {\n \"replicas\": 123,\n \"concurrency\": 123,\n \"replicaCpuMillicores\": 1062,\n \"replicaMemoryGb\": 4.25\n },\n \"settings\": {\n \"streaming_max_insert_wait_ms\": 5000,\n \"object_storage_concurrency\": 1,\n \"object_storage_polling_interval_ms\": 30000,\n \"object_storage_max_insert_bytes\": 10737418240,\n \"object_storage_max_file_count\": 100,\n \"clickhouse_max_threads\": 8,\n \"clickhouse_max_insert_threads\": 1,\n \"clickhouse_min_insert_block_size_bytes\": 1073741824,\n \"clickhouse_max_download_threads\": 4,\n \"clickhouse_parallel_distributed_insert_select\": 2,\n \"object_storage_use_cluster_function\": true,\n \"clickhouse_parallel_view_processing\": false\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"source\": {\n \"kafka\": {\n \"brokers\": \"<string>\",\n \"topics\": \"<string>\",\n \"consumerGroup\": \"my-clickpipe-consumer-group\",\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"offset\": {\n \"timestamp\": \"2021-01-01T00:00\"\n },\n \"schemaRegistry\": {\n \"url\": \"https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004\",\n \"authentication\": \"PLAIN\",\n \"caCertificate\": \"<string>\",\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"caCertificate\": \"<string>\",\n \"reversePrivateEndpointIds\": [\n \"<string>\"\n ],\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"objectStorage\": {\n \"url\": \"https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz\",\n \"delimiter\": \",\",\n \"compression\": \"auto\",\n \"isContinuous\": true,\n \"queueUrl\": \"https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue\",\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"connectionString\": \"DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net\",\n \"path\": \"data/logs/*.json\",\n \"azureContainerName\": \"mycontainer\",\n \"accessKey\": {\n \"accessKeyId\": \"<string>\",\n \"secretKey\": \"<string>\"\n }\n },\n \"kinesis\": {\n \"streamName\": \"my-stream\",\n \"region\": \"us-east-1\",\n \"useEnhancedFanOut\": true,\n \"timestamp\": 1615766400,\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"accessKey\": {\n \"accessKeyId\": \"<string>\",\n \"secretKey\": \"<string>\"\n }\n },\n \"postgres\": {\n \"host\": \"<string>\",\n \"port\": 123,\n \"database\": \"<string>\",\n \"settings\": {\n \"syncIntervalSeconds\": 123,\n \"pullBatchSize\": 123,\n \"publicationName\": \"<string>\",\n \"replicationSlotName\": \"<string>\",\n \"allowNullableColumns\": true,\n \"initialLoadParallelism\": 123,\n \"snapshotNumRowsPerPartition\": 123,\n \"snapshotNumberOfParallelTables\": 123,\n \"enableFailoverSlots\": true\n },\n \"tableMappings\": [\n {\n \"sourceSchemaName\": \"<string>\",\n \"sourceTable\": \"<string>\",\n \"targetTable\": \"<string>\",\n \"excludedColumns\": [\n \"<string>\"\n ],\n \"useCustomSortingKey\": true,\n \"sortingKeys\": [\n \"<string>\"\n ]\n }\n ],\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"validateSamples\": true\n },\n \"destination\": {\n \"database\": \"<string>\",\n \"table\": \"<string>\",\n \"managedTable\": true,\n \"tableDefinition\": {\n \"engine\": {\n \"versionColumnId\": \"<string>\",\n \"columnIds\": [\n \"<string>\"\n ]\n },\n \"sortingKey\": [\n \"<string>\"\n ],\n \"partitionBy\": \"<string>\",\n \"primaryKey\": \"<string>\"\n },\n \"columns\": [\n {\n \"name\": \"<string>\",\n \"type\": \"<string>\"\n }\n ],\n \"roles\": [\n \"<string>\"\n ]\n },\n \"fieldMappings\": [\n {\n \"sourceField\": \"<string>\",\n \"destinationField\": \"<string>\"\n }\n ],\n \"scaling\": {\n \"replicas\": 123,\n \"concurrency\": 123,\n \"replicaCpuMillicores\": 1062,\n \"replicaMemoryGb\": 4.25\n },\n \"settings\": {\n \"streaming_max_insert_wait_ms\": 5000,\n \"object_storage_concurrency\": 1,\n \"object_storage_polling_interval_ms\": 30000,\n \"object_storage_max_insert_bytes\": 10737418240,\n \"object_storage_max_file_count\": 100,\n \"clickhouse_max_threads\": 8,\n \"clickhouse_max_insert_threads\": 1,\n \"clickhouse_min_insert_block_size_bytes\": 1073741824,\n \"clickhouse_max_download_threads\": 4,\n \"clickhouse_parallel_distributed_insert_select\": 2,\n \"object_storage_use_cluster_function\": true,\n \"clickhouse_parallel_view_processing\": false\n }\n}"
response = http.request(request)
puts response.read_body{
"status": 200,
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"result": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"serviceId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"state": "<string>",
"scaling": {
"replicas": 123,
"concurrency": 123,
"replicaCpuMillicores": 1062,
"replicaMemoryGb": 4.25
},
"source": {
"kafka": {
"brokers": "<string>",
"topics": "<string>",
"consumerGroup": "my-clickpipe-consumer-group",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"offset": {
"timestamp": "2021-01-01T00:00"
},
"schemaRegistry": {
"url": "https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004",
"authentication": "PLAIN",
"caCertificate": "<string>"
},
"caCertificate": "<string>",
"reversePrivateEndpointIds": [
"<string>"
]
},
"objectStorage": {
"url": "https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz",
"delimiter": ",",
"compression": "auto",
"isContinuous": true,
"queueUrl": "https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"connectionString": "DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net",
"path": "data/logs/*.json",
"azureContainerName": "mycontainer"
},
"kinesis": {
"streamName": "my-stream",
"region": "us-east-1",
"useEnhancedFanOut": true,
"timestamp": 1615766400,
"iamRole": "arn:aws:iam::123456789012:role/MyRole"
},
"postgres": {
"host": "<string>",
"port": 123,
"database": "<string>",
"settings": {
"syncIntervalSeconds": 123,
"pullBatchSize": 123,
"publicationName": "<string>",
"replicationSlotName": "<string>",
"allowNullableColumns": true,
"initialLoadParallelism": 123,
"snapshotNumRowsPerPartition": 123,
"snapshotNumberOfParallelTables": 123,
"enableFailoverSlots": true
},
"tableMappings": [
{
"sourceSchemaName": "<string>",
"sourceTable": "<string>",
"targetTable": "<string>",
"excludedColumns": [
"<string>"
],
"useCustomSortingKey": true,
"sortingKeys": [
"<string>"
]
}
]
}
},
"destination": {
"database": "<string>",
"table": "<string>",
"managedTable": true,
"tableDefinition": {
"engine": {
"versionColumnId": "<string>",
"columnIds": [
"<string>"
]
},
"sortingKey": [
"<string>"
],
"partitionBy": "<string>",
"primaryKey": "<string>"
},
"columns": [
{
"name": "<string>",
"type": "<string>"
}
]
},
"fieldMappings": [
{
"sourceField": "<string>",
"destinationField": "<string>"
}
],
"settings": {
"streaming_max_insert_wait_ms": 5000,
"object_storage_concurrency": 1,
"object_storage_polling_interval_ms": 30000,
"object_storage_max_insert_bytes": 10737418240,
"object_storage_max_file_count": 100,
"clickhouse_max_threads": 8,
"clickhouse_max_insert_threads": 1,
"clickhouse_min_insert_block_size_bytes": 1073741824,
"clickhouse_max_download_threads": 4,
"clickhouse_parallel_distributed_insert_select": 2,
"object_storage_use_cluster_function": true,
"clickhouse_parallel_view_processing": false
},
"createdAt": "<string>",
"updatedAt": "<string>"
}
}{
"status": 400,
"error": "<string>"
}Authorizations
Use key ID and key secret obtained in ClickHouse Cloud console: https://clickhouse.com/docs/cloud/manage/openapi
Path Parameters
ID of the organization that owns the service.
ID of the service to create the ClickPipe for.
Body
application/json
Name of the ClickPipe.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Field mappings of the ClickPipe. Note that all destination columns must be included in the mappings.
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Last modified on July 2, 2026
Was this page helpful?
Previous
Get ClickPipe**This endpoint is in beta.** API contract is stable, and no breaking changes are expected in the future. <br /><br /> Returns the specified ClickPipe.
Next
⌘I
Create ClickPipe
curl --request POST \
--url https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes \
--header 'Authorization: Basic <encoded-value>' \
--header 'Content-Type: application/json' \
--data '
{
"name": "<string>",
"source": {
"kafka": {
"brokers": "<string>",
"topics": "<string>",
"consumerGroup": "my-clickpipe-consumer-group",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"offset": {
"timestamp": "2021-01-01T00:00"
},
"schemaRegistry": {
"url": "https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004",
"authentication": "PLAIN",
"caCertificate": "<string>",
"credentials": {
"username": "<string>",
"password": "<string>"
}
},
"caCertificate": "<string>",
"reversePrivateEndpointIds": [
"<string>"
],
"credentials": {
"username": "<string>",
"password": "<string>"
}
},
"objectStorage": {
"url": "https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz",
"delimiter": ",",
"compression": "auto",
"isContinuous": true,
"queueUrl": "https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"connectionString": "DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net",
"path": "data/logs/*.json",
"azureContainerName": "mycontainer",
"accessKey": {
"accessKeyId": "<string>",
"secretKey": "<string>"
}
},
"kinesis": {
"streamName": "my-stream",
"region": "us-east-1",
"useEnhancedFanOut": true,
"timestamp": 1615766400,
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"accessKey": {
"accessKeyId": "<string>",
"secretKey": "<string>"
}
},
"postgres": {
"host": "<string>",
"port": 123,
"database": "<string>",
"settings": {
"syncIntervalSeconds": 123,
"pullBatchSize": 123,
"publicationName": "<string>",
"replicationSlotName": "<string>",
"allowNullableColumns": true,
"initialLoadParallelism": 123,
"snapshotNumRowsPerPartition": 123,
"snapshotNumberOfParallelTables": 123,
"enableFailoverSlots": true
},
"tableMappings": [
{
"sourceSchemaName": "<string>",
"sourceTable": "<string>",
"targetTable": "<string>",
"excludedColumns": [
"<string>"
],
"useCustomSortingKey": true,
"sortingKeys": [
"<string>"
]
}
],
"credentials": {
"username": "<string>",
"password": "<string>"
}
},
"validateSamples": true
},
"destination": {
"database": "<string>",
"table": "<string>",
"managedTable": true,
"tableDefinition": {
"engine": {
"versionColumnId": "<string>",
"columnIds": [
"<string>"
]
},
"sortingKey": [
"<string>"
],
"partitionBy": "<string>",
"primaryKey": "<string>"
},
"columns": [
{
"name": "<string>",
"type": "<string>"
}
],
"roles": [
"<string>"
]
},
"fieldMappings": [
{
"sourceField": "<string>",
"destinationField": "<string>"
}
],
"scaling": {
"replicas": 123,
"concurrency": 123,
"replicaCpuMillicores": 1062,
"replicaMemoryGb": 4.25
},
"settings": {
"streaming_max_insert_wait_ms": 5000,
"object_storage_concurrency": 1,
"object_storage_polling_interval_ms": 30000,
"object_storage_max_insert_bytes": 10737418240,
"object_storage_max_file_count": 100,
"clickhouse_max_threads": 8,
"clickhouse_max_insert_threads": 1,
"clickhouse_min_insert_block_size_bytes": 1073741824,
"clickhouse_max_download_threads": 4,
"clickhouse_parallel_distributed_insert_select": 2,
"object_storage_use_cluster_function": true,
"clickhouse_parallel_view_processing": false
}
}
'import requests
url = "https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes"
payload = {
"name": "<string>",
"source": {
"kafka": {
"brokers": "<string>",
"topics": "<string>",
"consumerGroup": "my-clickpipe-consumer-group",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"offset": { "timestamp": "2021-01-01T00:00" },
"schemaRegistry": {
"url": "https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004",
"authentication": "PLAIN",
"caCertificate": "<string>",
"credentials": {
"username": "<string>",
"password": "<string>"
}
},
"caCertificate": "<string>",
"reversePrivateEndpointIds": ["<string>"],
"credentials": {
"username": "<string>",
"password": "<string>"
}
},
"objectStorage": {
"url": "https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz",
"delimiter": ",",
"compression": "auto",
"isContinuous": True,
"queueUrl": "https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"connectionString": "DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net",
"path": "data/logs/*.json",
"azureContainerName": "mycontainer",
"accessKey": {
"accessKeyId": "<string>",
"secretKey": "<string>"
}
},
"kinesis": {
"streamName": "my-stream",
"region": "us-east-1",
"useEnhancedFanOut": True,
"timestamp": 1615766400,
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"accessKey": {
"accessKeyId": "<string>",
"secretKey": "<string>"
}
},
"postgres": {
"host": "<string>",
"port": 123,
"database": "<string>",
"settings": {
"syncIntervalSeconds": 123,
"pullBatchSize": 123,
"publicationName": "<string>",
"replicationSlotName": "<string>",
"allowNullableColumns": True,
"initialLoadParallelism": 123,
"snapshotNumRowsPerPartition": 123,
"snapshotNumberOfParallelTables": 123,
"enableFailoverSlots": True
},
"tableMappings": [
{
"sourceSchemaName": "<string>",
"sourceTable": "<string>",
"targetTable": "<string>",
"excludedColumns": ["<string>"],
"useCustomSortingKey": True,
"sortingKeys": ["<string>"]
}
],
"credentials": {
"username": "<string>",
"password": "<string>"
}
},
"validateSamples": True
},
"destination": {
"database": "<string>",
"table": "<string>",
"managedTable": True,
"tableDefinition": {
"engine": {
"versionColumnId": "<string>",
"columnIds": ["<string>"]
},
"sortingKey": ["<string>"],
"partitionBy": "<string>",
"primaryKey": "<string>"
},
"columns": [
{
"name": "<string>",
"type": "<string>"
}
],
"roles": ["<string>"]
},
"fieldMappings": [
{
"sourceField": "<string>",
"destinationField": "<string>"
}
],
"scaling": {
"replicas": 123,
"concurrency": 123,
"replicaCpuMillicores": 1062,
"replicaMemoryGb": 4.25
},
"settings": {
"streaming_max_insert_wait_ms": 5000,
"object_storage_concurrency": 1,
"object_storage_polling_interval_ms": 30000,
"object_storage_max_insert_bytes": 10737418240,
"object_storage_max_file_count": 100,
"clickhouse_max_threads": 8,
"clickhouse_max_insert_threads": 1,
"clickhouse_min_insert_block_size_bytes": 1073741824,
"clickhouse_max_download_threads": 4,
"clickhouse_parallel_distributed_insert_select": 2,
"object_storage_use_cluster_function": True,
"clickhouse_parallel_view_processing": False
}
}
headers = {
"Authorization": "Basic <encoded-value>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Basic <encoded-value>', 'Content-Type': 'application/json'},
body: JSON.stringify({
name: '<string>',
source: {
kafka: {
brokers: '<string>',
topics: '<string>',
consumerGroup: 'my-clickpipe-consumer-group',
iamRole: 'arn:aws:iam::123456789012:role/MyRole',
offset: {timestamp: '2021-01-01T00:00'},
schemaRegistry: {
url: 'https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004',
authentication: 'PLAIN',
caCertificate: '<string>',
credentials: {username: '<string>', password: '<string>'}
},
caCertificate: '<string>',
reversePrivateEndpointIds: ['<string>'],
credentials: {username: '<string>', password: '<string>'}
},
objectStorage: {
url: 'https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz',
delimiter: ',',
compression: 'auto',
isContinuous: true,
queueUrl: 'https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue',
iamRole: 'arn:aws:iam::123456789012:role/MyRole',
connectionString: 'DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net',
path: 'data/logs/*.json',
azureContainerName: 'mycontainer',
accessKey: {accessKeyId: '<string>', secretKey: '<string>'}
},
kinesis: {
streamName: 'my-stream',
region: 'us-east-1',
useEnhancedFanOut: true,
timestamp: 1615766400,
iamRole: 'arn:aws:iam::123456789012:role/MyRole',
accessKey: {accessKeyId: '<string>', secretKey: '<string>'}
},
postgres: {
host: '<string>',
port: 123,
database: '<string>',
settings: {
syncIntervalSeconds: 123,
pullBatchSize: 123,
publicationName: '<string>',
replicationSlotName: '<string>',
allowNullableColumns: true,
initialLoadParallelism: 123,
snapshotNumRowsPerPartition: 123,
snapshotNumberOfParallelTables: 123,
enableFailoverSlots: true
},
tableMappings: [
{
sourceSchemaName: '<string>',
sourceTable: '<string>',
targetTable: '<string>',
excludedColumns: ['<string>'],
useCustomSortingKey: true,
sortingKeys: ['<string>']
}
],
credentials: {username: '<string>', password: '<string>'}
},
validateSamples: true
},
destination: {
database: '<string>',
table: '<string>',
managedTable: true,
tableDefinition: {
engine: {versionColumnId: '<string>', columnIds: ['<string>']},
sortingKey: ['<string>'],
partitionBy: '<string>',
primaryKey: '<string>'
},
columns: [{name: '<string>', type: '<string>'}],
roles: ['<string>']
},
fieldMappings: [{sourceField: '<string>', destinationField: '<string>'}],
scaling: {
replicas: 123,
concurrency: 123,
replicaCpuMillicores: 1062,
replicaMemoryGb: 4.25
},
settings: {
streaming_max_insert_wait_ms: 5000,
object_storage_concurrency: 1,
object_storage_polling_interval_ms: 30000,
object_storage_max_insert_bytes: 10737418240,
object_storage_max_file_count: 100,
clickhouse_max_threads: 8,
clickhouse_max_insert_threads: 1,
clickhouse_min_insert_block_size_bytes: 1073741824,
clickhouse_max_download_threads: 4,
clickhouse_parallel_distributed_insert_select: 2,
object_storage_use_cluster_function: true,
clickhouse_parallel_view_processing: false
}
})
};
fetch('https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes', 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.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes",
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([
'name' => '<string>',
'source' => [
'kafka' => [
'brokers' => '<string>',
'topics' => '<string>',
'consumerGroup' => 'my-clickpipe-consumer-group',
'iamRole' => 'arn:aws:iam::123456789012:role/MyRole',
'offset' => [
'timestamp' => '2021-01-01T00:00'
],
'schemaRegistry' => [
'url' => 'https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004',
'authentication' => 'PLAIN',
'caCertificate' => '<string>',
'credentials' => [
'username' => '<string>',
'password' => '<string>'
]
],
'caCertificate' => '<string>',
'reversePrivateEndpointIds' => [
'<string>'
],
'credentials' => [
'username' => '<string>',
'password' => '<string>'
]
],
'objectStorage' => [
'url' => 'https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz',
'delimiter' => ',',
'compression' => 'auto',
'isContinuous' => true,
'queueUrl' => 'https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue',
'iamRole' => 'arn:aws:iam::123456789012:role/MyRole',
'connectionString' => 'DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net',
'path' => 'data/logs/*.json',
'azureContainerName' => 'mycontainer',
'accessKey' => [
'accessKeyId' => '<string>',
'secretKey' => '<string>'
]
],
'kinesis' => [
'streamName' => 'my-stream',
'region' => 'us-east-1',
'useEnhancedFanOut' => true,
'timestamp' => 1615766400,
'iamRole' => 'arn:aws:iam::123456789012:role/MyRole',
'accessKey' => [
'accessKeyId' => '<string>',
'secretKey' => '<string>'
]
],
'postgres' => [
'host' => '<string>',
'port' => 123,
'database' => '<string>',
'settings' => [
'syncIntervalSeconds' => 123,
'pullBatchSize' => 123,
'publicationName' => '<string>',
'replicationSlotName' => '<string>',
'allowNullableColumns' => true,
'initialLoadParallelism' => 123,
'snapshotNumRowsPerPartition' => 123,
'snapshotNumberOfParallelTables' => 123,
'enableFailoverSlots' => true
],
'tableMappings' => [
[
'sourceSchemaName' => '<string>',
'sourceTable' => '<string>',
'targetTable' => '<string>',
'excludedColumns' => [
'<string>'
],
'useCustomSortingKey' => true,
'sortingKeys' => [
'<string>'
]
]
],
'credentials' => [
'username' => '<string>',
'password' => '<string>'
]
],
'validateSamples' => true
],
'destination' => [
'database' => '<string>',
'table' => '<string>',
'managedTable' => true,
'tableDefinition' => [
'engine' => [
'versionColumnId' => '<string>',
'columnIds' => [
'<string>'
]
],
'sortingKey' => [
'<string>'
],
'partitionBy' => '<string>',
'primaryKey' => '<string>'
],
'columns' => [
[
'name' => '<string>',
'type' => '<string>'
]
],
'roles' => [
'<string>'
]
],
'fieldMappings' => [
[
'sourceField' => '<string>',
'destinationField' => '<string>'
]
],
'scaling' => [
'replicas' => 123,
'concurrency' => 123,
'replicaCpuMillicores' => 1062,
'replicaMemoryGb' => 4.25
],
'settings' => [
'streaming_max_insert_wait_ms' => 5000,
'object_storage_concurrency' => 1,
'object_storage_polling_interval_ms' => 30000,
'object_storage_max_insert_bytes' => 10737418240,
'object_storage_max_file_count' => 100,
'clickhouse_max_threads' => 8,
'clickhouse_max_insert_threads' => 1,
'clickhouse_min_insert_block_size_bytes' => 1073741824,
'clickhouse_max_download_threads' => 4,
'clickhouse_parallel_distributed_insert_select' => 2,
'object_storage_use_cluster_function' => true,
'clickhouse_parallel_view_processing' => false
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Basic <encoded-value>",
"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.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes"
payload := strings.NewReader("{\n \"name\": \"<string>\",\n \"source\": {\n \"kafka\": {\n \"brokers\": \"<string>\",\n \"topics\": \"<string>\",\n \"consumerGroup\": \"my-clickpipe-consumer-group\",\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"offset\": {\n \"timestamp\": \"2021-01-01T00:00\"\n },\n \"schemaRegistry\": {\n \"url\": \"https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004\",\n \"authentication\": \"PLAIN\",\n \"caCertificate\": \"<string>\",\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"caCertificate\": \"<string>\",\n \"reversePrivateEndpointIds\": [\n \"<string>\"\n ],\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"objectStorage\": {\n \"url\": \"https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz\",\n \"delimiter\": \",\",\n \"compression\": \"auto\",\n \"isContinuous\": true,\n \"queueUrl\": \"https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue\",\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"connectionString\": \"DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net\",\n \"path\": \"data/logs/*.json\",\n \"azureContainerName\": \"mycontainer\",\n \"accessKey\": {\n \"accessKeyId\": \"<string>\",\n \"secretKey\": \"<string>\"\n }\n },\n \"kinesis\": {\n \"streamName\": \"my-stream\",\n \"region\": \"us-east-1\",\n \"useEnhancedFanOut\": true,\n \"timestamp\": 1615766400,\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"accessKey\": {\n \"accessKeyId\": \"<string>\",\n \"secretKey\": \"<string>\"\n }\n },\n \"postgres\": {\n \"host\": \"<string>\",\n \"port\": 123,\n \"database\": \"<string>\",\n \"settings\": {\n \"syncIntervalSeconds\": 123,\n \"pullBatchSize\": 123,\n \"publicationName\": \"<string>\",\n \"replicationSlotName\": \"<string>\",\n \"allowNullableColumns\": true,\n \"initialLoadParallelism\": 123,\n \"snapshotNumRowsPerPartition\": 123,\n \"snapshotNumberOfParallelTables\": 123,\n \"enableFailoverSlots\": true\n },\n \"tableMappings\": [\n {\n \"sourceSchemaName\": \"<string>\",\n \"sourceTable\": \"<string>\",\n \"targetTable\": \"<string>\",\n \"excludedColumns\": [\n \"<string>\"\n ],\n \"useCustomSortingKey\": true,\n \"sortingKeys\": [\n \"<string>\"\n ]\n }\n ],\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"validateSamples\": true\n },\n \"destination\": {\n \"database\": \"<string>\",\n \"table\": \"<string>\",\n \"managedTable\": true,\n \"tableDefinition\": {\n \"engine\": {\n \"versionColumnId\": \"<string>\",\n \"columnIds\": [\n \"<string>\"\n ]\n },\n \"sortingKey\": [\n \"<string>\"\n ],\n \"partitionBy\": \"<string>\",\n \"primaryKey\": \"<string>\"\n },\n \"columns\": [\n {\n \"name\": \"<string>\",\n \"type\": \"<string>\"\n }\n ],\n \"roles\": [\n \"<string>\"\n ]\n },\n \"fieldMappings\": [\n {\n \"sourceField\": \"<string>\",\n \"destinationField\": \"<string>\"\n }\n ],\n \"scaling\": {\n \"replicas\": 123,\n \"concurrency\": 123,\n \"replicaCpuMillicores\": 1062,\n \"replicaMemoryGb\": 4.25\n },\n \"settings\": {\n \"streaming_max_insert_wait_ms\": 5000,\n \"object_storage_concurrency\": 1,\n \"object_storage_polling_interval_ms\": 30000,\n \"object_storage_max_insert_bytes\": 10737418240,\n \"object_storage_max_file_count\": 100,\n \"clickhouse_max_threads\": 8,\n \"clickhouse_max_insert_threads\": 1,\n \"clickhouse_min_insert_block_size_bytes\": 1073741824,\n \"clickhouse_max_download_threads\": 4,\n \"clickhouse_parallel_distributed_insert_select\": 2,\n \"object_storage_use_cluster_function\": true,\n \"clickhouse_parallel_view_processing\": false\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "Basic <encoded-value>")
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.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"name\": \"<string>\",\n \"source\": {\n \"kafka\": {\n \"brokers\": \"<string>\",\n \"topics\": \"<string>\",\n \"consumerGroup\": \"my-clickpipe-consumer-group\",\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"offset\": {\n \"timestamp\": \"2021-01-01T00:00\"\n },\n \"schemaRegistry\": {\n \"url\": \"https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004\",\n \"authentication\": \"PLAIN\",\n \"caCertificate\": \"<string>\",\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"caCertificate\": \"<string>\",\n \"reversePrivateEndpointIds\": [\n \"<string>\"\n ],\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"objectStorage\": {\n \"url\": \"https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz\",\n \"delimiter\": \",\",\n \"compression\": \"auto\",\n \"isContinuous\": true,\n \"queueUrl\": \"https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue\",\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"connectionString\": \"DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net\",\n \"path\": \"data/logs/*.json\",\n \"azureContainerName\": \"mycontainer\",\n \"accessKey\": {\n \"accessKeyId\": \"<string>\",\n \"secretKey\": \"<string>\"\n }\n },\n \"kinesis\": {\n \"streamName\": \"my-stream\",\n \"region\": \"us-east-1\",\n \"useEnhancedFanOut\": true,\n \"timestamp\": 1615766400,\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"accessKey\": {\n \"accessKeyId\": \"<string>\",\n \"secretKey\": \"<string>\"\n }\n },\n \"postgres\": {\n \"host\": \"<string>\",\n \"port\": 123,\n \"database\": \"<string>\",\n \"settings\": {\n \"syncIntervalSeconds\": 123,\n \"pullBatchSize\": 123,\n \"publicationName\": \"<string>\",\n \"replicationSlotName\": \"<string>\",\n \"allowNullableColumns\": true,\n \"initialLoadParallelism\": 123,\n \"snapshotNumRowsPerPartition\": 123,\n \"snapshotNumberOfParallelTables\": 123,\n \"enableFailoverSlots\": true\n },\n \"tableMappings\": [\n {\n \"sourceSchemaName\": \"<string>\",\n \"sourceTable\": \"<string>\",\n \"targetTable\": \"<string>\",\n \"excludedColumns\": [\n \"<string>\"\n ],\n \"useCustomSortingKey\": true,\n \"sortingKeys\": [\n \"<string>\"\n ]\n }\n ],\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"validateSamples\": true\n },\n \"destination\": {\n \"database\": \"<string>\",\n \"table\": \"<string>\",\n \"managedTable\": true,\n \"tableDefinition\": {\n \"engine\": {\n \"versionColumnId\": \"<string>\",\n \"columnIds\": [\n \"<string>\"\n ]\n },\n \"sortingKey\": [\n \"<string>\"\n ],\n \"partitionBy\": \"<string>\",\n \"primaryKey\": \"<string>\"\n },\n \"columns\": [\n {\n \"name\": \"<string>\",\n \"type\": \"<string>\"\n }\n ],\n \"roles\": [\n \"<string>\"\n ]\n },\n \"fieldMappings\": [\n {\n \"sourceField\": \"<string>\",\n \"destinationField\": \"<string>\"\n }\n ],\n \"scaling\": {\n \"replicas\": 123,\n \"concurrency\": 123,\n \"replicaCpuMillicores\": 1062,\n \"replicaMemoryGb\": 4.25\n },\n \"settings\": {\n \"streaming_max_insert_wait_ms\": 5000,\n \"object_storage_concurrency\": 1,\n \"object_storage_polling_interval_ms\": 30000,\n \"object_storage_max_insert_bytes\": 10737418240,\n \"object_storage_max_file_count\": 100,\n \"clickhouse_max_threads\": 8,\n \"clickhouse_max_insert_threads\": 1,\n \"clickhouse_min_insert_block_size_bytes\": 1073741824,\n \"clickhouse_max_download_threads\": 4,\n \"clickhouse_parallel_distributed_insert_select\": 2,\n \"object_storage_use_cluster_function\": true,\n \"clickhouse_parallel_view_processing\": false\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipes")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Basic <encoded-value>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"name\": \"<string>\",\n \"source\": {\n \"kafka\": {\n \"brokers\": \"<string>\",\n \"topics\": \"<string>\",\n \"consumerGroup\": \"my-clickpipe-consumer-group\",\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"offset\": {\n \"timestamp\": \"2021-01-01T00:00\"\n },\n \"schemaRegistry\": {\n \"url\": \"https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004\",\n \"authentication\": \"PLAIN\",\n \"caCertificate\": \"<string>\",\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"caCertificate\": \"<string>\",\n \"reversePrivateEndpointIds\": [\n \"<string>\"\n ],\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"objectStorage\": {\n \"url\": \"https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz\",\n \"delimiter\": \",\",\n \"compression\": \"auto\",\n \"isContinuous\": true,\n \"queueUrl\": \"https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue\",\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"connectionString\": \"DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net\",\n \"path\": \"data/logs/*.json\",\n \"azureContainerName\": \"mycontainer\",\n \"accessKey\": {\n \"accessKeyId\": \"<string>\",\n \"secretKey\": \"<string>\"\n }\n },\n \"kinesis\": {\n \"streamName\": \"my-stream\",\n \"region\": \"us-east-1\",\n \"useEnhancedFanOut\": true,\n \"timestamp\": 1615766400,\n \"iamRole\": \"arn:aws:iam::123456789012:role/MyRole\",\n \"accessKey\": {\n \"accessKeyId\": \"<string>\",\n \"secretKey\": \"<string>\"\n }\n },\n \"postgres\": {\n \"host\": \"<string>\",\n \"port\": 123,\n \"database\": \"<string>\",\n \"settings\": {\n \"syncIntervalSeconds\": 123,\n \"pullBatchSize\": 123,\n \"publicationName\": \"<string>\",\n \"replicationSlotName\": \"<string>\",\n \"allowNullableColumns\": true,\n \"initialLoadParallelism\": 123,\n \"snapshotNumRowsPerPartition\": 123,\n \"snapshotNumberOfParallelTables\": 123,\n \"enableFailoverSlots\": true\n },\n \"tableMappings\": [\n {\n \"sourceSchemaName\": \"<string>\",\n \"sourceTable\": \"<string>\",\n \"targetTable\": \"<string>\",\n \"excludedColumns\": [\n \"<string>\"\n ],\n \"useCustomSortingKey\": true,\n \"sortingKeys\": [\n \"<string>\"\n ]\n }\n ],\n \"credentials\": {\n \"username\": \"<string>\",\n \"password\": \"<string>\"\n }\n },\n \"validateSamples\": true\n },\n \"destination\": {\n \"database\": \"<string>\",\n \"table\": \"<string>\",\n \"managedTable\": true,\n \"tableDefinition\": {\n \"engine\": {\n \"versionColumnId\": \"<string>\",\n \"columnIds\": [\n \"<string>\"\n ]\n },\n \"sortingKey\": [\n \"<string>\"\n ],\n \"partitionBy\": \"<string>\",\n \"primaryKey\": \"<string>\"\n },\n \"columns\": [\n {\n \"name\": \"<string>\",\n \"type\": \"<string>\"\n }\n ],\n \"roles\": [\n \"<string>\"\n ]\n },\n \"fieldMappings\": [\n {\n \"sourceField\": \"<string>\",\n \"destinationField\": \"<string>\"\n }\n ],\n \"scaling\": {\n \"replicas\": 123,\n \"concurrency\": 123,\n \"replicaCpuMillicores\": 1062,\n \"replicaMemoryGb\": 4.25\n },\n \"settings\": {\n \"streaming_max_insert_wait_ms\": 5000,\n \"object_storage_concurrency\": 1,\n \"object_storage_polling_interval_ms\": 30000,\n \"object_storage_max_insert_bytes\": 10737418240,\n \"object_storage_max_file_count\": 100,\n \"clickhouse_max_threads\": 8,\n \"clickhouse_max_insert_threads\": 1,\n \"clickhouse_min_insert_block_size_bytes\": 1073741824,\n \"clickhouse_max_download_threads\": 4,\n \"clickhouse_parallel_distributed_insert_select\": 2,\n \"object_storage_use_cluster_function\": true,\n \"clickhouse_parallel_view_processing\": false\n }\n}"
response = http.request(request)
puts response.read_body{
"status": 200,
"requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"result": {
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"serviceId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"name": "<string>",
"state": "<string>",
"scaling": {
"replicas": 123,
"concurrency": 123,
"replicaCpuMillicores": 1062,
"replicaMemoryGb": 4.25
},
"source": {
"kafka": {
"brokers": "<string>",
"topics": "<string>",
"consumerGroup": "my-clickpipe-consumer-group",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"offset": {
"timestamp": "2021-01-01T00:00"
},
"schemaRegistry": {
"url": "https://psrc-aa00.us-east-2.aws.confluent.cloud/schemas/ids/100004",
"authentication": "PLAIN",
"caCertificate": "<string>"
},
"caCertificate": "<string>",
"reversePrivateEndpointIds": [
"<string>"
]
},
"objectStorage": {
"url": "https://datasets-documentation.s3.eu-west-3.amazonaws.com/http/**.ndjson.gz",
"delimiter": ",",
"compression": "auto",
"isContinuous": true,
"queueUrl": "https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue",
"iamRole": "arn:aws:iam::123456789012:role/MyRole",
"connectionString": "DefaultEndpointsProtocol=https;AccountName=myaccount;AccountKey=mykey;EndpointSuffix=core.windows.net",
"path": "data/logs/*.json",
"azureContainerName": "mycontainer"
},
"kinesis": {
"streamName": "my-stream",
"region": "us-east-1",
"useEnhancedFanOut": true,
"timestamp": 1615766400,
"iamRole": "arn:aws:iam::123456789012:role/MyRole"
},
"postgres": {
"host": "<string>",
"port": 123,
"database": "<string>",
"settings": {
"syncIntervalSeconds": 123,
"pullBatchSize": 123,
"publicationName": "<string>",
"replicationSlotName": "<string>",
"allowNullableColumns": true,
"initialLoadParallelism": 123,
"snapshotNumRowsPerPartition": 123,
"snapshotNumberOfParallelTables": 123,
"enableFailoverSlots": true
},
"tableMappings": [
{
"sourceSchemaName": "<string>",
"sourceTable": "<string>",
"targetTable": "<string>",
"excludedColumns": [
"<string>"
],
"useCustomSortingKey": true,
"sortingKeys": [
"<string>"
]
}
]
}
},
"destination": {
"database": "<string>",
"table": "<string>",
"managedTable": true,
"tableDefinition": {
"engine": {
"versionColumnId": "<string>",
"columnIds": [
"<string>"
]
},
"sortingKey": [
"<string>"
],
"partitionBy": "<string>",
"primaryKey": "<string>"
},
"columns": [
{
"name": "<string>",
"type": "<string>"
}
]
},
"fieldMappings": [
{
"sourceField": "<string>",
"destinationField": "<string>"
}
],
"settings": {
"streaming_max_insert_wait_ms": 5000,
"object_storage_concurrency": 1,
"object_storage_polling_interval_ms": 30000,
"object_storage_max_insert_bytes": 10737418240,
"object_storage_max_file_count": 100,
"clickhouse_max_threads": 8,
"clickhouse_max_insert_threads": 1,
"clickhouse_min_insert_block_size_bytes": 1073741824,
"clickhouse_max_download_threads": 4,
"clickhouse_parallel_distributed_insert_select": 2,
"object_storage_use_cluster_function": true,
"clickhouse_parallel_view_processing": false
},
"createdAt": "<string>",
"updatedAt": "<string>"
}
}{
"status": 400,
"error": "<string>"
}