curl --request PUT \
--url https://api.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/expressions/{triggerId} \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"component_ids": [
"component_id"
],
"component_references": [
{
"component_id": "component_id",
"socket_names": [
"socket_name"
]
}
],
"data": {
"data_key": "data_key"
},
"enabled": true,
"expression": 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/expressions/{triggerId}"
payload = {
"component_ids": ["component_id"],
"component_references": [
{
"component_id": "component_id",
"socket_names": ["socket_name"]
}
],
"data": { "data_key": "data_key" },
"enabled": True,
"expression": 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.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
component_ids: ['component_id'],
component_references: [{component_id: 'component_id', socket_names: ['socket_name']}],
data: {data_key: 'data_key'},
enabled: true,
expression: 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/expressions/{triggerId}', 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/expressions/{triggerId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'component_ids' => [
'component_id'
],
'component_references' => [
[
'component_id' => 'component_id',
'socket_names' => [
'socket_name'
]
]
],
'data' => [
'data_key' => 'data_key'
],
'enabled' => true,
'expression' => 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/expressions/{triggerId}"
payload := strings.NewReader("{\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 \"data\": {\n \"data_key\": \"data_key\"\n },\n \"enabled\": true,\n \"expression\": 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("PUT", 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.put("https://api.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/expressions/{triggerId}")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\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 \"data\": {\n \"data_key\": \"data_key\"\n },\n \"enabled\": true,\n \"expression\": 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/expressions/{triggerId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\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 \"data\": {\n \"data_key\": \"data_key\"\n },\n \"enabled\": true,\n \"expression\": 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": "EXPRESSION",
"data": {},
"expression": true
}Update an expression trigger
Updates the expression trigger on the specified campaign controller. Only fields present in the request body are changed. Returns the updated trigger.
curl --request PUT \
--url https://api.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/expressions/{triggerId} \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"component_ids": [
"component_id"
],
"component_references": [
{
"component_id": "component_id",
"socket_names": [
"socket_name"
]
}
],
"data": {
"data_key": "data_key"
},
"enabled": true,
"expression": 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/expressions/{triggerId}"
payload = {
"component_ids": ["component_id"],
"component_references": [
{
"component_id": "component_id",
"socket_names": ["socket_name"]
}
],
"data": { "data_key": "data_key" },
"enabled": True,
"expression": 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.put(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'PUT',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
component_ids: ['component_id'],
component_references: [{component_id: 'component_id', socket_names: ['socket_name']}],
data: {data_key: 'data_key'},
enabled: true,
expression: 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/expressions/{triggerId}', 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/expressions/{triggerId}",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "PUT",
CURLOPT_POSTFIELDS => json_encode([
'component_ids' => [
'component_id'
],
'component_references' => [
[
'component_id' => 'component_id',
'socket_names' => [
'socket_name'
]
]
],
'data' => [
'data_key' => 'data_key'
],
'enabled' => true,
'expression' => 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/expressions/{triggerId}"
payload := strings.NewReader("{\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 \"data\": {\n \"data_key\": \"data_key\"\n },\n \"enabled\": true,\n \"expression\": 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("PUT", 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.put("https://api.extole.io/v2/campaigns/{campaignId}{version}/controllers/{controllerId}/triggers/expressions/{triggerId}")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\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 \"data\": {\n \"data_key\": \"data_key\"\n },\n \"enabled\": true,\n \"expression\": 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/expressions/{triggerId}")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\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 \"data\": {\n \"data_key\": \"data_key\"\n },\n \"enabled\": true,\n \"expression\": 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": "EXPRESSION",
"data": {},
"expression": true
}Authorizations
Path Parameters
(/version/.+)?Body
Show child attributes
Show child attributes
Choose between static or dynamic expression
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 EXPRESSION Show child attributes
Show child attributes
The expression as configured: a literal value, or an expression (type:string) when defined dynamically.
