List segments
Get a list of all segments in the given project.
Segments can be rule-based, list-based, or synced. Big segments include larger list-based segments and synced segments. Some fields in the response only apply to big segments.
Filtering segments
The filter parameter supports the following operators: equals, anyOf, and exists.
You can also combine filters in the following ways:
- Use a comma (
,) as an AND operator - Use a vertical bar (
|) as an OR operator - Use parentheses (
()) to group filters
Supported fields and operators
You can only filter certain fields in segments when using the filter parameter. Additionally, you can only filter some fields with certain operators.
When you search for segments, the filter parameter supports the following fields and operators:
| Field | Description | Supported operators |
|---|---|---|
excludedKeys | The segment keys of segments to exclude from the results. | anyOf |
external | Whether the segment is a synced segment. | exists |
includedKeys | The segment keys of segments to include in the results. | anyOf |
query | A "fuzzy" search across segment key, name, and description. Supply a string or list of strings to the operator. | equals |
tags | The segment tags. | anyOf |
unbounded | Whether the segment is a standard segment (false) or a big segment (true). Standard segments include rule-based segments and smaller list-based segments. Big segments include larger list-based segments and synced segments. | equals |
Here are a few examples:
- The filter
?filter=tags anyOf ["enterprise", "beta"],query equals "toggle"matches segments with "toggle" in their key, name, or description that also have "enterprise" or "beta" as a tag. - The filter
?filter=excludedKeys anyOf ["segmentKey1", "segmentKey2"]excludes the segments with those keys from the results. - The filter
?filter=unbounded equals truematches larger list-based segments and synced segments.
The documented values for filter query parameters are prior to URL encoding. For example, the [ in ?filter=tags anyOf ["enterprise", "beta"] must be encoded to %5B.
Authorization
ApiKey read, writeIn: header
Scope: read, write
Path Parameters
The project key
stringThe environment key
stringQuery Parameters
The number of segments to return. Defaults to 20.
int64Where to start in the list. Use this with pagination. For example, an offset of 10 skips the first ten items and then returns the next items in the list, up to the query limit.
int64Accepts sorting order and fields. Fields can be comma separated. Possible fields are 'creationDate', 'name', 'lastModified'. Example: sort=name sort by names ascending or sort=-name,creationDate sort by names descending and creationDate ascending.
stringAccepts filter by excludedKeys, external, includedKeys, query, tags, unbounded, view. To learn more about the filter syntax, read the 'Filtering segments' section above.
stringResponse Body
application/json
application/json
application/json
curl -X GET "https://example.com/api/v2/segments/string/string"{ "items": [ { "name": "Example segment", "description": "Bundle our sample customers together", "tags": [ "testing" ], "creationDate": "1654104600000", "lastModifiedDate": "1654104600000", "key": "segment-key-123abc", "included": [ "user-key-123abc" ], "excluded": [ "user-key-123abc" ], "includedContexts": [ { "values": [ "string" ], "contextKind": "string" } ], "excludedContexts": [ { "values": [ "string" ], "contextKind": "string" } ], "_links": { "property1": { "href": "string", "type": "string" }, "property2": { "href": "string", "type": "string" } }, "rules": [ { "_id": "1234a56b7c89d012345e678f", "clauses": [ { "_id": "12ab3c45de678910fab12345", "attribute": "email", "negate": false, "op": "endsWith", "values": [ ".edu" ] } ] } ], "version": 1, "deleted": false, "_access": { "denied": [ { "action": "string", "reason": { "resources": [ "proj/*:env/*;qa_*:/flag/*" ], "notResources": [ "string" ], "actions": [ "*" ], "notActions": [ "string" ], "effect": "allow", "role_name": "string" } } ], "allowed": [ { "action": "string", "reason": { "resources": [ "proj/*:env/*;qa_*:/flag/*" ], "notResources": [ "string" ], "actions": [ "*" ], "notActions": [ "string" ], "effect": "allow", "role_name": "string" } } ] }, "_flags": [ { "name": "Example flag", "key": "flag-key-123abc", "_links": { "property1": { "href": "string", "type": "string" }, "property2": { "href": "string", "type": "string" } }, "_site": { "href": "string", "type": "string" } } ], "unbounded": false, "unboundedContextKind": "string", "generation": 0, "_unboundedMetadata": { "envId": "string", "segmentId": "string", "version": 0, "includedCount": 0, "excludedCount": 0, "lastModified": 0, "deleted": true }, "_external": "amplitude", "_externalLink": "https://analytics.amplitude.com/org/1234/cohort/123abc", "_importInProgress": false } ], "_links": { "property1": { "href": "string", "type": "string" }, "property2": { "href": "string", "type": "string" } }, "totalCount": 0}