Skip to main content
POST
/
segments
/
search
Search segments
curl --request POST \
  --url https://api.kameleoon.com/segments/search \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "filter": {
    "field": "<string>",
    "parameters": [
      {}
    ]
  },
  "page": 123,
  "perPage": 123,
  "sort": [
    {
      "field": "<string>"
    }
  ]
}
'
import requests

url = "https://api.kameleoon.com/segments/search"

payload = {
"filter": {
"field": "<string>",
"parameters": [{}]
},
"page": 123,
"perPage": 123,
"sort": [{ "field": "<string>" }]
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}

response = requests.post(url, json=payload, headers=headers)

print(response.text)
const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
filter: {field: '<string>', parameters: [{}]},
page: 123,
perPage: 123,
sort: [{field: '<string>'}]
})
};

fetch('https://api.kameleoon.com/segments/search', 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.kameleoon.com/segments/search",
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([
'filter' => [
'field' => '<string>',
'parameters' => [
[

]
]
],
'page' => 123,
'perPage' => 123,
'sort' => [
[
'field' => '<string>'
]
]
]),
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>",
"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.kameleoon.com/segments/search"

payload := strings.NewReader("{\n \"filter\": {\n \"field\": \"<string>\",\n \"parameters\": [\n {}\n ]\n },\n \"page\": 123,\n \"perPage\": 123,\n \"sort\": [\n {\n \"field\": \"<string>\"\n }\n ]\n}")

req, _ := http.NewRequest("POST", url, payload)

req.Header.Add("Authorization", "Bearer <token>")
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.kameleoon.com/segments/search")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"filter\": {\n \"field\": \"<string>\",\n \"parameters\": [\n {}\n ]\n },\n \"page\": 123,\n \"perPage\": 123,\n \"sort\": [\n {\n \"field\": \"<string>\"\n }\n ]\n}")
.asString();
require 'uri'
require 'net/http'

url = URI("https://api.kameleoon.com/segments/search")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"filter\": {\n \"field\": \"<string>\",\n \"parameters\": [\n {}\n ]\n },\n \"page\": 123,\n \"perPage\": 123,\n \"sort\": [\n {\n \"field\": \"<string>\"\n }\n ]\n}"

response = http.request(request)
puts response.read_body
[
  {
    "conditionsData": {
      "firstLevel": [
        {
          "conditions": [
            {
              "weight": 1,
              "count": 123,
              "include": true,
              "htmlDescription": "<string>",
              "id": 123
            }
          ],
          "orOperators": [
            true
          ]
        }
      ],
      "firstLevelOrOperators": [
        true
      ]
    },
    "name": "My segment",
    "siteId": 8372,
    "audienceTracking": true,
    "audienceTrackingEditable": true,
    "conditionDataList": [
      {
        "id": 123,
        "isConditionBlock": true,
        "parentId": 123,
        "targetingCondition": {
          "weight": 1,
          "count": 123,
          "include": true,
          "htmlDescription": "<string>",
          "id": 123
        }
      }
    ],
    "conditionDataTree": {
      "targetingType": "<string>",
      "conditionData": [
        "<unknown>"
      ],
      "isConditionBlock": true
    },
    "createdBy": 123,
    "dateCreated": "2023-11-07T05:31:56Z",
    "dateModified": "2023-11-07T05:31:56Z",
    "description": "The segment is for new ab tests",
    "experimentAmount": 123,
    "experiments": [
      123
    ],
    "featureFlagAmount": 123,
    "hasSegmentCondition": true,
    "id": 123,
    "isFavorite": true,
    "links": [
      {
        "domainId": 123,
        "domainStatus": "<string>"
      }
    ],
    "personalizationAmount": 123,
    "personalizations": [
      123
    ],
    "tags": [
      "<string>"
    ],
    "usedBySegmentCondition": true,
    "userVisible": true
  }
]
{
"code": "<string>",
"impersonator": "<string>",
"message": "<string>",
"name": "<string>",
"sub": "<string>",
"time": 123,
"timestamp": "2023-11-07T05:31:56Z"
}
{
"code": "<string>",
"impersonator": "<string>",
"message": "<string>",
"name": "<string>",
"sub": "<string>",
"time": 123,
"timestamp": "2023-11-07T05:31:56Z"
}
{
"code": "<string>",
"impersonator": "<string>",
"message": "<string>",
"name": "<string>",
"sub": "<string>",
"time": 123,
"timestamp": "2023-11-07T05:31:56Z"
}
{
"code": "<string>",
"impersonator": "<string>",
"message": "<string>",
"name": "<string>",
"sub": "<string>",
"time": 123,
"timestamp": "2023-11-07T05:31:56Z"
}
{
"code": "<string>",
"impersonator": "<string>",
"message": "<string>",
"name": "<string>",
"sub": "<string>",
"time": 123,
"timestamp": "2023-11-07T05:31:56Z"
}
{
"code": "<string>",
"impersonator": "<string>",
"message": "<string>",
"name": "<string>",
"sub": "<string>",
"time": 123,
"timestamp": "2023-11-07T05:31:56Z"
}
{
"code": "<string>",
"impersonator": "<string>",
"message": "<string>",
"name": "<string>",
"sub": "<string>",
"time": 123,
"timestamp": "2023-11-07T05:31:56Z"
}
{
"code": "<string>",
"impersonator": "<string>",
"message": "<string>",
"name": "<string>",
"sub": "<string>",
"time": 123,
"timestamp": "2023-11-07T05:31:56Z"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Query Parameters

optionalFields
string[]

Body

application/json
filter
Filtering condition · object

Filtering expression

page
integer<int32>

Page number

perPage
integer<int32>

Number of items per page

sort
Sorting parameter · object[]

Sorting parameters

Response

OK

conditionsData
Conditions data · object
required

Conditions according to which visitors will be segmented

name
string
required

Name of the segment

Example:

"My segment"

segmentType
enum<string>
required

Segment type refers to the classification of segments based on their usage.

Available options:
STANDARD,
KEY_MOMENT,
FEATURE_FLAG,
ALL
siteId
integer<int64>
required

Site Id of the project where the segment is created

Example:

8372

audienceTracking
boolean

Specifies whether the segment is tracking an audience.

audienceTrackingEditable
boolean
read-only

This flag shows if audienceTracking can be enabled/disabled. In some cases, audienceTracking cannot be disabled. E.g. a segment has predictive conditions, such segments are tracked by default.

conditionDataList
Conditions data node · object[]

Conditions by which visitors will be segmented in list form

conditionDataTree
Conditions data level · object

Conditions by which visitors will be segmented in tree form

createdBy
integer<int64>
read-only

Account Id of the creator of the segment

dateCreated
string<date-time>
read-only

Date when the segment was created

dateModified
string<date-time>
read-only

Date when the segment was modified

description
string

Description of the segment

Example:

"The segment is for new ab tests"

experimentAmount
integer<int64>
read-only

Number of experiments using this segment. This is an optional field that is included in the request body

experiments
integer<int64>[]
read-only

List of experiment ids using this segment. This is an optional field that is included in the request body

featureFlagAmount
integer<int64>
read-only

Number of feature flags being used in this goal. This is an optional field that must be specified in request params.

hasSegmentCondition
boolean
read-only

Indicates if the segment has conditions

id
integer<int64>
read-only

Unique Id of the segment

isFavorite
boolean

Indicates whether the segment has been marked as a favorite.

List of links to related entities.This is an optional field that is included in the request body.

personalizationAmount
integer<int64>
read-only

Number of personalizations using this segment. This is an optional field that is included in the request body

personalizations
integer<int64>[]
read-only

List of personalization ids using this segment. This is an optional field that is included in the request body

tags
string[]
usedBySegmentCondition
boolean
read-only
userVisible
boolean

Indicates whether the segment has been marked as hidden from the user