메인 콘텐츠로 건너뛰기
POST
/
v1
/
organizations
/
{organizationId}
/
services
/
{serviceId}
/
clickpipesReversePrivateEndpoints
Reverse Private Endpoint 생성
curl --request POST \
  --url https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipesReversePrivateEndpoints \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "description": "My reverse private endpoint",
  "mskAuthentication": "SASL_IAM",
  "mskClusterArn": "arn:aws:kafka:us-east-1:123456789012:cluster/my-cluster",
  "type": "VPC_ENDPOINT_SERVICE",
  "vpcEndpointServiceName": "com.amazonaws.vpce.us-east-1.vpce-svc-12345678901234567",
  "vpcResourceConfigurationId": "rcfg-12345678901234567",
  "vpcResourceShareArn": "arn:aws:ram:us-east-1:123456789012:resource-share/share-12345678901234567"
}
'
import requests

url = "https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipesReversePrivateEndpoints"

payload = {
"description": "My reverse private endpoint",
"mskAuthentication": "SASL_IAM",
"mskClusterArn": "arn:aws:kafka:us-east-1:123456789012:cluster/my-cluster",
"type": "VPC_ENDPOINT_SERVICE",
"vpcEndpointServiceName": "com.amazonaws.vpce.us-east-1.vpce-svc-12345678901234567",
"vpcResourceConfigurationId": "rcfg-12345678901234567",
"vpcResourceShareArn": "arn:aws:ram:us-east-1:123456789012:resource-share/share-12345678901234567"
}
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({
description: 'My reverse private endpoint',
mskAuthentication: 'SASL_IAM',
mskClusterArn: 'arn:aws:kafka:us-east-1:123456789012:cluster/my-cluster',
type: 'VPC_ENDPOINT_SERVICE',
vpcEndpointServiceName: 'com.amazonaws.vpce.us-east-1.vpce-svc-12345678901234567',
vpcResourceConfigurationId: 'rcfg-12345678901234567',
vpcResourceShareArn: 'arn:aws:ram:us-east-1:123456789012:resource-share/share-12345678901234567'
})
};

fetch('https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipesReversePrivateEndpoints', 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}/clickpipesReversePrivateEndpoints",
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([
'description' => 'My reverse private endpoint',
'mskAuthentication' => 'SASL_IAM',
'mskClusterArn' => 'arn:aws:kafka:us-east-1:123456789012:cluster/my-cluster',
'type' => 'VPC_ENDPOINT_SERVICE',
'vpcEndpointServiceName' => 'com.amazonaws.vpce.us-east-1.vpce-svc-12345678901234567',
'vpcResourceConfigurationId' => 'rcfg-12345678901234567',
'vpcResourceShareArn' => 'arn:aws:ram:us-east-1:123456789012:resource-share/share-12345678901234567'
]),
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}/clickpipesReversePrivateEndpoints"

payload := strings.NewReader("{\n \"description\": \"My reverse private endpoint\",\n \"mskAuthentication\": \"SASL_IAM\",\n \"mskClusterArn\": \"arn:aws:kafka:us-east-1:123456789012:cluster/my-cluster\",\n \"type\": \"VPC_ENDPOINT_SERVICE\",\n \"vpcEndpointServiceName\": \"com.amazonaws.vpce.us-east-1.vpce-svc-12345678901234567\",\n \"vpcResourceConfigurationId\": \"rcfg-12345678901234567\",\n \"vpcResourceShareArn\": \"arn:aws:ram:us-east-1:123456789012:resource-share/share-12345678901234567\"\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}/clickpipesReversePrivateEndpoints")
.header("Authorization", "Basic <encoded-value>")
.header("Content-Type", "application/json")
.body("{\n \"description\": \"My reverse private endpoint\",\n \"mskAuthentication\": \"SASL_IAM\",\n \"mskClusterArn\": \"arn:aws:kafka:us-east-1:123456789012:cluster/my-cluster\",\n \"type\": \"VPC_ENDPOINT_SERVICE\",\n \"vpcEndpointServiceName\": \"com.amazonaws.vpce.us-east-1.vpce-svc-12345678901234567\",\n \"vpcResourceConfigurationId\": \"rcfg-12345678901234567\",\n \"vpcResourceShareArn\": \"arn:aws:ram:us-east-1:123456789012:resource-share/share-12345678901234567\"\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.clickhouse.cloud/v1/organizations/{organizationId}/services/{serviceId}/clickpipesReversePrivateEndpoints")

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 \"description\": \"My reverse private endpoint\",\n \"mskAuthentication\": \"SASL_IAM\",\n \"mskClusterArn\": \"arn:aws:kafka:us-east-1:123456789012:cluster/my-cluster\",\n \"type\": \"VPC_ENDPOINT_SERVICE\",\n \"vpcEndpointServiceName\": \"com.amazonaws.vpce.us-east-1.vpce-svc-12345678901234567\",\n \"vpcResourceConfigurationId\": \"rcfg-12345678901234567\",\n \"vpcResourceShareArn\": \"arn:aws:ram:us-east-1:123456789012:resource-share/share-12345678901234567\"\n}"

response = http.request(request)
puts response.read_body
{
  "requestId": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "result": {
    "description": "My reverse private endpoint",
    "dnsNames": [
      "<string>"
    ],
    "endpointId": "vpce-12345678901234567",
    "id": "12345678-1234-1234-1234-123456789012",
    "mskAuthentication": "SASL_IAM",
    "mskClusterArn": "arn:aws:kafka:us-east-1:123456789012:cluster/my-cluster",
    "privateDnsNames": [
      "<string>"
    ],
    "serviceId": "12345678-1234-1234-1234-123456789012",
    "status": "Ready",
    "type": "VPC_ENDPOINT_SERVICE",
    "vpcEndpointServiceName": "com.amazonaws.vpce.us-east-1.vpce-svc-12345678901234567",
    "vpcResourceConfigurationId": "rcfg-12345678901234567",
    "vpcResourceShareArn": "arn:aws:ram:us-east-1:123456789012:resource-share/share-12345678901234567"
  },
  "status": 200
}
{
"error": "<string>",
"status": 400
}

인증

Authorization
string
header
필수

ClickHouse Cloud 콘솔에서 발급받은 key ID와 key secret을 사용합니다: https://clickhouse.com/docs/cloud/manage/openapi

경로 매개변수

organizationId
string<uuid>
필수

서비스를 소유한 조직의 ID.

serviceId
string<uuid>
필수

Reverse Private Endpoint를 소유한 서비스의 ID.

본문

application/json
description
string

Reverse Private Endpoint 설명입니다. 최대 길이는 255자입니다.

예시:

"My reverse private endpoint"

mskAuthentication
enum<string> | null

MSK cluster authentication 유형입니다. MSK_MULTI_VPC 유형에 필요합니다.

사용 가능한 옵션:
SASL_IAM,
SASL_SCRAM
예시:

"SASL_IAM"

mskClusterArn
string | null

MSK 클러스터 ARN입니다. MSK_MULTI_VPC 유형에 필요합니다.

예시:

"arn:aws:kafka:us-east-1:123456789012:cluster/my-cluster"

type
enum<string>

Reverse Private Endpoint 유형입니다.

사용 가능한 옵션:
VPC_ENDPOINT_SERVICE,
VPC_RESOURCE,
MSK_MULTI_VPC
예시:

"VPC_ENDPOINT_SERVICE"

vpcEndpointServiceName
string | null

VPC 엔드포인트 서비스 이름입니다.

예시:

"com.amazonaws.vpce.us-east-1.vpce-svc-12345678901234567"

vpcResourceConfigurationId
string | null

VPC 리소스 구성 ID입니다. VPC_RESOURCE 유형에 필요합니다.

예시:

"rcfg-12345678901234567"

vpcResourceShareArn
string | null

VPC 리소스 공유 ARN입니다. VPC_RESOURCE 유형에 필요합니다.

예시:

"arn:aws:ram:us-east-1:123456789012:resource-share/share-12345678901234567"

응답

성공 응답

requestId
string<uuid>

모든 요청에 할당되는 고유 ID입니다. UUIDv4

result
object
status
number

HTTP 상태 코드.

예시:

200

마지막 수정일 2026년 7월 1일