curl --request GET \
--url https://api.extole.io/v1/components/duplicatable/built \
--header 'Authorization: <api-key>'import requests
url = "https://api.extole.io/v1/components/duplicatable/built"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.extole.io/v1/components/duplicatable/built', 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/v1/components/duplicatable/built",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <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"
"net/http"
"io"
)
func main() {
url := "https://api.extole.io/v1/components/duplicatable/built"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.extole.io/v1/components/duplicatable/built")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.extole.io/v1/components/duplicatable/built")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"assets": [
{
"description": "<string>",
"filename": "<string>",
"id": "<string>",
"name": "<string>",
"tags": [
"<string>"
]
}
],
"campaign_id": "<string>",
"campaign_state": "<string>",
"component_ids": [
"<string>"
],
"component_references": [
{
"component_id": "<string>",
"socket_names": [
"<string>"
]
}
],
"created_date": "2025-10-24T02:00:00-07:00",
"description": "<string>",
"display_name": "<string>",
"duplicatable": true,
"facets": [
{
"name": "<string>",
"value": "<string>"
}
],
"id": "<string>",
"install": {},
"installed_into_socket": "<string>",
"name": "<string>",
"origin": {
"client_id": "<string>",
"component_id": "<string>",
"component_version": 123
},
"owner": "CLIENT",
"source_client_id": "<string>",
"tags": [
"<string>"
],
"type": "<string>",
"types": [
"<string>"
],
"updated_date": "2025-10-24T02:00:00-07:00",
"upload_version": "<string>",
"variables": [
{
"display_name": "<string>",
"name": "<string>",
"priority": "10",
"tags": [
"<string>"
],
"type": "ADMIN_ICON",
"values": {
"default": {},
"en": {}
},
"description": "<string>",
"source": "INHERITED",
"source_component_id": "<string>",
"source_version": 123
}
],
"version": 123
}
]List built duplicatable components
Returns all duplicatable components in their fully evaluated runtime form.
curl --request GET \
--url https://api.extole.io/v1/components/duplicatable/built \
--header 'Authorization: <api-key>'import requests
url = "https://api.extole.io/v1/components/duplicatable/built"
headers = {"Authorization": "<api-key>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: '<api-key>'}};
fetch('https://api.extole.io/v1/components/duplicatable/built', 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/v1/components/duplicatable/built",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: <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"
"net/http"
"io"
)
func main() {
url := "https://api.extole.io/v1/components/duplicatable/built"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "<api-key>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.extole.io/v1/components/duplicatable/built")
.header("Authorization", "<api-key>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.extole.io/v1/components/duplicatable/built")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = '<api-key>'
response = http.request(request)
puts response.read_body[
{
"assets": [
{
"description": "<string>",
"filename": "<string>",
"id": "<string>",
"name": "<string>",
"tags": [
"<string>"
]
}
],
"campaign_id": "<string>",
"campaign_state": "<string>",
"component_ids": [
"<string>"
],
"component_references": [
{
"component_id": "<string>",
"socket_names": [
"<string>"
]
}
],
"created_date": "2025-10-24T02:00:00-07:00",
"description": "<string>",
"display_name": "<string>",
"duplicatable": true,
"facets": [
{
"name": "<string>",
"value": "<string>"
}
],
"id": "<string>",
"install": {},
"installed_into_socket": "<string>",
"name": "<string>",
"origin": {
"client_id": "<string>",
"component_id": "<string>",
"component_version": 123
},
"owner": "CLIENT",
"source_client_id": "<string>",
"tags": [
"<string>"
],
"type": "<string>",
"types": [
"<string>"
],
"updated_date": "2025-10-24T02:00:00-07:00",
"upload_version": "<string>",
"variables": [
{
"display_name": "<string>",
"name": "<string>",
"priority": "10",
"tags": [
"<string>"
],
"type": "ADMIN_ICON",
"values": {
"default": {},
"en": {}
},
"description": "<string>",
"source": "INHERITED",
"source_component_id": "<string>",
"source_version": 123
}
],
"version": 123
}
]Authorizations
Query Parameters
The name of the component to filter by.
A comma-separated list of source client ids; Only components with specified source client ids will be returned.
The state of the components campaign to filter by. (LIVE, PAUSED, ENDED,...)
The version state of the components campaign to filter by.
LATEST, PUBLISHED A comma-separated list of components campaign IDs to filter by.
A comma-separated list of tags; the component must have at least one of these tags.
A comma-separated list of tags; the component must have all of these tags.
A comma-separated list of tags; the component having any of these tags is excluded.
A comma-separated list of tags; the component having all of these tags is excluded.
A comma-separated list of component types; the component must have at least one of these types.
A comma-separated list of component types; the component must have all of these types.
A comma-separated list of setting name:value pairs. Backslash escapes the next character (e.g. , : \). The component must have at least one.
A comma-separated list of setting name:value pairs. Backslash escapes the next character (e.g. , : \). The component must have all of them.
The ID of the target component to filter by. Only compatible components will be returned.
The name of the target setting (socket or component_setting_lookup) to filter by. Only compatible components will be returned.
The REST-visible property name on the resolved target setting whose value provides the compatibility filter collection. When provided explicitly, it requires target_component_id and target_setting_name. Defaults to filters when omitted. Only REST-visible properties whose values are supported filter collections are accepted. Only compatible components will be returned.
showAll applies only for components visible due components subscriptionsfalse (default) shows components from LIVE, integration and campaign-components program-types.true returns all components regardless of their program-type or state of the campaign.
Response
Successful response
Show child attributes
Show child attributes
Show child attributes
Show child attributes
RFC 3339 or RFC 9557 date-time with a numeric UTC offset and an optional IANA time-zone suffix in square brackets. Precision up to milliseconds.
^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,3})?(Z|[+-](?:[01][0-9]|2[0-3]):[0-5][0-9])(\[[^\]]+\])?$"2025-10-24T02:00:00-07:00"
Show child attributes
Show child attributes
The install as configured: a literal value, or an expression (type:string) when defined dynamically. Installtime expressions use ComponentInstalltimeContext.
Show child attributes
Show child attributes
CLIENT, EXTOLE, EXTOLE_BETA RFC 3339 or RFC 9557 date-time with a numeric UTC offset and an optional IANA time-zone suffix in square brackets. Precision up to milliseconds.
^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,3})?(Z|[+-](?:[01][0-9]|2[0-3]):[0-5][0-9])(\[[^\]]+\])?$"2025-10-24T02:00:00-07:00"
- Option 1
- Option 2
- Option 3
- Option 4
- Option 5
- Option 6
- Option 7
- Option 8
- Option 9
- Option 10
- Option 11
- Option 12
- Option 13
- Option 14
Show child attributes
Show child attributes
Was this page helpful?
