segments
Creates, updates, deletes, gets or lists a segments resource.
Overview
| Name | segments |
| Type | Resource |
| Id | vercel.feature_flags.segments |
Fields
The following fields are returned by SELECT queries:
- get
- list
| Name | Datatype | Description |
|---|---|---|
id | string | |
project_id | string | (wire: projectId) |
type_name | string | (segment) (wire: typeName) |
created_at | number | (wire: createdAt) |
created_by | string | (wire: createdBy) |
data | object | |
description | string | |
hint | string | |
label | string | |
metadata | object | |
slug | string | |
updated_at | number | (wire: updatedAt) |
used_by_flags | array | (wire: usedByFlags) |
used_by_segments | array | (wire: usedBySegments) |
| Name | Datatype | Description |
|---|---|---|
id | string | |
project_id | string | (wire: projectId) |
type_name | string | (segment) (wire: typeName) |
created_at | number | (wire: createdAt) |
created_by | string | (wire: createdBy) |
data | object | |
description | string | |
hint | string | |
label | string | |
metadata | object | |
slug | string | |
updated_at | number | (wire: updatedAt) |
used_by_flags | array | (wire: usedByFlags) |
used_by_segments | array | (wire: usedBySegments) |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get | select | project_id_or_name, segment_id_or_slug | with_metadata, team_id, slug | Retrieve a feature flag segment by ID or slug. |
list | select | project_id_or_name | with_metadata, team_id, slug | List all feature flag segments for a project. |
create | insert | project_id_or_name, slug, label, data, hint | team_id | Create a new feature flag segment. |
update | update | project_id_or_name, segment_id_or_slug | with_metadata, team_id, slug | Update an existing feature flag segment. |
delete | delete | project_id_or_name, segment_id_or_slug | with_metadata, team_id, slug | Delete a feature flag segment. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
project_id_or_name | string | The project id or name |
segment_id_or_slug | string | The segment slug |
slug | string | The Team slug to perform the request on behalf of. |
team_id | string | The Team identifier to perform the request on behalf of. (wire: teamId) |
with_metadata | boolean | Whether to include metadata (wire: withMetadata) |
SELECT examples
- get
- list
Retrieve a feature flag segment by ID or slug.
SELECT
id,
project_id,
type_name,
created_at,
created_by,
data,
description,
hint,
label,
metadata,
slug,
updated_at,
used_by_flags,
used_by_segments
FROM vercel.feature_flags.segments
WHERE project_id_or_name = '{{ project_id_or_name }}' -- required
AND segment_id_or_slug = '{{ segment_id_or_slug }}' -- required
AND with_metadata = '{{ with_metadata }}'
AND team_id = '{{ team_id }}'
AND slug = '{{ slug }}'
;
List all feature flag segments for a project.
SELECT
id,
project_id,
type_name,
created_at,
created_by,
data,
description,
hint,
label,
metadata,
slug,
updated_at,
used_by_flags,
used_by_segments
FROM vercel.feature_flags.segments
WHERE project_id_or_name = '{{ project_id_or_name }}' -- required
AND with_metadata = '{{ with_metadata }}'
AND team_id = '{{ team_id }}'
AND slug = '{{ slug }}'
;
INSERT examples
- create
- Manifest
Create a new feature flag segment.
INSERT INTO vercel.feature_flags.segments (
slug,
created_by,
label,
description,
data,
hint,
project_id_or_name,
team_id
)
SELECT
'{{ slug }}' /* required */,
'{{ created_by }}',
'{{ label }}' /* required */,
'{{ description }}',
'{{ data }}' /* required */,
'{{ hint }}' /* required */,
'{{ project_id_or_name }}',
'{{ team_id }}'
RETURNING
id,
project_id,
type_name,
created_at,
created_by,
data,
description,
hint,
label,
slug,
updated_at,
used_by_flags,
used_by_segments
;
# Description fields are for documentation purposes
- name: segments
props:
- name: project_id_or_name
value: "{{ project_id_or_name }}"
description: Required parameter for the segments resource.
- name: slug
value: "{{ slug }}"
- name: created_by
value: "{{ created_by }}"
description: |
The entity who created the segment
- name: label
value: "{{ label }}"
- name: description
value: "{{ description }}"
- name: data
description: |
The data of the segment
value:
rules:
- id: "{{ id }}"
conditions: "{{ conditions }}"
outcome: "{{ outcome }}"
include: "{{ include }}"
exclude: "{{ exclude }}"
- name: hint
value: "{{ hint }}"
- name: team_id
value: "{{ team_id }}"
description: The Team identifier to perform the request on behalf of.
description: The Team identifier to perform the request on behalf of.
UPDATE examples
- update
Update an existing feature flag segment.
UPDATE vercel.feature_flags.segments
SET
operations = '{{ operations }}',
label = '{{ label }}',
description = '{{ description }}',
data = '{{ data }}',
hint = '{{ hint }}'
WHERE
project_id_or_name = '{{ project_id_or_name }}' --required
AND segment_id_or_slug = '{{ segment_id_or_slug }}' --required
AND with_metadata = {{ with_metadata}}
AND team_id = '{{ team_id}}'
AND slug = '{{ slug}}'
RETURNING
id,
project_id,
type_name,
created_at,
created_by,
data,
description,
hint,
label,
metadata,
slug,
updated_at,
used_by_flags,
used_by_segments;
DELETE examples
- delete
Delete a feature flag segment.
DELETE FROM vercel.feature_flags.segments
WHERE project_id_or_name = '{{ project_id_or_name }}' --required
AND segment_id_or_slug = '{{ segment_id_or_slug }}' --required
AND with_metadata = '{{ with_metadata }}'
AND team_id = '{{ team_id }}'
AND slug = '{{ slug }}'
;