Look up a channel template
curl --request POST \
--url https://api.pubrio.com/channels/templates/lookup \
--header 'Content-Type: application/json' \
--header 'pubrio-api-key: <api-key>' \
--data '
{
"channel_template_identifier": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"profile_id": 123
}
'import requests
url = "https://api.pubrio.com/channels/templates/lookup"
payload = {
"channel_template_identifier": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"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',
profile_id: 123
})
};
fetch('https://api.pubrio.com/channels/templates/lookup', 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/lookup",
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',
'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/lookup"
payload := strings.NewReader("{\n \"channel_template_identifier\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\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/lookup")
.header("pubrio-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"channel_template_identifier\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"profile_id\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pubrio.com/channels/templates/lookup")
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 \"profile_id\": 123\n}"
response = http.request(request)
puts response.read_body{
"data": [
{
"channel_template_id": 245,
"channel_template_identifier": "4f6f40cb-ed6d-4cca-99d8-616feef8de93",
"channel_node_id": "93873c33-2635-4537-928c-6a4f3564164c",
"channel_node_slug": "send_email",
"channel_type_id": 1,
"channel_type_slug": "email",
"owner_email": "[email protected]",
"owner_name": "Owner",
"name": "email",
"description": null,
"parameters": {
"content": "<div>hello world</div>",
"subject": "Hello World",
"attachments": []
},
"default_values": null,
"version_number": 1,
"version_name": "version 1",
"is_default": true,
"is_personal": true,
"created_at": "2025-07-29T09:07:11.969Z",
"last_modified": "2025-07-29T09:07:11.969Z"
},
"..."
]
}{
"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."
}Templates
Channel Template Lookup
Retrieve details of a specific channel template by ID.
POST
/
channels
/
templates
/
lookup
Look up a channel template
curl --request POST \
--url https://api.pubrio.com/channels/templates/lookup \
--header 'Content-Type: application/json' \
--header 'pubrio-api-key: <api-key>' \
--data '
{
"channel_template_identifier": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"profile_id": 123
}
'import requests
url = "https://api.pubrio.com/channels/templates/lookup"
payload = {
"channel_template_identifier": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"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',
profile_id: 123
})
};
fetch('https://api.pubrio.com/channels/templates/lookup', 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/lookup",
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',
'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/lookup"
payload := strings.NewReader("{\n \"channel_template_identifier\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\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/lookup")
.header("pubrio-api-key", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"channel_template_identifier\": \"3c90c3cc-0d44-4b50-8888-8dd25736052a\",\n \"profile_id\": 123\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.pubrio.com/channels/templates/lookup")
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 \"profile_id\": 123\n}"
response = http.request(request)
puts response.read_body{
"data": [
{
"channel_template_id": 245,
"channel_template_identifier": "4f6f40cb-ed6d-4cca-99d8-616feef8de93",
"channel_node_id": "93873c33-2635-4537-928c-6a4f3564164c",
"channel_node_slug": "send_email",
"channel_type_id": 1,
"channel_type_slug": "email",
"owner_email": "[email protected]",
"owner_name": "Owner",
"name": "email",
"description": null,
"parameters": {
"content": "<div>hello world</div>",
"subject": "Hello World",
"attachments": []
},
"default_values": null,
"version_number": 1,
"version_name": "version 1",
"is_default": true,
"is_personal": true,
"created_at": "2025-07-29T09:07:11.969Z",
"last_modified": "2025-07-29T09:07:11.969Z"
},
"..."
]
}{
"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."
}Authorizations
Body
application/json
The identifier for the channel template version group.
Optional. An identifier for the user profile (workspace) making the request. This is no longer required as the API key already includes your workspace information. If provided, it helps in associating the lookup with a specific user, allowing for data retrieval and credit tracking.
Check out user details endpoints under the Profile tab for more information.
Response
Successful response containing channel template details.
Response info depends on specific endpoint.
⌘I

