跳转到主要内容
POST
/
channels
/
templates
/
create_version
创建模板版本
curl --request POST \
  --url https://api.pubrio.com/channels/templates/create_version \
  --header 'Content-Type: application/json' \
  --header 'pubrio-api-key: <api-key>' \
  --data '
{
  "channel_template_identifier": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "channel_template_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "version_name": "default",
  "is_default": true,
  "parameters": {},
  "profile_id": 123
}
'
import requests

url = "https://api.pubrio.com/channels/templates/create_version"

payload = {
"channel_template_identifier": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"channel_template_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"version_name": "default",
"is_default": True,
"parameters": {},
"profile_id": 123
}
headers = {
"pubrio-api-key": "<api-key>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {'pubrio-api-key': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
channel_template_identifier: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
channel_template_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
version_name: 'default',
is_default: true,
parameters: {},
profile_id: 123
})
};

fetch('https://api.pubrio.com/channels/templates/create_version', 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.pubrio.com/channels/templates/create_version",
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([
'channel_template_identifier' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'channel_template_id' => '3c90c3cc-0d44-4b50-8888-8dd25736052a',
'version_name' => 'default',
'is_default' => true,
'parameters' => [

],
'profile_id' => 123
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json",
"pubrio-api-key: <api-key>"
],
]);

$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.pubrio.com/channels/templates/create_version"

payload := strings.NewReader("{\n \"channel_template_identifier\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"channel_template_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"version_name\": \"default\",\n \"is_default\": true,\n \"parameters\": {},\n \"profile_id\": 123\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("pubrio-api-key", "<api-key>")
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.pubrio.com/channels/templates/create_version")
.header("pubrio-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"channel_template_identifier\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"channel_template_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"version_name\": \"default\",\n \"is_default\": true,\n \"parameters\": {},\n \"profile_id\": 123\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.pubrio.com/channels/templates/create_version")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["pubrio-api-key"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"channel_template_identifier\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"channel_template_id\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"version_name\": \"default\",\n \"is_default\": true,\n \"parameters\": {},\n \"profile_id\": 123\n}"

response = http.request(request)
puts response.read_body
{
  "data": {
    "channel_template_id": 249,
    "channel_template_identifier": "4c717a78-26e9-49eb-ab2e-e1ce0755674a",
    "created_at": "2025-08-07T17:22:11.344Z",
    "version_number": 2,
    "is_default": true,
    "name": "Email Template",
    "channel_node_id": "93873c33-2635-4537-928c-6a4f3564164c",
    "parameters": {
      "content": "<div>hello world</div>",
      "subject": "hello world"
    },
    "version_name": "Default 2"
  }
}
{
"code": 40001,
"message": "错误及代码会根据不同场景有所不同,详情请参阅文档。",
"details": {}
}
{
"error": "请求频率超出限制。请稍后再试。"
}
{
"error": "服务器在处理请求时遇到了未预料的异常。"
}

授权

pubrio-api-key
string
header
必填

一个唯一的 API 令牌,用于标识您通过 API 执行的操作以及相应的权限和操作。您可以在 设置 部分创建该令牌。

请求体

application/json
channel_template_identifier
string<uuid>
必填

渠道模板版本组的标识符。

channel_template_id
string<uuid>

渠道模板操作的唯一标识符。

version_name
string

版本名称提供了一种识别变更历史的方法。

示例:

"default"

is_default
boolean

启用后,执行将把当前记录设置为 true,并将所有其他受影响的链接记录组设置为 false。

parameters
object

参数信息取决于渠道节点要求。

profile_id
integer

可选。发起请求的团队标识符。由于 API 密钥已包含您的工作区信息,此参数不再是必填项。如果提供,该 ID 有助于将查找与特定团队(工作区)关联,实现数据检索和额度追踪。

更多信息请参见团队标签下的 user details 端点。

响应

包含相关详细信息的成功响应。

data
object | null

响应信息取决于具体接口。