Statsig

App · 20 actions

Manage Statsig feature flags from your workflows: create feature gates, turn them on and off, let chosen users through, fill ID list segments, create dynamic configs, and read experiments and the audit log.

Actions

ActionWhat it does
Add IDs to segmentAdd user ids (or other ids) to an ID list segment.
Add users to feature gateAlways let some users through a feature gate, or always keep others out, whatever its rules say.
Create dynamic configCreate a dynamic config that serves its default value to everyone.
Create feature gateCreate a feature gate.
Create segmentCreate an ID list segment, a named list of users (or other ids) that gate and config rules can target, and optionally fill it.
Delete dynamic configDelete a dynamic config for good.
Delete feature gateDelete a feature gate for good.
Delete segmentDelete a segment for good.
Get dynamic configGet one dynamic config with its default value and rules.
Get feature gateGet one feature gate with its rules and whether it is on.
List audit logList changes made in the project, newest first: who changed which gate, config, segment or experiment, and when.
List dynamic configsList the project's dynamic configs, a page at a time.
List experimentsList the project's experiments with their status, groups and dates, optionally only those in some statuses.
List feature gatesList the project's feature gates, a page at a time.
List segment IDsList the ids in an ID list segment, a page at a time.
List segmentsList the project's segments with their type and, for ID lists, how many ids they hold.
Remove IDs from segmentTake user ids (or other ids) out of an ID list segment.
Remove users from feature gateStop letting users through a feature gate, or keeping them out, so its rules decide for them again.
Turn off feature gateTurn a feature gate off, so it lets no one through.
Turn on feature gateTurn a feature gate on, so its rules decide who passes.

Add IDs to segment

Add user ids (or other ids) to an ID list segment.

Inputs

SegmentsegmenttextRequired
The ID list segment.
IDsidslistRequired
The IDs, of the segment's ID type (user ids for a User ID segment). Type several separated by commas, or pass a list from an earlier step.

Outputs

countnumber
How many ids were sent
idslist
The ids
segment_idtext
The segment
Example output
{
  "count": 2,
  "ids": [
    "user_123",
    "user_456"
  ],
  "segment_id": "beta_testers"
}

Add users to feature gate

Always let some users through a feature gate, or always keep others out, whatever its rules say. Other users already added stay.

Inputs

Feature gategatetextRequired
The feature gate.
Users to let throughpassing_user_idslist
User ids that always pass the gate, whatever its rules say. Type several separated by commas, or pass a list from an earlier step.
Users to keep outfailing_user_idslist
User ids that never pass the gate, whatever its rules say. Type several separated by commas, or pass a list from an earlier step.

Outputs

failing_user_idslist
Every user the gate now always keeps out
gate_idtext
The gate
passing_user_idslist
Every user the gate now always lets through
Example output
{
  "failing_user_ids": [],
  "gate_id": "new_checkout",
  "passing_user_ids": [
    "user_123"
  ]
}

Create dynamic config

Create a dynamic config that serves its default value to everyone. Add rules in Statsig to serve others something else.

Inputs

NamenametextRequired
The config's name, 3 to 100 characters. Statsig makes its id from it: Pricing Page becomes pricing_page.
Descriptiondescriptiontext
What it is for, shown in the Statsig console.
Default valuedefault_valueobject
The values the config serves to everyone, such as a button colour or a limit.
ID typeid_typetext
Which id it checks people by. Leave empty for User ID, Statsig's default.
Tagstagslist
Tags to file it under in the Statsig console.

Outputs

dynamic_configobject
The new dynamic config
Example output
{
  "dynamic_config": {
    "checksPerHour": 0,
    "createdTime": 1792438637085,
    "created_at": "2026-10-19T19:37:17.085000Z",
    "creatorName": "Jo Bloggs",
    "defaultValue": {
      "button_color": "blue",
      "max_items": 10
    },
    "description": "Settings for the pricing page",
    "id": "pricing_page",
    "idType": "userID",
    "isEnabled": true,
    "lastModifiedTime": 1792438637233,
    "lastModifierName": "Jo Bloggs",
    "last_modified_at": "2026-10-19T19:37:17.233000Z",
    "name": "Pricing Page",
    "permalink": "https://console.statsig.com/4YLTPh/dynamic_configs/pricing_page",
    "rules": [],
    "status": "Active",
    "tags": [],
    "version": 1
  }
}

Create feature gate

Create a feature gate. It starts with no rules, so it lets through only the users you add to it; add rules in Statsig to roll it out further.

Inputs

NamenametextRequired
The gate's name, 3 to 100 characters. Statsig makes its id from it: New Checkout becomes new_checkout.
Descriptiondescriptiontext
What it is for, shown in the Statsig console.
ID typeid_typetext
Which id it checks people by. Leave empty for User ID, Statsig's default.
Tagstagslist
Tags to file it under in the Statsig console.
Turned onis_enabledtrue/false
Create the gate turned on. A new gate has no rules, so it lets through only the users you add to it either way.Default: true.

Outputs

gateobject
The new feature gate
Example output
{
  "gate": {
    "checksPerHour": 0,
    "createdTime": 1792438637085,
    "created_at": "2026-10-19T19:37:17.085000Z",
    "creatorName": "Jo Bloggs",
    "description": "The redesigned checkout page",
    "id": "new_checkout",
    "idType": "userID",
    "isEnabled": true,
    "lastModifiedTime": 1792438637233,
    "lastModifierName": "Jo Bloggs",
    "last_modified_at": "2026-10-19T19:37:17.233000Z",
    "name": "New Checkout",
    "permalink": "https://console.statsig.com/4YLTPh/gates/new_checkout",
    "rules": [],
    "status": "In Progress",
    "tags": [
      "\u2605 Core"
    ],
    "type": "TEMPORARY",
    "version": 1
  }
}

Create segment

Create an ID list segment, a named list of users (or other ids) that gate and config rules can target, and optionally fill it.

Inputs

NamenametextRequired
The segment's name, 3 to 100 characters. Statsig makes its id from it: Beta Testers becomes beta_testers.
Descriptiondescriptiontext
What it is for, shown in the Statsig console.
ID typeid_typetext
Which id it checks people by. Leave empty for User ID, Statsig's default.
IDsidslist
IDs to put in the segment straight away. Type several separated by commas, or pass a list from an earlier step.

Outputs

ids_addednumber
How many ids it got
segmentobject
The new segment
Example output
{
  "ids_added": 2,
  "segment": {
    "count": 2,
    "createdTime": 1792438637085,
    "created_at": "2026-10-19T19:37:17.085000Z",
    "creatorName": "Jo Bloggs",
    "description": "People trying new features early",
    "id": "beta_testers",
    "idType": "userID",
    "isEnabled": true,
    "lastModifiedTime": 1792438637233,
    "lastModifierName": "Jo Bloggs",
    "last_modified_at": "2026-10-19T19:37:17.233000Z",
    "name": "Beta Testers",
    "tags": [],
    "type": "id_list"
  }
}

Delete dynamic config

Delete a dynamic config for good.

Inputs

Dynamic configdynamic_configtextRequired
The dynamic config.

Outputs

deletedtrue/false
Always true once deleted
dynamic_config_idtext
The dynamic config deleted
Example output
{
  "deleted": true,
  "dynamic_config_id": "pricing_page"
}

Delete feature gate

Delete a feature gate for good.

Inputs

Feature gategatetextRequired
The feature gate.

Outputs

deletedtrue/false
Always true once deleted
gate_idtext
The gate deleted
Example output
{
  "deleted": true,
  "gate_id": "new_checkout"
}

Delete segment

Delete a segment for good.

Inputs

SegmentsegmenttextRequired
The segment.

Outputs

deletedtrue/false
Always true once deleted
segment_idtext
The segment deleted
Example output
{
  "deleted": true,
  "segment_id": "beta_testers"
}

Get dynamic config

Get one dynamic config with its default value and rules.

Inputs

Dynamic configdynamic_configtextRequired
The dynamic config.

Outputs

dynamic_configobject
The dynamic config
Example output
{
  "dynamic_config": {
    "checksPerHour": 0,
    "createdTime": 1792438637085,
    "created_at": "2026-10-19T19:37:17.085000Z",
    "creatorName": "Jo Bloggs",
    "defaultValue": {
      "button_color": "blue",
      "max_items": 10
    },
    "description": "Settings for the pricing page",
    "id": "pricing_page",
    "idType": "userID",
    "isEnabled": true,
    "lastModifiedTime": 1792438637233,
    "lastModifierName": "Jo Bloggs",
    "last_modified_at": "2026-10-19T19:37:17.233000Z",
    "name": "Pricing Page",
    "permalink": "https://console.statsig.com/4YLTPh/dynamic_configs/pricing_page",
    "rules": [],
    "status": "Active",
    "tags": [],
    "version": 1
  }
}

Get feature gate

Get one feature gate with its rules and whether it is on.

Inputs

Feature gategatetextRequired
The feature gate.

Outputs

gateobject
The feature gate
Example output
{
  "gate": {
    "checksPerHour": 0,
    "createdTime": 1792438637085,
    "created_at": "2026-10-19T19:37:17.085000Z",
    "creatorName": "Jo Bloggs",
    "description": "The redesigned checkout page",
    "id": "new_checkout",
    "idType": "userID",
    "isEnabled": true,
    "lastModifiedTime": 1792438637233,
    "lastModifierName": "Jo Bloggs",
    "last_modified_at": "2026-10-19T19:37:17.233000Z",
    "name": "New Checkout",
    "permalink": "https://console.statsig.com/4YLTPh/gates/new_checkout",
    "rules": [],
    "status": "In Progress",
    "tags": [
      "\u2605 Core"
    ],
    "type": "TEMPORARY",
    "version": 1
  }
}

List audit log

List changes made in the project, newest first: who changed which gate, config, segment or experiment, and when.

Inputs

Fromstart_datedate
The first day to include. Leave empty for the 90 days up to the To date.
Toend_datedate
The last day to include. Leave empty for today.
Pagepagenumber
Which page of results to return, starting at 1.At least 1. Default: 1.
Results per pagelimitnumber
How many to return per page, 1-100. Defaults to 50.From 1 to 100. Default: 50.

Outputs

audit_logslist
The changes
has_moretrue/false
Whether a later page has more
pagenumber
The page returned, from 1
totalnumber
How many there are in all
Example output
{
  "audit_logs": [
    {
      "actionType": "gate_update",
      "changeLog": "Updated Gate",
      "changes": {},
      "date": "Mon Oct 19 2026",
      "id": "43i6fBPdP1cdrFJru1VoN6",
      "modifierEmail": "jo@example.com",
      "name": "new_checkout",
      "tags": [],
      "time": "19:37:29 GMT+0000 (Coordinated Universal Time)",
      "updatedBy": "Jo Bloggs",
      "updatedByUserID": "6YnxAUCsHDkhTxkQKiF0iv"
    }
  ],
  "has_more": false,
  "page": 1,
  "total": 1
}

List dynamic configs

List the project's dynamic configs, a page at a time.

Inputs

Pagepagenumber
Which page of results to return, starting at 1.At least 1. Default: 1.
Results per pagelimitnumber
How many to return per page, 1-100. Defaults to 50.From 1 to 100. Default: 50.

Outputs

dynamic_configslist
The dynamic configs
has_moretrue/false
Whether a later page has more
pagenumber
The page returned, from 1
totalnumber
How many there are in all
Example output
{
  "dynamic_configs": [
    {
      "checksPerHour": 0,
      "createdTime": 1792438637085,
      "created_at": "2026-10-19T19:37:17.085000Z",
      "creatorName": "Jo Bloggs",
      "defaultValue": {
        "button_color": "blue",
        "max_items": 10
      },
      "description": "Settings for the pricing page",
      "id": "pricing_page",
      "idType": "userID",
      "isEnabled": true,
      "lastModifiedTime": 1792438637233,
      "lastModifierName": "Jo Bloggs",
      "last_modified_at": "2026-10-19T19:37:17.233000Z",
      "name": "Pricing Page",
      "permalink": "https://console.statsig.com/4YLTPh/dynamic_configs/pricing_page",
      "rules": [],
      "status": "Active",
      "tags": [],
      "version": 1
    }
  ],
  "has_more": false,
  "page": 1,
  "total": 1
}

List experiments

List the project's experiments with their status, groups and dates, optionally only those in some statuses.

Inputs

Statusstatuslist
Only experiments in these statuses. Leave empty for all.One or more of: setup (Setting up), active (Running), decision_made (Decision made), experiment_stopped (Stopped), assignment_stopped (Assignment stopped), abandoned, archived.
Pagepagenumber
Which page of results to return, starting at 1.At least 1. Default: 1.
Results per pagelimitnumber
How many to return per page, 1-100. Defaults to 50.From 1 to 100. Default: 50.

Outputs

experimentslist
The experiments
has_moretrue/false
Whether a later page has more
pagenumber
The page returned, from 1
totalnumber
How many there are in all
Example output
{
  "experiments": [
    {
      "allocation": 100,
      "controlGroupID": "4eTbEGOm2sY3xq9cbwJ2nu",
      "createdTime": 1792438637085,
      "created_at": "2026-10-19T19:37:17.085000Z",
      "creatorName": "Jo Bloggs",
      "decisionReason": null,
      "description": "Does a bigger button sell more?",
      "duration": 14,
      "endTime": null,
      "groups": [
        {
          "name": "Control",
          "size": 50
        },
        {
          "name": "Test",
          "size": 50
        }
      ],
      "hypothesis": "A bigger button raises checkouts",
      "id": "checkout_button",
      "idType": "userID",
      "isEnabled": true,
      "lastModifiedTime": 1792438637233,
      "lastModifierName": "Jo Bloggs",
      "last_modified_at": "2026-10-19T19:37:17.233000Z",
      "launchedGroupID": null,
      "layerID": null,
      "name": "Checkout Button",
      "permalink": "https://console.statsig.com/4YLTPh/experiments/checkout_button",
      "startTime": 1792438637085,
      "status": "active",
      "tags": []
    }
  ],
  "has_more": false,
  "page": 1,
  "total": 1
}

List feature gates

List the project's feature gates, a page at a time.

Inputs

Pagepagenumber
Which page of results to return, starting at 1.At least 1. Default: 1.
Results per pagelimitnumber
How many to return per page, 1-100. Defaults to 50.From 1 to 100. Default: 50.

Outputs

gateslist
The feature gates
has_moretrue/false
Whether a later page has more
pagenumber
The page returned, from 1
totalnumber
How many there are in all
Example output
{
  "gates": [
    {
      "checksPerHour": 0,
      "createdTime": 1792438637085,
      "created_at": "2026-10-19T19:37:17.085000Z",
      "creatorName": "Jo Bloggs",
      "description": "The redesigned checkout page",
      "id": "new_checkout",
      "idType": "userID",
      "isEnabled": true,
      "lastModifiedTime": 1792438637233,
      "lastModifierName": "Jo Bloggs",
      "last_modified_at": "2026-10-19T19:37:17.233000Z",
      "name": "New Checkout",
      "permalink": "https://console.statsig.com/4YLTPh/gates/new_checkout",
      "rules": [],
      "status": "In Progress",
      "tags": [
        "\u2605 Core"
      ],
      "type": "TEMPORARY",
      "version": 1
    }
  ],
  "has_more": false,
  "page": 1,
  "total": 1
}

List segment IDs

List the ids in an ID list segment, a page at a time.

Inputs

SegmentsegmenttextRequired
The ID list segment.
Pagepagenumber
Which page of results to return, starting at 1.At least 1. Default: 1.
Results per pagelimitnumber
How many to return per page, 1-100. Defaults to 50.From 1 to 100. Default: 50.

Outputs

countnumber
How many ids the segment holds in all
has_moretrue/false
Whether a later page has more
idslist
The ids
pagenumber
The page returned, from 1
segment_idtext
The segment
Example output
{
  "count": 2,
  "has_more": false,
  "ids": [
    "user_123",
    "user_456"
  ],
  "page": 1,
  "segment_id": "beta_testers"
}

List segments

List the project's segments with their type and, for ID lists, how many ids they hold.

Inputs

Pagepagenumber
Which page of results to return, starting at 1.At least 1. Default: 1.
Results per pagelimitnumber
How many to return per page, 1-100. Defaults to 50.From 1 to 100. Default: 50.

Outputs

has_moretrue/false
Whether a later page has more
pagenumber
The page returned, from 1
segmentslist
The segments
totalnumber
How many there are in all
Example output
{
  "has_more": false,
  "page": 1,
  "segments": [
    {
      "count": 2,
      "createdTime": 1792438637085,
      "created_at": "2026-10-19T19:37:17.085000Z",
      "creatorName": "Jo Bloggs",
      "description": "People trying new features early",
      "id": "beta_testers",
      "idType": "userID",
      "isEnabled": true,
      "lastModifiedTime": 1792438637233,
      "lastModifierName": "Jo Bloggs",
      "last_modified_at": "2026-10-19T19:37:17.233000Z",
      "name": "Beta Testers",
      "tags": [],
      "type": "id_list"
    }
  ],
  "total": 1
}

Remove IDs from segment

Take user ids (or other ids) out of an ID list segment.

Inputs

SegmentsegmenttextRequired
The ID list segment.
IDsidslistRequired
The IDs, of the segment's ID type (user ids for a User ID segment). Type several separated by commas, or pass a list from an earlier step.

Outputs

countnumber
How many ids were sent
idslist
The ids
segment_idtext
The segment
Example output
{
  "count": 1,
  "ids": [
    "user_456"
  ],
  "segment_id": "beta_testers"
}

Remove users from feature gate

Stop letting users through a feature gate, or keeping them out, so its rules decide for them again.

Inputs

Feature gategatetextRequired
The feature gate.
User idsuser_idslistRequired
User ids to stop letting through or keeping out, so the gate's rules decide for them again. Type several separated by commas, or pass a list from an earlier step.

Outputs

failing_user_idslist
Every user the gate now always keeps out
gate_idtext
The gate
passing_user_idslist
Every user the gate now always lets through
Example output
{
  "failing_user_ids": [],
  "gate_id": "new_checkout",
  "passing_user_ids": []
}

Turn off feature gate

Turn a feature gate off, so it lets no one through. Use it as a kill switch.

Inputs

Feature gategatetextRequired
The feature gate.

Outputs

gateobject
The feature gate
Example output
{
  "gate": {
    "checksPerHour": 0,
    "createdTime": 1792438637085,
    "created_at": "2026-10-19T19:37:17.085000Z",
    "creatorName": "Jo Bloggs",
    "description": "The redesigned checkout page",
    "id": "new_checkout",
    "idType": "userID",
    "isEnabled": false,
    "lastModifiedTime": 1792438637233,
    "lastModifierName": "Jo Bloggs",
    "last_modified_at": "2026-10-19T19:37:17.233000Z",
    "name": "New Checkout",
    "permalink": "https://console.statsig.com/4YLTPh/gates/new_checkout",
    "rules": [],
    "status": "In Progress",
    "tags": [
      "\u2605 Core"
    ],
    "type": "TEMPORARY",
    "version": 1
  }
}

Turn on feature gate

Turn a feature gate on, so its rules decide who passes.

Inputs

Feature gategatetextRequired
The feature gate.

Outputs

gateobject
The feature gate
Example output
{
  "gate": {
    "checksPerHour": 0,
    "createdTime": 1792438637085,
    "created_at": "2026-10-19T19:37:17.085000Z",
    "creatorName": "Jo Bloggs",
    "description": "The redesigned checkout page",
    "id": "new_checkout",
    "idType": "userID",
    "isEnabled": true,
    "lastModifiedTime": 1792438637233,
    "lastModifierName": "Jo Bloggs",
    "last_modified_at": "2026-10-19T19:37:17.233000Z",
    "name": "New Checkout",
    "permalink": "https://console.statsig.com/4YLTPh/gates/new_checkout",
    "rules": [],
    "status": "In Progress",
    "tags": [
      "\u2605 Core"
    ],
    "type": "TEMPORARY",
    "version": 1
  }
}

On this page