إنشاء قالب قناة
curl --request POST \
--url https://api.pubrio.com/channels/templates/create \
--header 'Content-Type: application/json' \
--header 'pubrio-api-key: <api-key>' \
--data '
{
"channel_template_name": "<string>",
"channel_node_id": "<string>",
"parameters": {},
"version_name": "<string>"
}
'import requests
url = "https://api.pubrio.com/channels/templates/create"
payload = {
"channel_template_name": "<string>",
"channel_node_id": "<string>",
"parameters": {},
"version_name": "<string>"
}
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_name: '<string>',
channel_node_id: '<string>',
parameters: {},
version_name: '<string>'
})
};
fetch('https://api.pubrio.com/channels/templates/create', 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",
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_name' => '<string>',
'channel_node_id' => '<string>',
'parameters' => [
],
'version_name' => '<string>'
]),
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"
payload := strings.NewReader("{\n \"channel_template_name\": \"<string>\",\n \"channel_node_id\": \"<string>\",\n \"parameters\": {},\n \"version_name\": \"<string>\"\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")
.header("pubrio-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"channel_template_name\": \"<string>\",\n \"channel_node_id\": \"<string>\",\n \"parameters\": {},\n \"version_name\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pubrio.com/channels/templates/create")
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_name\": \"<string>\",\n \"channel_node_id\": \"<string>\",\n \"parameters\": {},\n \"version_name\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"channel_template_id": 248,
"channel_template_identifier": "4c717a78-26e9-49eb-ab2e-e1ce0755674a",
"created_at": "2025-08-07T17:22:11.344Z",
"version_number": 1,
"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"
}
}{
"code": 40001,
"message": "Errors and codes will vary depending on the scenario, please see the documentation for information.",
"details": {}
}{
"error": "Request rate limit exceeded. Please wait and try again later."
}{
"error": "An unexpected error occurred on the server."
}القوالب
إنشاء قالب قناة
أنشئ قالب قناة تواصل جديدًا بمعاملات محددة.
POST
/
channels
/
templates
/
create
إنشاء قالب قناة
curl --request POST \
--url https://api.pubrio.com/channels/templates/create \
--header 'Content-Type: application/json' \
--header 'pubrio-api-key: <api-key>' \
--data '
{
"channel_template_name": "<string>",
"channel_node_id": "<string>",
"parameters": {},
"version_name": "<string>"
}
'import requests
url = "https://api.pubrio.com/channels/templates/create"
payload = {
"channel_template_name": "<string>",
"channel_node_id": "<string>",
"parameters": {},
"version_name": "<string>"
}
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_name: '<string>',
channel_node_id: '<string>',
parameters: {},
version_name: '<string>'
})
};
fetch('https://api.pubrio.com/channels/templates/create', 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",
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_name' => '<string>',
'channel_node_id' => '<string>',
'parameters' => [
],
'version_name' => '<string>'
]),
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"
payload := strings.NewReader("{\n \"channel_template_name\": \"<string>\",\n \"channel_node_id\": \"<string>\",\n \"parameters\": {},\n \"version_name\": \"<string>\"\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")
.header("pubrio-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"channel_template_name\": \"<string>\",\n \"channel_node_id\": \"<string>\",\n \"parameters\": {},\n \"version_name\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pubrio.com/channels/templates/create")
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_name\": \"<string>\",\n \"channel_node_id\": \"<string>\",\n \"parameters\": {},\n \"version_name\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"data": {
"channel_template_id": 248,
"channel_template_identifier": "4c717a78-26e9-49eb-ab2e-e1ce0755674a",
"created_at": "2025-08-07T17:22:11.344Z",
"version_number": 1,
"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"
}
}{
"code": 40001,
"message": "Errors and codes will vary depending on the scenario, please see the documentation for information.",
"details": {}
}{
"error": "Request rate limit exceeded. Please wait and try again later."
}{
"error": "An unexpected error occurred on the server."
}التفويضات
الجسم
application/json
اسم العرض للقالب.
عقدة القناة التي يستهدفها هذا القالب، كـ UUID. احصل عليها من أنواع قوالب القنوات — مثل عقدة send_email تحت نوع قناة email. تحدد العقدة أيضًا مفاتيح parameters الصالحة.
جسم القالب. تُحدَّد المفاتيح الصالحة بواسطة channel_node_id المختار: تأخذ send_email الحقول subject وcontent وattachments؛ وتأخذ محادثة LinkedIn الحقلين message وattachments؛ وتأخذ دعوات LinkedIn الحقل message؛ ويأخذ Twilio الحقول message وfrom وmethod.
تسمية هذا الإصدار، مثل v1. كل إصدار سجل منفصل بمعرّف channel_template_id خاص به.
الاستجابة
استجابة ناجحة تحتوي على قائمة تفاصيل قوالب القنوات.
تعتمد معلومات الاستجابة على النقطة الطرفية المحددة.

