curl --request POST \
--url https://api.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/client-domains \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"client_domain_ids": [
"client_domain_id"
],
"component_ids": [
"component_id"
],
"component_references": [
{
"component_id": "component_id",
"socket_names": [
"socket_name"
]
}
],
"enabled": true,
"negated": true,
"parent_trigger_group_name": "parent_trigger_group_name",
"trigger_description": "trigger_description",
"trigger_name": "trigger_name",
"trigger_phase": "MATCHING"
}
'import requests
url = "https://api.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/client-domains"
payload = {
"client_domain_ids": ["client_domain_id"],
"component_ids": ["component_id"],
"component_references": [
{
"component_id": "component_id",
"socket_names": ["socket_name"]
}
],
"enabled": True,
"negated": True,
"parent_trigger_group_name": "parent_trigger_group_name",
"trigger_description": "trigger_description",
"trigger_name": "trigger_name",
"trigger_phase": "MATCHING"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
client_domain_ids: ['client_domain_id'],
component_ids: ['component_id'],
component_references: [{component_id: 'component_id', socket_names: ['socket_name']}],
enabled: true,
negated: true,
parent_trigger_group_name: 'parent_trigger_group_name',
trigger_description: 'trigger_description',
trigger_name: 'trigger_name',
trigger_phase: 'MATCHING'
})
};
fetch('https://api.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/client-domains', 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.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/client-domains",
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([
'client_domain_ids' => [
'client_domain_id'
],
'component_ids' => [
'component_id'
],
'component_references' => [
[
'component_id' => 'component_id',
'socket_names' => [
'socket_name'
]
]
],
'enabled' => true,
'negated' => true,
'parent_trigger_group_name' => 'parent_trigger_group_name',
'trigger_description' => 'trigger_description',
'trigger_name' => 'trigger_name',
'trigger_phase' => 'MATCHING'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"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.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/client-domains"
payload := strings.NewReader("{\n \"client_domain_ids\": [\n \"client_domain_id\"\n ],\n \"component_ids\": [\n \"component_id\"\n ],\n \"component_references\": [\n {\n \"component_id\": \"component_id\",\n \"socket_names\": [\n \"socket_name\"\n ]\n }\n ],\n \"enabled\": true,\n \"negated\": true,\n \"parent_trigger_group_name\": \"parent_trigger_group_name\",\n \"trigger_description\": \"trigger_description\",\n \"trigger_name\": \"trigger_name\",\n \"trigger_phase\": \"MATCHING\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<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.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/client-domains")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"client_domain_ids\": [\n \"client_domain_id\"\n ],\n \"component_ids\": [\n \"component_id\"\n ],\n \"component_references\": [\n {\n \"component_id\": \"component_id\",\n \"socket_names\": [\n \"socket_name\"\n ]\n }\n ],\n \"enabled\": true,\n \"negated\": true,\n \"parent_trigger_group_name\": \"parent_trigger_group_name\",\n \"trigger_description\": \"trigger_description\",\n \"trigger_name\": \"trigger_name\",\n \"trigger_phase\": \"MATCHING\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/client-domains")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"client_domain_ids\": [\n \"client_domain_id\"\n ],\n \"component_ids\": [\n \"component_id\"\n ],\n \"component_references\": [\n {\n \"component_id\": \"component_id\",\n \"socket_names\": [\n \"socket_name\"\n ]\n }\n ],\n \"enabled\": true,\n \"negated\": true,\n \"parent_trigger_group_name\": \"parent_trigger_group_name\",\n \"trigger_description\": \"trigger_description\",\n \"trigger_name\": \"trigger_name\",\n \"trigger_phase\": \"MATCHING\"\n}"
response = http.request(request)
puts response.read_body{
"component_ids": [
"<string>"
],
"component_references": [
{
"component_id": "<string>",
"socket_names": [
"<string>"
]
}
],
"enabled": true,
"negated": true,
"parent_trigger_group_name": "<string>",
"trigger_description": "<string>",
"trigger_id": "<string>",
"trigger_name": "<string>",
"trigger_type": "CLIENT_DOMAIN",
"client_domain_ids": [
"<string>"
]
}Create a client domain trigger
Adds a client domain trigger to the specified campaign controller. The trigger fires when the participant’s referral or action originates from the configured client domain. Returns the created trigger with its server-assigned id.
curl --request POST \
--url https://api.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/client-domains \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"client_domain_ids": [
"client_domain_id"
],
"component_ids": [
"component_id"
],
"component_references": [
{
"component_id": "component_id",
"socket_names": [
"socket_name"
]
}
],
"enabled": true,
"negated": true,
"parent_trigger_group_name": "parent_trigger_group_name",
"trigger_description": "trigger_description",
"trigger_name": "trigger_name",
"trigger_phase": "MATCHING"
}
'import requests
url = "https://api.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/client-domains"
payload = {
"client_domain_ids": ["client_domain_id"],
"component_ids": ["component_id"],
"component_references": [
{
"component_id": "component_id",
"socket_names": ["socket_name"]
}
],
"enabled": True,
"negated": True,
"parent_trigger_group_name": "parent_trigger_group_name",
"trigger_description": "trigger_description",
"trigger_name": "trigger_name",
"trigger_phase": "MATCHING"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
client_domain_ids: ['client_domain_id'],
component_ids: ['component_id'],
component_references: [{component_id: 'component_id', socket_names: ['socket_name']}],
enabled: true,
negated: true,
parent_trigger_group_name: 'parent_trigger_group_name',
trigger_description: 'trigger_description',
trigger_name: 'trigger_name',
trigger_phase: 'MATCHING'
})
};
fetch('https://api.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/client-domains', 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.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/client-domains",
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([
'client_domain_ids' => [
'client_domain_id'
],
'component_ids' => [
'component_id'
],
'component_references' => [
[
'component_id' => 'component_id',
'socket_names' => [
'socket_name'
]
]
],
'enabled' => true,
'negated' => true,
'parent_trigger_group_name' => 'parent_trigger_group_name',
'trigger_description' => 'trigger_description',
'trigger_name' => 'trigger_name',
'trigger_phase' => 'MATCHING'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"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.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/client-domains"
payload := strings.NewReader("{\n \"client_domain_ids\": [\n \"client_domain_id\"\n ],\n \"component_ids\": [\n \"component_id\"\n ],\n \"component_references\": [\n {\n \"component_id\": \"component_id\",\n \"socket_names\": [\n \"socket_name\"\n ]\n }\n ],\n \"enabled\": true,\n \"negated\": true,\n \"parent_trigger_group_name\": \"parent_trigger_group_name\",\n \"trigger_description\": \"trigger_description\",\n \"trigger_name\": \"trigger_name\",\n \"trigger_phase\": \"MATCHING\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<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.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/client-domains")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"client_domain_ids\": [\n \"client_domain_id\"\n ],\n \"component_ids\": [\n \"component_id\"\n ],\n \"component_references\": [\n {\n \"component_id\": \"component_id\",\n \"socket_names\": [\n \"socket_name\"\n ]\n }\n ],\n \"enabled\": true,\n \"negated\": true,\n \"parent_trigger_group_name\": \"parent_trigger_group_name\",\n \"trigger_description\": \"trigger_description\",\n \"trigger_name\": \"trigger_name\",\n \"trigger_phase\": \"MATCHING\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/client-domains")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"client_domain_ids\": [\n \"client_domain_id\"\n ],\n \"component_ids\": [\n \"component_id\"\n ],\n \"component_references\": [\n {\n \"component_id\": \"component_id\",\n \"socket_names\": [\n \"socket_name\"\n ]\n }\n ],\n \"enabled\": true,\n \"negated\": true,\n \"parent_trigger_group_name\": \"parent_trigger_group_name\",\n \"trigger_description\": \"trigger_description\",\n \"trigger_name\": \"trigger_name\",\n \"trigger_phase\": \"MATCHING\"\n}"
response = http.request(request)
puts response.read_body{
"component_ids": [
"<string>"
],
"component_references": [
{
"component_id": "<string>",
"socket_names": [
"<string>"
]
}
],
"enabled": true,
"negated": true,
"parent_trigger_group_name": "<string>",
"trigger_description": "<string>",
"trigger_id": "<string>",
"trigger_name": "<string>",
"trigger_type": "CLIENT_DOMAIN",
"client_domain_ids": [
"<string>"
]
}Authorizations
Path Parameters
(/version/.+)?Body
Body of a POST /v2/campaigns/{campaignId}{version:(/version/.+)?}/controllers/{controllerId}/triggers/client-domains request.
Choose between static or dynamic client domain ids
Show child attributes
Show child attributes
Choose between static or dynamic enabled
Choose between static or dynamic negated
Choose between static or dynamic parent trigger group name
Choose between static or dynamic trigger description
Choose between static or dynamic trigger name
Choose between static or dynamic trigger phase
MATCHING, QUALIFYING, QUALITY Response
Successful response
Show child attributes
Show child attributes
The enabled as configured: a literal value, or an expression (type:string) when defined dynamically.
The negated as configured: a literal value, or an expression (type:string) when defined dynamically.
The parent trigger group name as configured: a literal value, or an expression (type:string) when defined dynamically.
The trigger description as configured: a literal value, or an expression (type:string) when defined dynamically.
The trigger name as configured: a literal value, or an expression (type:string) when defined dynamically.
The trigger phase as configured: a literal value, or an expression (type:string) when defined dynamically.
MATCHING, QUALIFYING, QUALITY CLIENT_DOMAIN The client domain ids as configured: a literal value, or an expression (type:string) when defined dynamically.
