Skip to main content
POST
/
projects
/
{projectId}
/
envs
/
{envId}
/
flags
/
{flagId}
/
targeting-rules
Create targeting rule
curl --request POST \
  --url http://localhost:3000/projects/{projectId}/envs/{envId}/flags/{flagId}/targeting-rules \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "kind": "segment",
  "name": "<string>",
  "conditions": [
    {
      "attribute": "<string>",
      "operator": "eq",
      "value": "<string>",
      "logical_op": "AND"
    }
  ],
  "segment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "variation_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "rollout_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
  "order_index": 123
}
'
{
  "statusCode": 123,
  "message": "OK",
  "data": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "flag_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "environment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "kind": "segment",
    "conditions": [
      {
        "attribute": "<string>",
        "operator": "eq",
        "value": "<string>",
        "logical_op": "AND"
      }
    ],
    "order_index": 123,
    "created_at": "2023-11-07T05:31:56Z",
    "updated_at": "2023-11-07T05:31:56Z",
    "name": "<string>",
    "segment_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "variation_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "rollout_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "deleted_at": "2023-11-07T05:31:56Z",
    "segment_name": "<string>",
    "segment_description": "<string>",
    "segment_rules": [
      {
        "attribute": "<string>",
        "operator": "eq",
        "value": "<string>",
        "logical_op": "AND"
      }
    ],
    "segment_logical_op": "<string>",
    "segment_key": "<string>",
    "segment": {
      "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "name": "<string>",
      "project_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
      "rules": [
        {
          "type": "rule",
          "attribute": "<string>",
          "operator": "eq",
          "value": "<string>"
        }
      ],
      "logical_op": "AND",
      "created_at": "2023-11-07T05:31:56Z",
      "updated_at": "2023-11-07T05:31:56Z",
      "description": "<string>",
      "force": false,
      "key": "<string>"
    }
  }
}

Authorizations

Authorization
string
header
required

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

Path Parameters

projectId
string<uuid>
required
envId
string<uuid>
required
flagId
string<uuid>
required

Body

application/json
kind
required

Type of rule: segment-based or custom conditions

Available options:
segment
name
string

Human-readable name for the rule

conditions
object[]

Required when kind="custom". Array of conditions (AND semantics)

segment_id
string<uuid> | null
variation_id
string<uuid> | null

ID of flag_variations row when this rule matches.

rollout_id
string<uuid> | null

ID of flag_rollouts row to use when this rule matches.

order_index
number

Order in which rules are evaluated (lower = higher priority). Defaults to 0

Response

Default Response

statusCode
number
message
string
default:OK
data
object