The userId or email address of the owner. If an email address is provided, it will be used to look up the userId of the matching organization member. If an ID is provided, it will be validated as existing in the organization.
Proportion of traffic placed in the holdout group (e.g. 0.05 for 5%). An equally sized comparison group is sampled from the remaining traffic for measurement, so 2× this value enters the holdout experiment in total. Must be greater than 0 and at most 0.5.
Deprecated: use assignmentQuery. Rejected when selecting a different assignment query that declares several identifier types; set assignmentQuery.identifierType instead.
Automatic stage transitions for the Holdout. Dates must be consecutive: startAt before startAnalysisPeriodAt before stopAt. Send null to delete the schedule.
{"docsConfig":{"theme":"luma","$schema":"https://mintlify.com/docs.json","name":"GrowthBook Documentation","colors":{"primary":"#039DD0","light":"#baa7ff","dark":"#039DD0"},"logo":{"light":"https://mintcdn.com/growthbook-ea15456d/66H-dO8hZfIFVUdN/static/img/growthbook-docslogo-light.png?fit=max\u0026auto=format\u0026n=66H-dO8hZfIFVUdN\u0026q=85\u0026s=36f32d1bbabbdafdb0bd9bc2b53c43e7","dark":"https://mintcdn.com/growthbook-ea15456d/66H-dO8hZfIFVUdN/static/img/growthbook-docslogo-dark.png?fit=max\u0026auto=format\u0026n=66H-dO8hZfIFVUdN\u0026q=85\u0026s=4d2b042f7579c6c815de8ce10cbf6408","href":"/"},"favicon":"https://mintcdn.com/growthbook-ea15456d/giSZyh24PfnTkKz4/static/favicon.png?fit=max\u0026auto=format\u0026n=giSZyh24PfnTkKz4\u0026q=85\u0026s=6832a69676f48e5223736cd3b6ce33da","background":{"color":{"dark":"#1B1B1D"}},"navbar":{"links":[{"icon":"bullhorn","href":"https://growthbook.io/product-updates","label":"Product Updates"},{"href":"https://github.com/growthbook/growthbook","label":"Github","type":"github"}],"primary":{"type":"button","label":"Open App","href":"https://app.growthbook.io/"}},"footer":{"socials":{"x":"https://twitter.com/growth_book","linkedin":"https://www.linkedin.com/company/growthbook","github":"https://github.com/growthbook/growthbook","slack":"https://slack.growthbook.io/?ref=footer-icon"},"links":[{"header":"Community","items":[{"label":"Join us on Slack","href":"https://slack.growthbook.io/"},{"label":"Open an Issue","href":"https://github.com/growthbook/growthbook/issues/new/choose"}]},{"header":"Company","items":[{"label":"About","href":"https://www.growthbook.io/about"},{"label":"Blog","href":"https://www.growthbook.io/blog"}]}]},"seo":{"indexing":"navigable"},"styling":{"eyebrows":"breadcrumbs","latex":true},"integrations":{"gtm":{"tagId":"GTM-MF7GKV4V"}},"banner":{"content":"**New:** See what we've shipped lately on our [Product Updates](https://growthbook.io/product-updates) page.","dismissible":true},"contextual":{"options":["copy","view",{"title":"Edit this page","description":"Propose a change on GitHub","icon":"pencil","href":{"base":"https://github.com/growthbook/growthbook/edit/main/docs$path.mdx"}},"chatgpt","claude","perplexity","grok","aistudio","devin","windsurf","mcp","cursor","vscode","devin-mcp"],"display":"header"},"navigation":{"global":{"anchors":[]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"growthbook-ea15456d","hasAudioNarration":false,"actualSubdomain":"growthbook-ea15456d","customDomains":["docs.growthbook.io"],"gitSource":{"type":"github","owner":"growthbook","repo":"growthbook","deployBranch":"main","contentDirectory":"docs","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ae1661e41a8cb9d72ae72b7","collectionId":"60a4e850-1a2b-4bd5-805f-5b44dd407424","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae1661e41a8cb9d72ae72b7"},"feedback":{"thumbs":true,"contextualFeedback":{"allowEmail":true}},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6ae1661e41a8cb9d72ae72b7","clientVersion":"0.0.4006","searchFilterCounts":[{"language":"default","tag":"API","count":551},{"language":"default","tag":"Endpoints","count":436},{"language":"default","tag":"Docs","count":182},{"language":"default","tag":"Models","count":114},{"language":"default","tag":"Data \u0026 Metrics","count":41},{"language":"default","tag":"Experimentation","count":38},{"language":"default","tag":"Feature Revisions","count":33},{"language":"default","tag":"SDKs","count":29},{"language":"default","tag":"Contextual Bandits","count":25},{"language":"default","tag":"Feature Flags","count":25}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"styles.css","content":":root{--violet-1:#fdfcfe;--violet-2:#faf8ff;--violet-3:#f4f0fe;--violet-4:#ebe4ff;--violet-5:#e1d9ff;--violet-6:#d4cafe;--violet-7:#c2b5f5;--violet-8:#aa99ec;--violet-9:#6e56cf;--violet-10:#654dc4;--violet-11:#6550b9;--violet-12:#2f265f;--violet-a1:#5500aa03;--violet-a2:#4900ff07;--violet-a3:#4400ee0f;--violet-a4:#4300ff1b;--violet-a5:#3600ff26;--violet-a6:#3100fb35;--violet-a7:#2d01dd4a;--violet-a8:#2b00d066;--violet-a9:#2400b7a9;--violet-a10:#2300abb2;--violet-a11:#1f0099af;--violet-a12:#0b0043d9;--slate-a1:#00005503;--slate-a2:#00005506;--slate-a3:#0000330f;--slate-a4:#00002d17;--slate-a5:#0009321f;--slate-a6:#00002f26;--slate-a7:#00062e32;--slate-a8:#00083046;--slate-a9:#00051d74;--slate-a10:#00071b7f;--slate-a11:#0007149f;--slate-a12:#000509e3;--indigo-1:#fdfdfe;--indigo-2:#f7f9ff;--indigo-3:#edf2fe;--indigo-4:#e1e9ff;--indigo-5:#d2deff;--indigo-6:#c1d0ff;--indigo-7:#abbdf9;--indigo-8:#8da4ef;--indigo-9:#3e63dd;--indigo-10:#3358d4;--indigo-11:#3a5bc7;--indigo-12:hsl(226, 50%, 24%);--indigo-a1:#00008002;--indigo-a2:#0040ff08;--indigo-a3:#0047f112;--indigo-a4:#0044ff1e;--indigo-a5:#0044ff2d;--indigo-a6:#003eff3e;--indigo-a7:#0037ed54;--indigo-a8:#0034dc72;--indigo-a9:hsla(226, 100%, 41%, 0.757);--indigo-a10:hsla(226, 100%, 39%, 0.8);--indigo-a11:hsla(226, 100%, 36%, 0.773);--indigo-a12:hsla(226, 100%, 14%, 0.878);--amber-a1:#c0800004;--amber-a2:#f4d10016;--amber-a3:#ffde003d;--amber-a4:#ffd40063;--amber-a5:#f8cf0088;--amber-a6:#eab5008c;--amber-a7:#dc9b009d;--amber-a8:#da8a00c9;--amber-a9:#ffb300c2;--amber-a10:#ffb300e7;--amber-a11:#ab6400;--amber-a12:#341500dd;--green-a1:#00c04004;--green-a2:#00a32f0b;--green-a3:#00a43319;--green-a4:#00a83829;--green-a5:#019c393b;--green-a6:#00963c52;--green-a7:#00914071;--green-a8:#00924ba4;--green-a9:#008f4acf;--green-a10:#008647d4;--green-a11:#00713fde;--green-a12:#002616e6;--red-a1:#ff000003;--red-a2:#ff000008;--red-a3:#f3000d14;--red-a4:#ff000824;--red-a5:#ff000632;--red-a6:#f8000442;--red-a7:#df000356;--red-a8:#d2000571;--red-a9:#db0007b7;--red-a10:#d10005c1;--red-a11:#c40006d3;--red-a12:#55000de8;--color-text-high:var(--indigo-12);--color-text-mid:hsl(226 50% 24% / 85%);--color-contrast:#fff;--ifm-color-primary:var(--violet-11);--ifm-color-primary-dark:var(--violet-10);--ifm-color-primary-darker:var(--violet-11);--ifm-color-primary-darkest:var(--violet-12);--ifm-color-primary-light:var(--violet-7);--ifm-color-primary-lighter:var(--violet-6);--ifm-color-primary-lightest:var(--violet-5);--ifm-navbar-link-color:var(--color-text-mid);--ifm-code-font-size:95%;--docusaurus-highlighted-code-line-bg:rgba(0, 0, 0, 0.1);--ifm-alert-border-color:#8a26e7;--color-border:var(--slate-a6);--ifm-background-color:#fff;--color-inverse:#000}.dark{--violet-1:#14121f;--violet-2:#1b1525;--violet-3:#291f43;--violet-4:#33255b;--violet-5:#3c2e69;--violet-6:#473876;--violet-7:#56468b;--violet-8:#6958ad;--violet-9:#6e56cf;--violet-10:#7d66d9;--violet-11:#baa7ff;--violet-12:#e2ddfe;--violet-a1:#4422ff0f;--violet-a2:#853ff916;--violet-a3:#8354fe36;--violet-a4:#7d51fd50;--violet-a5:#845ffd5f;--violet-a6:#8f6cfd6d;--violet-a7:#9879ff83;--violet-a8:#977dfea8;--violet-a9:#8668ffcc;--violet-a10:#9176fed7;--violet-a11:#baa7ff;--violet-a12:#e3defffe;--slate-a1:#00000000;--slate-a2:#d8f4f609;--slate-a3:#ddeaf814;--slate-a4:#d3edf81d;--slate-a5:#d9edfe25;--slate-a6:#d6ebfd30;--slate-a7:#d9edff40;--slate-a8:#d9edff5d;--slate-a9:#dfebfd6d;--slate-a10:#e5edfd7b;--slate-a11:#f1f7feb5;--slate-a12:#fcfdffef;--indigo-1:#11131f;--indigo-2:#141726;--indigo-3:#182449;--indigo-4:#1d2e62;--indigo-5:#253974;--indigo-6:#304384;--indigo-7:#3a4f97;--indigo-8:#435db1;--indigo-9:#3e63dd;--indigo-10:#5472e4;--indigo-11:#9eb1ff;--indigo-12:#d6e1ff;--indigo-a1:#1133ff0f;--indigo-a2:#3354fa17;--indigo-a3:#2f62ff3c;--indigo-a4:#3566ff57;--indigo-a5:#4171fd6b;--indigo-a6:#5178fd7c;--indigo-a7:#5a7fff90;--indigo-a8:#5b81feac;--indigo-a9:#4671ffdb;--indigo-a10:#5c7efee3;--indigo-a11:#9eb1ff;--indigo-a12:#d6e1ff;--amber-a1:#e63c0006;--amber-a2:#fd9b000d;--amber-a3:#fa820022;--amber-a4:#fc820032;--amber-a5:#fd8b0041;--amber-a6:#fd9b0051;--amber-a7:#ffab2567;--amber-a8:#ffae3587;--amber-a9:#ffc53d;--amber-a10:#ffd60a;--amber-a11:#ffca16;--amber-a12:#ffe7b3;--green-a1:#00de4505;--green-a2:#29f99d0b;--green-a3:#22ff991e;--green-a4:#11ff992d;--green-a5:#2bffa23c;--green-a6:#44ffaa4b;--green-a7:#50fdac5e;--green-a8:#54ffad73;--green-a9:#44ffa49e;--green-a10:#43fea4ab;--green-a11:#46fea5d4;--green-a12:#bbffd7f0;--red-a1:#f4121209;--red-a2:#f22f3e11;--red-a3:#ff173f2d;--red-a4:#fe0a3b44;--red-a5:#ff204756;--red-a6:#ff3e5668;--red-a7:#ff536184;--red-a8:#ff5d61b0;--red-a9:#fe4e54e4;--red-a10:#ff6465eb;--red-a11:#ff9592;--red-a12:#ffd1d9;--color-text-high:#fff;--color-text-mid:hsl(0 0% 100% / 0.85);--color-contrast:#fff;--color-inverse:#fff}a code,a:hover code,code a,pre a{color:inherit!important}#content a{color:rgb(var(--primary));border-bottom:0!important}#content a:hover{text-decoration:underline!important}.dark #content a{color:rgb(var(--primary-light))}.dark #navbar>div.z-0.absolute.inset-0.bg-background-light.dark\\:bg-background-dark{background-color:#242526!important}@media (min-width:1024px){#navbar .nav-logo{height:2rem!important;max-width:none!important}#navbar div:has(>a>.nav-logo){flex:0 1 auto}#sidebar-content{width:18rem!important}#body-content{padding-left:18rem!important}}@media (min-width:1651px){#content-area{margin-left:max(0px,calc(50vw - 348px - 18rem))!important}}#body-content:has(.not-found-container){padding-left:0!important}#content-area:has(.not-found-container){margin-left:0!important}ul.sidebar-group>li[data-title=\"GrowthBook Guide\"],ul.sidebar-group>li[data-title=\"Knowledge Base\"],ul.sidebar-group>li[data-title=Tutorials]{border-top:1px solid rgb(var(--gray-200));margin-top:.5rem;padding-top:.5rem}.dark ul.sidebar-group>li[data-title=\"GrowthBook Guide\"],.dark ul.sidebar-group>li[data-title=\"Knowledge Base\"],.dark ul.sidebar-group>li[data-title=Tutorials]{border-top-color:rgb(var(--gray-800))}#sidebar-content li[data-title]>button>div:first-child{flex:1 1 auto;min-width:0}#sidebar-content li[data-title]>button>div:first-child>span:first-child{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#sidebar-content li[data-title]>button>div:first-child .nav-tag-pill{flex:0 0 auto;margin-left:auto}#sidebar-content [data-nav-tag=BETA]{background:#fbbf24!important;color:#78350f!important}#sidebar-content [data-nav-tag=NEW]{background:var(--green-a9)!important;color:#fff!important}#sidebar-content [data-nav-tag=LEGACY]{background:#e5e7eb!important;color:#4b5563!important}#sidebar-content [data-nav-tag=v2]{background:#c2e6ff!important;color:#0d74ce!important}.dark #sidebar-content [data-nav-tag=BETA]{background:#78350f!important;color:#fde68a!important}.dark #sidebar-content [data-nav-tag=NEW]{background:#14532d!important;color:#86efac!important}.dark #sidebar-content [data-nav-tag=LEGACY]{background:#374151!important;color:#d1d5db!important}.dark #sidebar-content [data-nav-tag=v2]{background:#0c4a6e!important;color:#7dd3fc!important}#sidebar-content li[data-title]>button{display:flex;width:100%;max-width:100%;box-sizing:border-box;justify-content:space-between;align-items:center}#sidebar-content li[data-title]>button>div:last-child{flex:0 0 auto;margin-left:auto}#sidebar-content a:has(.method-nav-pill)>.flex-1{min-width:0}#sidebar-content a:has(.method-nav-pill) .flex-wrap{flex-wrap:nowrap;width:100%}#sidebar-content a:has(.method-nav-pill) .flex-wrap>span.min-w-0{flex:1 1 auto;max-width:100%}#sidebar-content a[href^=\"/api/feature-revisions/operation/\"],#sidebar-content a[href^=\"/api/features/operation/\"],#sidebar-content a[href^=\"/api/metrics/operation/\"]{color:rgb(156 163 175)!important}.dark #sidebar-content a[href^=\"/api/feature-revisions/operation/\"],.dark #sidebar-content a[href^=\"/api/features/operation/\"],.dark #sidebar-content a[href^=\"/api/metrics/operation/\"]{color:rgb(107 114 128)!important}#sidebar-content a[href^=\"/api/feature-revisions/operation/\"]:focus-visible,#sidebar-content a[href^=\"/api/feature-revisions/operation/\"]:hover,#sidebar-content a[href^=\"/api/features/operation/\"]:focus-visible,#sidebar-content a[href^=\"/api/features/operation/\"]:hover,#sidebar-content a[href^=\"/api/metrics/operation/\"]:focus-visible,#sidebar-content a[href^=\"/api/metrics/operation/\"]:hover{color:#111!important}.dark #sidebar-content a[href^=\"/api/feature-revisions/operation/\"]:focus-visible,.dark #sidebar-content a[href^=\"/api/feature-revisions/operation/\"]:hover,.dark #sidebar-content a[href^=\"/api/features/operation/\"]:focus-visible,.dark #sidebar-content a[href^=\"/api/features/operation/\"]:hover,.dark #sidebar-content a[href^=\"/api/metrics/operation/\"]:focus-visible,.dark #sidebar-content a[href^=\"/api/metrics/operation/\"]:hover{color:#fff!important}#sidebar-content a[href^=\"/api/feature-revisions/operation/\"] .method-nav-pill,#sidebar-content a[href^=\"/api/features/operation/\"] .method-nav-pill,#sidebar-content a[href^=\"/api/metrics/operation/\"] .method-nav-pill{filter:grayscale(1);opacity:.65}#sidebar-content a[href^=\"/api/feature-revisions/operation/\"]:focus-visible .method-nav-pill,#sidebar-content a[href^=\"/api/feature-revisions/operation/\"]:hover .method-nav-pill,#sidebar-content a[href^=\"/api/features/operation/\"]:focus-visible .method-nav-pill,#sidebar-content a[href^=\"/api/features/operation/\"]:hover .method-nav-pill,#sidebar-content a[href^=\"/api/metrics/operation/\"]:focus-visible .method-nav-pill,#sidebar-content a[href^=\"/api/metrics/operation/\"]:hover .method-nav-pill{filter:none;opacity:1}#sidebar-content a[href^=\"/api/feature-revisions/operation/\"] .flex-wrap>span.min-w-0,#sidebar-content a[href^=\"/api/features/operation/\"] .flex-wrap>span.min-w-0,#sidebar-content a[href^=\"/api/metrics/operation/\"] .flex-wrap>span.min-w-0{text-decoration:line-through}.chat-assistant-send-button{display:none!important}table[class*=\"[\u0026_td]:min-w-[150px]\"] td:first-child:has(code){max-width:25%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;word-wrap:break-word}#navbar a[href=\"https://growthbook.io/product-updates\"]:not(#banner a){--pu-accent:var(--primary);--pu-text:3 120 160;--pu-ring:var(--background-light);--pu-tint:0.08;position:relative;color:rgb(var(--pu-text))!important;border-color:rgb(var(--pu-accent)/.4)!important;background-color:rgb(var(--pu-accent)/var(--pu-tint))!important}.dark #navbar a[href=\"https://growthbook.io/product-updates\"]:not(#banner a){--pu-accent:var(--primary-light);--pu-text:var(--primary-light);--pu-ring:var(--background-dark);--pu-tint:0.12}#navbar a[href=\"https://growthbook.io/product-updates\"]:not(#banner a) svg{background-color:rgb(var(--pu-text))!important}#navbar a[href=\"https://growthbook.io/product-updates\"]:not(#banner a)::after{content:\"\";position:absolute;top:8px;left:29px;width:7px;height:7px;border-radius:9999px;background:rgb(var(--pu-accent));box-shadow:0 0 0 2px rgb(var(--pu-ring))}"}],"page":{"pagePath":"api/Holdouts/operation/updateHoldout","slug":"/api/Holdouts/operation/updateHoldout","pageMetadata":{"title":"Update a single holdout","openapi":"openapi.yaml PUT /v1/holdouts/{id}","description":"Updates a Holdout. Use the start, start-analysis, and stop endpoints to move it through its lifecycle.","href":"/api/Holdouts/operation/updateHoldout"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Updates a Holdout. Use the start, start-analysis, and stop endpoints to move it through its lifecycle.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Update a single holdout","openapi":"openapi.yaml PUT /v1/holdouts/{id}","description":"Updates a Holdout. Use the start, start-analysis, and stop endpoints to move it through its lifecycle.","href":"/api/Holdouts/operation/updateHoldout"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/growthbook-ea15456d/1f4d041fccf45c4d/docs-ui.js","/_mintlify/custom/growthbook-ea15456d/2a3423f351be4eea/kapa-widget.js","/_mintlify/custom/growthbook-ea15456d/8fa531778292e506/snippets/data/SDKInfo.js","/_mintlify/custom/growthbook-ea15456d/2d49809c2d9aaf02/snippets/data/commercialFeatures.js","/_mintlify/custom/growthbook-ea15456d/55695472085fd488/reo.js"],"openApiReferenceData":{"operation":{"operationId":"updateHoldout","summary":"Update a single holdout","description":"Updates a Holdout. Use the start, start-analysis, and stop endpoints to move it through its lifecycle.","tags":["Holdouts"],"parameters":["8f81a749-f079-48a2-a9f7-f511661f658f"],"requestBody":"704c878b-09ce-4a2c-adc0-92b218581f56","responses":{"200":"c5aaee6e-61e2-4a99-ae2f-672b098d83cd","202":"42d0ffc9-73d1-4fe3-b5a6-74dc953482e0"},"x-codeSamples":[{"lang":"cURL","source":"curl -X PUT 'https://api.growthbook.io/api/v1/holdouts/{id}' \\\n -H 'Authorization: Bearer YOUR_API_KEY'"}],"method":"put","type":"path","servers":["87cee318-58b0-4555-9afc-d446bfd46b77","81c7f86c-80cc-4420-8d21-5418239245a5"],"security":["23cd1617-f708-4317-915a-f050d3a9f2cc","123ef339-df46-49d4-9043-d78ce9bd3ff9"],"path":"/v1/holdouts/{id}","baseUrlOptions":["https://api.growthbook.io/api","https://{domain}/api"],"title":"Update a single holdout","codeSamples":[{"lang":"cURL","source":"curl -X PUT 'https://api.growthbook.io/api/v1/holdouts/{id}' \\\n -H 'Authorization: Bearer YOUR_API_KEY'"}],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated"},"dependencies":{"parameters":{"8f81a749-f079-48a2-a9f7-f511661f658f":{"name":"id","in":"path","required":true,"description":"","schema":{"type":"string","isRequired":true,"uniqueKey":"","typeLabel":"string"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"description":"Short display name. Put details in `description`.","type":"string","minLength":1,"uniqueKey":"name","typeLabel":"string"},"description":{"description":"Markdown. Put context here, not in the name.","type":"string","maxLength":10000,"uniqueKey":"description","typeLabel":"string"},"projects":{"description":"Project IDs this Holdout applies to. Send an empty array for All Projects.","type":"array","items":{"type":"string","uniqueKey":"projects.items.[INDEX]","typeLabel":"string"},"uniqueKey":"projects","typeLabel":"string[]"},"owner":{"description":"The userId or email address of the owner. If an email address is provided, it will be used to look up the userId of the matching organization member. If an ID is provided, it will be validated as existing in the organization.","type":"string","uniqueKey":"owner","typeLabel":"string"},"tags":{"description":"Tags for filtering and grouping. Use these instead of encoding groups in names.","type":"array","items":{"type":"string","uniqueKey":"tags.items.[INDEX]","typeLabel":"string"},"uniqueKey":"tags","typeLabel":"string[]"},"archived":{"type":"boolean","uniqueKey":"archived","typeLabel":"boolean"},"skipAsDefaultHoldout":{"description":"When true, this Holdout is not selected automatically when creating Feature Flags or Experiments in Projects assigned to the Holdout.","type":"boolean","uniqueKey":"skipAsDefaultHoldout","typeLabel":"boolean"},"holdoutSize":{"description":"Proportion of traffic placed in the holdout group (e.g. 0.05 for 5%). An equally sized comparison group is sampled from the remaining traffic for measurement, so 2× this value enters the holdout experiment in total. Must be greater than 0 and at most 0.5.","type":"number","exclusiveMinimum":0,"maximum":0.5,"uniqueKey":"holdoutSize","typeLabel":"number"},"hashAttribute":{"type":"string","uniqueKey":"hashAttribute","typeLabel":"string"},"targetingCondition":{"type":"string","uniqueKey":"targetingCondition","typeLabel":"string"},"savedGroupTargeting":{"type":"array","items":{"type":"object","properties":{"match":{"type":"string","enum":["all","none","any"],"isRequired":true,"uniqueKey":"savedGroupTargeting.items.[INDEX].match","typeLabel":"enum\u003cstring>"},"ids":{"type":"array","items":{"type":"string","uniqueKey":"savedGroupTargeting.items.[INDEX].ids.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"savedGroupTargeting.items.[INDEX].ids","typeLabel":"string[]"}},"required":["match","ids"],"additionalProperties":false,"uniqueKey":"savedGroupTargeting.items.[INDEX]","typeLabel":"object"},"uniqueKey":"savedGroupTargeting","typeLabel":"object[]"},"datasourceId":{"type":"string","uniqueKey":"datasourceId","typeLabel":"string"},"assignmentQuery":{"description":"The assignment query, grouping its ID with the identifier type analyzed on. Mutually exclusive with the deprecated `assignmentQueryId`.","type":"object","properties":{"id":{"description":"The ID of one of the data source's assignment queries.","type":"string","isRequired":true,"uniqueKey":"assignmentQuery.id","typeLabel":"string"},"identifierType":{"oneOf":[{"type":"string","description":"The identifier type to analyze on, which the query must declare. Required when selecting a different assignment query that declares several. Otherwise defaults to the current identifier type, or the query's only one. Null is treated as omitted, so a response's value can be sent back.","uniqueKey":"assignmentQuery.identifierType.oneOf.0","typeLabel":"string"},{"type":"null","description":"The identifier type to analyze on, which the query must declare. Required when selecting a different assignment query that declares several. Otherwise defaults to the current identifier type, or the query's only one. Null is treated as omitted, so a response's value can be sent back.","uniqueKey":"assignmentQuery.identifierType.oneOf.1","typeLabel":"null"}],"uniqueKey":"assignmentQuery.identifierType","typeLabel":"string | null"}},"required":["id"],"additionalProperties":false,"uniqueKey":"assignmentQuery","typeLabel":"object"},"assignmentQueryId":{"deprecated":true,"description":"Deprecated: use `assignmentQuery`. Rejected when selecting a different assignment query that declares several identifier types; set `assignmentQuery.identifierType` instead.","type":"string","uniqueKey":"assignmentQueryId","typeLabel":"string"},"goalMetrics":{"type":"array","items":{"type":"string","uniqueKey":"goalMetrics.items.[INDEX]","typeLabel":"string"},"uniqueKey":"goalMetrics","typeLabel":"string[]"},"secondaryMetrics":{"type":"array","items":{"type":"string","uniqueKey":"secondaryMetrics.items.[INDEX]","typeLabel":"string"},"uniqueKey":"secondaryMetrics","typeLabel":"string[]"},"statsEngine":{"description":"Statistics engine used to analyze this Holdout.","type":"string","enum":["bayesian","frequentist"],"uniqueKey":"statsEngine","typeLabel":"enum\u003cstring>"},"environments":{"description":"Replaces the entire per-environment state. Environments not listed are disabled.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","properties":{"enabled":{"description":"Whether the Holdout is active in this environment.","type":"boolean","isRequired":true,"uniqueKey":"environments.additionalProperties.enabled","typeLabel":"boolean"}},"required":["enabled"],"additionalProperties":false,"uniqueKey":"environments.additionalProperties","typeLabel":"object"},"uniqueKey":"environments","typeLabel":"object"},"statusUpdateSchedule":{"oneOf":[{"type":"object","description":"Automatic stage transitions for the Holdout. Dates must be consecutive: `startAt` before `startAnalysisPeriodAt` before `stopAt`. Send `null` to delete the schedule.","properties":{"startAt":{"description":"ISO datetime to move the Holdout from `draft` to `running`. Must be in the future while the Holdout is still a draft.","type":"string","format":"date-time","uniqueKey":"statusUpdateSchedule.oneOf.0.startAt","typeLabel":"string\u003cdate-time>"},"startAnalysisPeriodAt":{"description":"ISO datetime to move the Holdout from `running` to `analysis-period`. Requires `startAt` while the Holdout is still a draft.","type":"string","format":"date-time","uniqueKey":"statusUpdateSchedule.oneOf.0.startAnalysisPeriodAt","typeLabel":"string\u003cdate-time>"},"stopAt":{"description":"ISO datetime to stop the Holdout. Requires `startAnalysisPeriodAt` unless the analysis period has already begun.","type":"string","format":"date-time","uniqueKey":"statusUpdateSchedule.oneOf.0.stopAt","typeLabel":"string\u003cdate-time>"}},"additionalProperties":false,"uniqueKey":"statusUpdateSchedule.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"statusUpdateSchedule.oneOf.1","typeLabel":"null"}],"uniqueKey":"statusUpdateSchedule","typeLabel":"object | null"}},"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"name":"\u003cstring>","description":"\u003cstring>","projects":["\u003cstring>"],"owner":"\u003cstring>","tags":["\u003cstring>"],"archived":true,"skipAsDefaultHoldout":true,"holdoutSize":-0.5,"hashAttribute":"\u003cstring>","targetingCondition":"\u003cstring>","savedGroupTargeting":[{"ids":["\u003cstring>"]}],"datasourceId":"\u003cstring>","assignmentQueryId":"\u003cstring>","goalMetrics":["\u003cstring>"],"secondaryMetrics":["\u003cstring>"],"environments":{},"statusUpdateSchedule":{"startAt":"2023-11-07T05:31:56Z","startAnalysisPeriodAt":"2023-11-07T05:31:56Z","stopAt":"2023-11-07T05:31:56Z"}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"c5aaee6e-61e2-4a99-ae2f-672b098d83cd":{"description":"Resource updated","content":{"application/json":{"schema":{"type":"object","properties":{"holdout":{"type":"object","properties":{"id":{"type":"string","isRequired":true,"uniqueKey":"holdout.id","typeLabel":"string"},"dateCreated":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"holdout.dateCreated","typeLabel":"string\u003cdate-time>"},"dateUpdated":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"holdout.dateUpdated","typeLabel":"string\u003cdate-time>"},"name":{"type":"string","isRequired":true,"uniqueKey":"holdout.name","typeLabel":"string"},"description":{"type":"string","maxLength":10000,"isRequired":true,"uniqueKey":"holdout.description","typeLabel":"string"},"projects":{"description":"Project IDs this Holdout applies to. An empty array means All Projects.","type":"array","items":{"type":"string","uniqueKey":"holdout.projects.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"holdout.projects","typeLabel":"string[]"},"owner":{"description":"The userId of the owner (or raw owner name/email for legacy records)","type":"string","isRequired":true,"uniqueKey":"holdout.owner","typeLabel":"string"},"tags":{"type":"array","items":{"type":"string","uniqueKey":"holdout.tags.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"holdout.tags","typeLabel":"string[]"},"archived":{"type":"boolean","isRequired":true,"uniqueKey":"holdout.archived","typeLabel":"boolean"},"stage":{"description":"Lifecycle stage of the Holdout. Use the start, start-analysis, and stop endpoints to move through the lifecycle.","type":"string","enum":["draft","running","analysis-period","stopped"],"isRequired":true,"uniqueKey":"holdout.stage","typeLabel":"enum\u003cstring>"},"trackingKey":{"type":"string","isRequired":true,"uniqueKey":"holdout.trackingKey","typeLabel":"string"},"experimentId":{"description":"ID of the companion experiment that stores this Holdout's analysis. Use it with the experiment results endpoints (e.g. GET /experiments/{experimentId}/results). Pass phase=0 for results across the whole Holdout period, or phase=1 for results limited to the analysis period.","type":"string","isRequired":true,"uniqueKey":"holdout.experimentId","typeLabel":"string"},"skipAsDefaultHoldout":{"description":"When true, this Holdout is not selected automatically when creating Feature Flags or experiments in Projects assigned to the Holdout.","type":"boolean","isRequired":true,"uniqueKey":"holdout.skipAsDefaultHoldout","typeLabel":"boolean"},"holdoutSize":{"description":"Proportion of traffic placed in the holdout group (e.g. 0.05 for 5%). An equally sized comparison group is sampled from the remaining traffic for measurement, so 2× this value enters the holdout experiment in total. Must be greater than 0 and at most 0.5.","type":"number","exclusiveMinimum":0,"maximum":0.5,"isRequired":true,"uniqueKey":"holdout.holdoutSize","typeLabel":"number"},"hashAttribute":{"description":"Attribute used to assign users to the Holdout.","type":"string","isRequired":true,"uniqueKey":"holdout.hashAttribute","typeLabel":"string"},"targetingCondition":{"description":"Targeting condition as a JSON string.","type":"string","isRequired":true,"uniqueKey":"holdout.targetingCondition","typeLabel":"string"},"datasourceId":{"type":"string","isRequired":true,"uniqueKey":"holdout.datasourceId","typeLabel":"string"},"assignmentQuery":{"description":"The assignment query, grouping its ID with the identifier type analyzed on.","type":"object","properties":{"id":{"description":"The ID of one of the data source's assignment queries.","type":"string","isRequired":true,"uniqueKey":"holdout.assignmentQuery.id","typeLabel":"string"},"identifierType":{"oneOf":[{"type":"string","description":"The identifier type analyzed on. Null when none can be resolved: no assignment query is selected, or a record saved before identifier types were stored points at a query that no longer exists.","isRequired":true,"uniqueKey":"holdout.assignmentQuery.identifierType.oneOf.0","typeLabel":"string"},{"type":"null","description":"The identifier type analyzed on. Null when none can be resolved: no assignment query is selected, or a record saved before identifier types were stored points at a query that no longer exists.","isRequired":true,"uniqueKey":"holdout.assignmentQuery.identifierType.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"holdout.assignmentQuery.identifierType","typeLabel":"string | null"}},"required":["id","identifierType"],"additionalProperties":false,"isRequired":true,"uniqueKey":"holdout.assignmentQuery","typeLabel":"object"},"assignmentQueryId":{"description":"Deprecated: use `assignmentQuery`.","deprecated":true,"type":"string","isRequired":true,"uniqueKey":"holdout.assignmentQueryId","typeLabel":"string"},"goalMetrics":{"type":"array","items":{"type":"string","uniqueKey":"holdout.goalMetrics.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"holdout.goalMetrics","typeLabel":"string[]"},"secondaryMetrics":{"type":"array","items":{"type":"string","uniqueKey":"holdout.secondaryMetrics.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"holdout.secondaryMetrics","typeLabel":"string[]"},"variations":{"type":"array","items":{"type":"object","properties":{"variationId":{"type":"string","isRequired":true,"uniqueKey":"holdout.variations.items.[INDEX].variationId","typeLabel":"string"},"key":{"type":"string","isRequired":true,"uniqueKey":"holdout.variations.items.[INDEX].key","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"holdout.variations.items.[INDEX].name","typeLabel":"string"},"description":{"type":"string","maxLength":10000,"uniqueKey":"holdout.variations.items.[INDEX].description","typeLabel":"string"}},"required":["variationId","key","name"],"additionalProperties":false,"uniqueKey":"holdout.variations.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"holdout.variations","typeLabel":"object[]"},"environments":{"description":"Per-environment state, keyed by environment ID. Environments not present are disabled.","type":"object","propertyNames":{"type":"string"},"additionalProperties":{"type":"object","properties":{"enabled":{"description":"Whether the Holdout is active in this environment.","type":"boolean","isRequired":true,"uniqueKey":"holdout.environments.additionalProperties.enabled","typeLabel":"boolean"}},"required":["enabled"],"additionalProperties":false,"uniqueKey":"holdout.environments.additionalProperties","typeLabel":"object"},"isRequired":true,"uniqueKey":"holdout.environments","typeLabel":"object"},"linkedFeatures":{"description":"Feature Flags held out by this Holdout. Manage these through the Feature Flag endpoints.","type":"array","items":{"type":"object","properties":{"id":{"type":"string","isRequired":true,"uniqueKey":"holdout.linkedFeatures.items.[INDEX].id","typeLabel":"string"},"dateAdded":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"holdout.linkedFeatures.items.[INDEX].dateAdded","typeLabel":"string\u003cdate-time>"}},"required":["id","dateAdded"],"additionalProperties":false,"uniqueKey":"holdout.linkedFeatures.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"holdout.linkedFeatures","typeLabel":"object[]"},"linkedExperiments":{"description":"Experiments held out by this Holdout. Manage these through the experiment endpoints.","type":"array","items":{"type":"object","properties":{"id":{"type":"string","isRequired":true,"uniqueKey":"holdout.linkedExperiments.items.[INDEX].id","typeLabel":"string"},"dateAdded":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"holdout.linkedExperiments.items.[INDEX].dateAdded","typeLabel":"string\u003cdate-time>"}},"required":["id","dateAdded"],"additionalProperties":false,"uniqueKey":"holdout.linkedExperiments.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"holdout.linkedExperiments","typeLabel":"object[]"},"ownerEmail":{"description":"The email address of the owner, when the owner can be resolved to a known user.","type":"string","uniqueKey":"holdout.ownerEmail","typeLabel":"string"},"savedGroupTargeting":{"type":"array","items":{"type":"object","properties":{"match":{"type":"string","enum":["all","none","any"],"isRequired":true,"uniqueKey":"holdout.savedGroupTargeting.items.[INDEX].match","typeLabel":"enum\u003cstring>"},"ids":{"type":"array","items":{"type":"string","uniqueKey":"holdout.savedGroupTargeting.items.[INDEX].ids.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"holdout.savedGroupTargeting.items.[INDEX].ids","typeLabel":"string[]"}},"required":["match","ids"],"additionalProperties":false,"uniqueKey":"holdout.savedGroupTargeting.items.[INDEX]","typeLabel":"object"},"uniqueKey":"holdout.savedGroupTargeting","typeLabel":"object[]"},"statsEngine":{"description":"Statistics engine used to analyze this Holdout.","type":"string","enum":["bayesian","frequentist"],"uniqueKey":"holdout.statsEngine","typeLabel":"enum\u003cstring>"},"dateStarted":{"format":"date-time","type":"string","uniqueKey":"holdout.dateStarted","typeLabel":"string\u003cdate-time>"},"analysisStartDate":{"description":"When the Holdout entered its analysis period.","type":"string","format":"date-time","uniqueKey":"holdout.analysisStartDate","typeLabel":"string\u003cdate-time>"},"dateStopped":{"format":"date-time","type":"string","uniqueKey":"holdout.dateStopped","typeLabel":"string\u003cdate-time>"},"statusUpdateSchedule":{"oneOf":[{"type":"object","description":"Automatic stage transitions for the Holdout. Dates must be consecutive: `startAt` before `startAnalysisPeriodAt` before `stopAt`. Send `null` to delete the schedule.","properties":{"startAt":{"description":"ISO datetime to move the Holdout from `draft` to `running`. Must be in the future while the Holdout is still a draft.","type":"string","format":"date-time","uniqueKey":"holdout.statusUpdateSchedule.oneOf.0.startAt","typeLabel":"string\u003cdate-time>"},"startAnalysisPeriodAt":{"description":"ISO datetime to move the Holdout from `running` to `analysis-period`. Requires `startAt` while the Holdout is still a draft.","type":"string","format":"date-time","uniqueKey":"holdout.statusUpdateSchedule.oneOf.0.startAnalysisPeriodAt","typeLabel":"string\u003cdate-time>"},"stopAt":{"description":"ISO datetime to stop the Holdout. Requires `startAnalysisPeriodAt` unless the analysis period has already begun.","type":"string","format":"date-time","uniqueKey":"holdout.statusUpdateSchedule.oneOf.0.stopAt","typeLabel":"string\u003cdate-time>"}},"additionalProperties":false,"uniqueKey":"holdout.statusUpdateSchedule.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"holdout.statusUpdateSchedule.oneOf.1","typeLabel":"null"}],"uniqueKey":"holdout.statusUpdateSchedule","typeLabel":"object | null"},"nextScheduledStatusUpdate":{"oneOf":[{"type":"object","description":"The next stage transition that will run automatically.","required":["type","date"],"properties":{"type":{"type":"string","enum":["start","startAnalysisPeriod","stop"],"isRequired":true,"uniqueKey":"holdout.nextScheduledStatusUpdate.oneOf.0.type","typeLabel":"enum\u003cstring>"},"date":{"format":"date-time","type":"string","isRequired":true,"uniqueKey":"holdout.nextScheduledStatusUpdate.oneOf.0.date","typeLabel":"string\u003cdate-time>"}},"additionalProperties":false,"uniqueKey":"holdout.nextScheduledStatusUpdate.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"holdout.nextScheduledStatusUpdate.oneOf.1","typeLabel":"null"}],"uniqueKey":"holdout.nextScheduledStatusUpdate","typeLabel":"object | null"}},"required":["id","dateCreated","dateUpdated","name","description","projects","owner","tags","archived","stage","trackingKey","experimentId","skipAsDefaultHoldout","holdoutSize","hashAttribute","targetingCondition","datasourceId","assignmentQuery","assignmentQueryId","goalMetrics","secondaryMetrics","variations","environments","linkedFeatures","linkedExperiments"],"additionalProperties":false,"isRequired":true,"uniqueKey":"holdout","typeLabel":"object"}},"required":["holdout"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"holdout":{"id":"\u003cstring>","dateCreated":"2023-11-07T05:31:56Z","dateUpdated":"2023-11-07T05:31:56Z","name":"\u003cstring>","description":"\u003cstring>","projects":["\u003cstring>"],"owner":"\u003cstring>","tags":["\u003cstring>"],"archived":true,"stage":"draft","trackingKey":"\u003cstring>","experimentId":"\u003cstring>","skipAsDefaultHoldout":true,"holdoutSize":-0.5,"hashAttribute":"\u003cstring>","targetingCondition":"\u003cstring>","datasourceId":"\u003cstring>","assignmentQuery":{"id":"\u003cstring>","identifierType":"\u003cstring>"},"assignmentQueryId":"\u003cstring>","goalMetrics":["\u003cstring>"],"secondaryMetrics":["\u003cstring>"],"variations":[{"variationId":"\u003cstring>","key":"\u003cstring>","name":"\u003cstring>","description":"\u003cstring>"}],"environments":{},"linkedFeatures":[{"id":"\u003cstring>","dateAdded":"2023-11-07T05:31:56Z"}],"linkedExperiments":[{"id":"\u003cstring>","dateAdded":"2023-11-07T05:31:56Z"}],"ownerEmail":"\u003cstring>","savedGroupTargeting":[{"match":"all","ids":["\u003cstring>"]}],"statsEngine":"bayesian","dateStarted":"2023-11-07T05:31:56Z","analysisStartDate":"2023-11-07T05:31:56Z","dateStopped":"2023-11-07T05:31:56Z","statusUpdateSchedule":{"startAt":"2023-11-07T05:31:56Z","startAnalysisPeriodAt":"2023-11-07T05:31:56Z","stopAt":"2023-11-07T05:31:56Z"},"nextScheduledStatusUpdate":{"type":"start","date":"2023-11-07T05:31:56Z"}}}}},"exampleType":"generated"}},"exampleType":"generated"},"42d0ffc9-73d1-4fe3-b5a6-74dc953482e0":{"description":"Held until a person confirms it in GrowthBook. Poll the Location until the confirmation completes.","headers":{"Location":{"description":"The confirmation to poll","schema":{"type":"string"}},"Retry-After":{"description":"Seconds to wait before polling","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"confirmation":{"type":"object","properties":{"id":{"type":"string","isRequired":true,"uniqueKey":"confirmation.id","typeLabel":"string"},"status":{"type":"string","enum":["pending","running","completed","rejected","expired"],"isRequired":true,"uniqueKey":"confirmation.status","typeLabel":"enum\u003cstring>"},"actions":{"type":"array","items":{"type":"object","properties":{"action":{"type":"string","enum":["feature.create","feature.draft","feature.review","feature.publish","feature.archive","feature.delete","feature.other","experiment.create","experiment.draft","experiment.start","experiment.stop","experiment.targeting","experiment.traffic","experiment.phases","experiment.visualEditor","experiment.other","savedGroup.create","savedGroup.draft","savedGroup.review","savedGroup.publish","savedGroup.archive","savedGroup.delete","savedGroup.other","constant.create","constant.draft","constant.review","constant.publish","constant.archive","constant.delete","constant.other","config.create","config.draft","config.review","config.publish","config.archive","config.delete","config.other","rampSchedule.create","rampSchedule.start","rampSchedule.pause","rampSchedule.progression","rampSchedule.approve","rampSchedule.edit","rampSchedule.delete","rampSchedule.other","settings.approvals","settings.other","access.members","access.teams","customHook.create","customHook.edit","customHook.delete","environment.create","environment.edit","environment.delete","project.create","project.edit","project.delete","attribute.create","attribute.edit","attribute.delete","customField.create","customField.edit","customField.delete","sdkConnection.create","sdkConnection.edit","sdkConnection.delete","metric.create","metric.edit","metric.delete","factTable.create","factTable.edit","factTable.delete","segment.create","segment.edit","segment.delete","dimension.create","dimension.edit","dimension.delete","override.ignoreWarnings","override.skipSchemaValidation","override.skipHooks","override.bypassApproval","override.restBypassesReviews","override.draftLimit","override.skipChecklist","override.bypassDuplicateKeyCheck","override.unscopedRules","other.write"],"isRequired":true,"uniqueKey":"confirmation.actions.items.[INDEX].action","typeLabel":"enum\u003cstring>"},"environments":{"type":"array","items":{"type":"string","uniqueKey":"confirmation.actions.items.[INDEX].environments.items.[INDEX]","typeLabel":"string"},"isRequired":true,"uniqueKey":"confirmation.actions.items.[INDEX].environments","typeLabel":"string[]"}},"required":["action","environments"],"additionalProperties":false,"uniqueKey":"confirmation.actions.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"confirmation.actions","typeLabel":"object[]"},"summary":{"type":"string","isRequired":true,"uniqueKey":"confirmation.summary","typeLabel":"string"},"url":{"type":"string","isRequired":true,"uniqueKey":"confirmation.url","typeLabel":"string"},"expiresAt":{"type":"string","isRequired":true,"uniqueKey":"confirmation.expiresAt","typeLabel":"string"},"response":{"oneOf":[{"type":"object","required":["status","body"],"properties":{"status":{"type":"number","isRequired":true,"uniqueKey":"confirmation.response.oneOf.0.status","typeLabel":"number"},"body":{"oneOf":[{"isRequired":true}],"isRequired":true,"uniqueKey":"confirmation.response.oneOf.0.body","typeLabel":"any"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"confirmation.response.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"confirmation.response.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"confirmation.response","typeLabel":"object | null"},"note":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"confirmation.note.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"confirmation.note.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"confirmation.note","typeLabel":"string | null"}},"required":["id","status","actions","summary","url","expiresAt","response","note"],"additionalProperties":false,"isRequired":true,"uniqueKey":"confirmation","typeLabel":"object"},"message":{"type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["confirmation","message"],"additionalProperties":false,"$defs":{"Confirmation":{"id":"Confirmation","type":"object","properties":{"id":{"type":"string"},"status":{"type":"string","enum":["pending","running","completed","rejected","expired"]},"actions":{"type":"array","items":{"type":"object","properties":{"action":{"type":"string","enum":["feature.create","feature.draft","feature.review","feature.publish","feature.archive","feature.delete","feature.other","experiment.create","experiment.draft","experiment.start","experiment.stop","experiment.targeting","experiment.traffic","experiment.phases","experiment.visualEditor","experiment.other","savedGroup.create","savedGroup.draft","savedGroup.review","savedGroup.publish","savedGroup.archive","savedGroup.delete","savedGroup.other","constant.create","constant.draft","constant.review","constant.publish","constant.archive","constant.delete","constant.other","config.create","config.draft","config.review","config.publish","config.archive","config.delete","config.other","rampSchedule.create","rampSchedule.start","rampSchedule.pause","rampSchedule.progression","rampSchedule.approve","rampSchedule.edit","rampSchedule.delete","rampSchedule.other","settings.approvals","settings.other","access.members","access.teams","customHook.create","customHook.edit","customHook.delete","environment.create","environment.edit","environment.delete","project.create","project.edit","project.delete","attribute.create","attribute.edit","attribute.delete","customField.create","customField.edit","customField.delete","sdkConnection.create","sdkConnection.edit","sdkConnection.delete","metric.create","metric.edit","metric.delete","factTable.create","factTable.edit","factTable.delete","segment.create","segment.edit","segment.delete","dimension.create","dimension.edit","dimension.delete","override.ignoreWarnings","override.skipSchemaValidation","override.skipHooks","override.bypassApproval","override.restBypassesReviews","override.draftLimit","override.skipChecklist","override.bypassDuplicateKeyCheck","override.unscopedRules","other.write"]},"environments":{"type":"array","items":{"type":"string"}}},"required":["action","environments"],"additionalProperties":false}},"summary":{"type":"string"},"url":{"type":"string"},"expiresAt":{"type":"string"},"response":{"anyOf":[{"type":"object","properties":{"status":{"type":"number"},"body":{}},"required":["status","body"],"additionalProperties":false},{"type":"null"}]},"note":{"anyOf":[{"type":"string"},{"type":"null"}]}},"required":["id","status","actions","summary","url","expiresAt","response","note"],"additionalProperties":false}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"confirmation":{"id":"\u003cstring>","status":"pending","actions":[{"action":"feature.create","environments":["\u003cstring>"]}],"summary":"\u003cstring>","url":"\u003cstring>","expiresAt":"\u003cstring>","response":{"status":123,"body":"\u003cunknown>"},"note":"\u003cstring>"},"message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"23cd1617-f708-4317-915a-f050d3a9f2cc":{"bearerAuth":{"type":"http","scheme":"bearer","description":"If using Bearer auth, pass the Secret Key as the token:\n```bash\ncurl https://api.growthbook.io/api/v1/features -H \"Authorization: Bearer secret_abc123DEF456\"\n```\n","scopes":[],"schemeName":"bearerAuth"}},"123ef339-df46-49d4-9043-d78ce9bd3ff9":{"basicAuth":{"type":"http","scheme":"basic","description":"If using HTTP Basic auth, pass the Secret Key as the username and leave the password blank:\n```bash\ncurl https://api.growthbook.io/api/v1/features -u secret_abc123DEF456:\n# The \":\" at the end stops curl from asking for a password\n```\n","scopes":[],"schemeName":"basicAuth"}}},"servers":{"87cee318-58b0-4555-9afc-d446bfd46b77":{"url":"https://api.growthbook.io/api","description":"GrowthBook Cloud"},"81c7f86c-80cc-4420-8d21-5418239245a5":{"url":"https://{domain}/api","description":"Self-hosted GrowthBook","variables":{"domain":{"default":"localhost:3100","description":"Your self-hosted GrowthBook host (and port)"}}}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"If using Bearer auth, pass the Secret Key as the token:\n```bash\ncurl https://api.growthbook.io/api/v1/features -H \"Authorization: Bearer secret_abc123DEF456\"\n```\n","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"If using Bearer auth, pass the Secret Key as the token:\n```bash\ncurl https://api.growthbook.io/api/v1/features -H \"Authorization: Bearer secret_abc123DEF456\"\n```\n","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"},{"schemes":[{"scheme":{"type":"http","scheme":"basic","description":"If using HTTP Basic auth, pass the Secret Key as the username and leave the password blank:\n```bash\ncurl https://api.growthbook.io/api/v1/features -u secret_abc123DEF456:\n# The \":\" at the end stops curl from asking for a password\n```\n","scopes":[],"schemeName":"basicAuth"},"schema":{"title":"Basic Auth","type":"object","description":"If using HTTP Basic auth, pass the Secret Key as the username and leave the password blank:\n```bash\ncurl https://api.growthbook.io/api/v1/features -u secret_abc123DEF456:\n# The \":\" at the end stops curl from asking for a password\n```\n","isRequired":true,"properties":{"username":{"type":"string","uniqueKey":"username","isRequired":true,"typeLabel":"string","deprecated":false},"password":{"type":"string","uniqueKey":"password","isRequired":true,"typeLabel":"string","deprecated":false}},"additionalProperties":false,"deprecated":false},"schemeName":"basicAuth","name":"Authorization"}],"title":"basicAuth"}]},"originalFileLocation":"openapi.yaml"},"subdomain":"growthbook-ea15456d","siteName":"GrowthBook Documentation","title":"Update a single holdout - GrowthBook Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-08-28T21:16:37.745Z","originalFileLocation":"api/Holdouts/operation/updateHoldout.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Updates a Holdout. Use the start, start-analysis, and stop endpoints to move it through its lifecycle.\">\u003cmeta data-mint-head name=\"application-name\" content=\"GrowthBook Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/growthbook-ea15456d/OQgSyDtrkb__kTVO/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/growthbook-ea15456d/OQgSyDtrkb__kTVO/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/growthbook-ea15456d/OQgSyDtrkb__kTVO/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/growthbook-ea15456d/OQgSyDtrkb__kTVO/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/growthbook-ea15456d/OQgSyDtrkb__kTVO/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/growthbook-ea15456d/OQgSyDtrkb__kTVO/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/growthbook-ea15456d/OQgSyDtrkb__kTVO/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/growthbook-ea15456d/OQgSyDtrkb__kTVO/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/growthbook-ea15456d/OQgSyDtrkb__kTVO/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Update a single holdout - GrowthBook Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Updates a Holdout. Use the start, start-analysis, and stop endpoints to move it through its lifecycle.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"GrowthBook Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.growthbook.io/api/Holdouts/operation/updateHoldout\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://growthbook-ea15456d.mintlify.app/_mintlify/api/og/v2?division=Holdouts\u0026amp;title=Update+a+single+holdout\u0026amp;description=Updates+a+Holdout.+Use+the+start%2C+start-analysis%2C+and+stop+endpoints+to+move+it+through+its+lifecycle.\u0026amp;theme=a76e1ea8bdfd6b33168f0c83\u0026amp;signature=f98c695b7d64bbbe8ab3dcfcfa850a5b19e366c3b73b1e593af245334ca9149e\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Update a single holdout - GrowthBook Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Updates a Holdout. Use the start, start-analysis, and stop endpoints to move it through its lifecycle.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://growthbook-ea15456d.mintlify.app/_mintlify/api/og/v2?division=Holdouts\u0026amp;title=Update+a+single+holdout\u0026amp;description=Updates+a+Holdout.+Use+the+start%2C+start-analysis%2C+and+stop+endpoints+to+move+it+through+its+lifecycle.\u0026amp;theme=a76e1ea8bdfd6b33168f0c83\u0026amp;signature=f98c695b7d64bbbe8ab3dcfcfa850a5b19e366c3b73b1e593af245334ca9149e\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/growthbook-ea15456d/OQgSyDtrkb__kTVO/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"GrowthBook Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#039DD0\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.growthbook.io/api/Holdouts/operation/updateHoldout\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api/Holdouts/operation/updateHoldout.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.growthbook.io/#organization\",\"name\":\"GrowthBook Documentation\",\"url\":\"https://docs.growthbook.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/growthbook-ea15456d/66H-dO8hZfIFVUdN/static/img/growthbook-docslogo-light.png?fit=max\u0026auto=format\u0026n=66H-dO8hZfIFVUdN\u0026q=85\u0026s=36f32d1bbabbdafdb0bd9bc2b53c43e7\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.growthbook.io#website\",\"name\":\"GrowthBook Documentation\",\"url\":\"https://docs.growthbook.io\",\"publisher\":{\"@id\":\"https://docs.growthbook.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.growthbook.io/api/Holdouts/operation/updateHoldout#webpage\",\"url\":\"https://docs.growthbook.io/api/Holdouts/operation/updateHoldout\",\"name\":\"Update a single holdout\",\"description\":\"Updates a Holdout. Use the start, start-analysis, and stop endpoints to move it through its lifecycle.\",\"dateModified\":\"2026-08-28T21:16:37.745Z\",\"isPartOf\":{\"@id\":\"https://docs.growthbook.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.growthbook.io/api/Holdouts/operation/updateHoldout#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.growthbook.io/api/Holdouts/operation/updateHoldout#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.growthbook.io/api/projects/operation/listProjects\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Holdouts\",\"item\":\"https://docs.growthbook.io/api/Holdouts/operation/getHoldout\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Update a single holdout\",\"item\":\"https://docs.growthbook.io/api/Holdouts/operation/updateHoldout\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.growthbook.io/api/Holdouts/operation/updateHoldout#apireference\",\"headline\":\"Update a single holdout\",\"name\":\"Update a single holdout\",\"description\":\"Updates a Holdout. Use the start, start-analysis, and stop endpoints to move it through its lifecycle.\",\"url\":\"https://docs.growthbook.io/api/Holdouts/operation/updateHoldout\",\"mainEntityOfPage\":{\"@id\":\"https://docs.growthbook.io/api/Holdouts/operation/updateHoldout#webpage\"},\"dateModified\":\"2026-08-28T21:16:37.745Z\",\"publisher\":{\"@id\":\"https://docs.growthbook.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.growthbook.io#website\"}}]}\u003c/script>","siteName":"GrowthBook Documentation","nav":{"global":{"anchors":[]},"tabs":[{"tab":"Docs","pages":[{"title":"Docs","href":""}]},{"tab":"SDKs","pages":[{"title":"SDKs","href":"/lib"}]},{"tab":"API","groups":[{"group":"Introduction","pages":[{"title":"Introduction","href":"/api/introduction"}]},{"group":"Endpoints","pages":[{"group":"Projects","pages":[{"title":"Get all projects","openapi":"openapi.yaml GET /v1/projects","href":"/api/projects/operation/listProjects"},{"title":"Create a single project","openapi":"openapi.yaml POST /v1/projects","href":"/api/projects/operation/postProject"},{"title":"Get a single project","openapi":"openapi.yaml GET /v1/projects/{id}","href":"/api/projects/operation/getProject"},{"title":"Edit a single project","openapi":"openapi.yaml PUT /v1/projects/{id}","href":"/api/projects/operation/putProject"},{"title":"Deletes a single project","openapi":"openapi.yaml DELETE /v1/projects/{id}","href":"/api/projects/operation/deleteProject"}]},{"group":"Environments","pages":[{"title":"Get the organization's environments","openapi":"openapi.yaml GET /v1/environments","href":"/api/environments/operation/listEnvironments"},{"title":"Create a new environment","openapi":"openapi.yaml POST /v1/environments","href":"/api/environments/operation/postEnvironment"},{"title":"Update an environment","openapi":"openapi.yaml PUT /v1/environments/{id}","href":"/api/environments/operation/putEnvironment"},{"title":"Deletes a single environment","openapi":"openapi.yaml DELETE /v1/environments/{id}","href":"/api/environments/operation/deleteEnvironment"}]},{"group":"Feature Flags","tag":"v2","pages":[{"title":"Get all features","openapi":"openapi.yaml GET /v2/features","href":"/api/features-v2/operation/listFeaturesV2"},{"title":"Create a single feature","openapi":"openapi.yaml POST /v2/features","href":"/api/features-v2/operation/postFeatureV2"},{"title":"Get a single feature","openapi":"openapi.yaml GET /v2/features/{id}","href":"/api/features-v2/operation/getFeatureV2"},{"title":"Partially update a feature","openapi":"openapi.yaml POST /v2/features/{id}","href":"/api/features-v2/operation/updateFeatureV2"},{"title":"Deletes a single feature","openapi":"openapi.yaml DELETE /v2/features/{id}","href":"/api/features-v2/operation/deleteFeatureV2"},{"title":"Toggle a feature in one or more environments","openapi":"openapi.yaml POST /v2/features/{id}/toggle","href":"/api/features-v2/operation/toggleFeatureV2"},{"title":"Revert a feature to a specific revision","openapi":"openapi.yaml POST /v2/features/{id}/revert","href":"/api/features-v2/operation/revertFeatureV2"},{"title":"Get list of feature keys","openapi":"openapi.yaml GET /v2/feature-keys","href":"/api/features-v2/operation/getFeatureKeysV2"},{"title":"Get stale status for one or more features","openapi":"openapi.yaml GET /v2/stale-features","href":"/api/features-v2/operation/getFeatureStaleV2"}]},{"group":"Feature Revisions","tag":"v2","pages":[{"title":"List revisions across all features","openapi":"openapi.yaml GET /v2/feature-revisions","href":"/api/feature-revisions-v2/operation/listRevisionsV2"},{"title":"List revisions for a feature","openapi":"openapi.yaml GET /v2/features/{id}/revisions","href":"/api/feature-revisions-v2/operation/getFeatureRevisionsV2"},{"title":"Create a draft revision","openapi":"openapi.yaml POST /v2/features/{id}/revisions","href":"/api/feature-revisions-v2/operation/postFeatureRevisionV2"},{"title":"Get the most recent active draft revision","openapi":"openapi.yaml GET /v2/features/{id}/revisions/latest","href":"/api/feature-revisions-v2/operation/getFeatureRevisionLatestV2"},{"title":"Get a single feature revision","openapi":"openapi.yaml GET /v2/features/{id}/revisions/{version}","href":"/api/feature-revisions-v2/operation/getFeatureRevisionV2"},{"title":"Diff a revision against another revision","openapi":"openapi.yaml GET /v2/features/{id}/revisions/{version}/diff","href":"/api/feature-revisions-v2/operation/getFeatureRevisionDiffV2"},{"title":"Update revision metadata","openapi":"openapi.yaml PUT /v2/features/{id}/revisions/{version}/metadata","href":"/api/feature-revisions-v2/operation/putFeatureRevisionMetadataV2"},{"title":"Set the default value in a draft revision","openapi":"openapi.yaml PUT /v2/features/{id}/revisions/{version}/default-value","href":"/api/feature-revisions-v2/operation/putFeatureRevisionDefaultValueV2"},{"title":"Set feature-level prerequisites in a draft revision","openapi":"openapi.yaml PUT /v2/features/{id}/revisions/{version}/prerequisites","href":"/api/feature-revisions-v2/operation/putFeatureRevisionPrerequisitesV2"},{"title":"Set holdout in a draft revision","openapi":"openapi.yaml PUT /v2/features/{id}/revisions/{version}/holdout","href":"/api/feature-revisions-v2/operation/putFeatureRevisionHoldoutV2"},{"title":"Set archived state in a draft revision","openapi":"openapi.yaml PUT /v2/features/{id}/revisions/{version}/archive","href":"/api/feature-revisions-v2/operation/putFeatureRevisionArchiveV2"},{"title":"Toggle an environment on/off in a draft revision","openapi":"openapi.yaml POST /v2/features/{id}/revisions/{version}/toggle","href":"/api/feature-revisions-v2/operation/postFeatureRevisionToggleV2"},{"title":"Add a rule to a draft revision","openapi":"openapi.yaml POST /v2/features/{id}/revisions/{version}/rules","href":"/api/feature-revisions-v2/operation/postFeatureRevisionRuleAddV2"},{"title":"Update a rule in a draft revision","openapi":"openapi.yaml PUT /v2/features/{id}/revisions/{version}/rules/{ruleId}","href":"/api/feature-revisions-v2/operation/putFeatureRevisionRuleV2"},{"title":"Delete a rule from a draft revision","openapi":"openapi.yaml DELETE /v2/features/{id}/revisions/{version}/rules/{ruleId}","href":"/api/feature-revisions-v2/operation/deleteFeatureRevisionRuleV2"},{"title":"Reorder rules in the revision","openapi":"openapi.yaml POST /v2/features/{id}/revisions/{version}/rules/reorder","href":"/api/feature-revisions-v2/operation/postFeatureRevisionRulesReorderV2"},{"title":"Set ramp schedule for a rule","openapi":"openapi.yaml PUT /v2/features/{id}/revisions/{version}/rules/{ruleId}/ramp-schedule","href":"/api/feature-revisions-v2/operation/putFeatureRevisionRuleRampScheduleV2"},{"title":"Remove ramp schedule from a rule","openapi":"openapi.yaml DELETE /v2/features/{id}/revisions/{version}/rules/{ruleId}/ramp-schedule","href":"/api/feature-revisions-v2/operation/deleteFeatureRevisionRuleRampScheduleV2"},{"title":"Request review for a draft revision","openapi":"openapi.yaml POST /v2/features/{id}/revisions/{version}/request-review","href":"/api/feature-revisions-v2/operation/postFeatureRevisionRequestReviewV2"},{"title":"Schedule (or cancel) a deferred publish for a draft revision","openapi":"openapi.yaml POST /v2/features/{id}/revisions/{version}/schedule-publish","href":"/api/feature-revisions-v2/operation/postFeatureRevisionSchedulePublishV2"},{"title":"Submit a review on a draft revision","openapi":"openapi.yaml POST /v2/features/{id}/revisions/{version}/submit-review","href":"/api/feature-revisions-v2/operation/postFeatureRevisionSubmitReviewV2"},{"title":"Recall a review request (revert to draft)","openapi":"openapi.yaml POST /v2/features/{id}/revisions/{version}/recall-review","href":"/api/feature-revisions-v2/operation/postFeatureRevisionRecallReviewV2"},{"title":"Undo a reviewer's own review verdict","openapi":"openapi.yaml POST /v2/features/{id}/revisions/{version}/undo-review","href":"/api/feature-revisions-v2/operation/postFeatureRevisionUndoReviewV2"},{"title":"List the activity log for a revision","openapi":"openapi.yaml GET /v2/features/{id}/revisions/{version}/log","href":"/api/feature-revisions-v2/operation/getFeatureRevisionLogV2"},{"title":"Edit the comment text of an owned log entry","openapi":"openapi.yaml PUT /v2/features/{id}/revisions/{version}/log/{logId}","href":"/api/feature-revisions-v2/operation/putFeatureRevisionLogCommentV2"},{"title":"Delete an owned revision Comment entry","openapi":"openapi.yaml DELETE /v2/features/{id}/revisions/{version}/log/{logId}","href":"/api/feature-revisions-v2/operation/deleteFeatureRevisionLogEntryV2"},{"title":"Get merge status for a draft revision","openapi":"openapi.yaml GET /v2/features/{id}/revisions/{version}/merge-status","href":"/api/feature-revisions-v2/operation/getFeatureRevisionMergeStatusV2"},{"title":"Preview a rebase without applying it","openapi":"openapi.yaml POST /v2/features/{id}/revisions/{version}/rebase/preview","href":"/api/feature-revisions-v2/operation/postFeatureRevisionRebasePreviewV2"},{"title":"Rebase a draft revision onto the current live version","openapi":"openapi.yaml POST /v2/features/{id}/revisions/{version}/rebase","href":"/api/feature-revisions-v2/operation/postFeatureRevisionRebaseV2"},{"title":"Publish a draft revision","openapi":"openapi.yaml POST /v2/features/{id}/revisions/{version}/publish","href":"/api/feature-revisions-v2/operation/postFeatureRevisionPublishV2"},{"title":"Discard a draft revision","openapi":"openapi.yaml POST /v2/features/{id}/revisions/{version}/discard","href":"/api/feature-revisions-v2/operation/postFeatureRevisionDiscardV2"},{"title":"Reopen a discarded revision as a draft","openapi":"openapi.yaml POST /v2/features/{id}/revisions/{version}/reopen","href":"/api/feature-revisions-v2/operation/postFeatureRevisionReopenV2"},{"title":"Revert the feature to a prior revision","openapi":"openapi.yaml POST /v2/features/{id}/revisions/{version}/revert","href":"/api/feature-revisions-v2/operation/postFeatureRevisionRevertV2"}]},{"group":"Feature Flags (legacy)","tag":"LEGACY","expanded":false,"pages":[{"title":"Get all features","openapi":"openapi.yaml GET /v1/features","href":"/api/features/operation/listFeatures"},{"title":"Create a single feature","openapi":"openapi.yaml POST /v1/features","href":"/api/features/operation/postFeature"},{"title":"Get a single feature","openapi":"openapi.yaml GET /v1/features/{id}","href":"/api/features/operation/getFeature"},{"title":"Partially update a feature","openapi":"openapi.yaml POST /v1/features/{id}","href":"/api/features/operation/updateFeature"},{"title":"Deletes a single feature","openapi":"openapi.yaml DELETE /v1/features/{id}","href":"/api/features/operation/deleteFeature"},{"title":"Toggle a feature in one or more environments","openapi":"openapi.yaml POST /v1/features/{id}/toggle","href":"/api/features/operation/toggleFeature"},{"title":"Revert a feature to a specific revision","openapi":"openapi.yaml POST /v1/features/{id}/revert","href":"/api/features/operation/revertFeature"},{"title":"Get list of feature keys","openapi":"openapi.yaml GET /v1/feature-keys","href":"/api/features/operation/getFeatureKeys"},{"title":"Get stale status for one or more features","openapi":"openapi.yaml GET /v1/stale-features","href":"/api/features/operation/getFeatureStale"}]},{"group":"Feature Revisions (legacy)","tag":"LEGACY","expanded":false,"pages":[{"title":"List feature revisions","openapi":"openapi.yaml GET /v1/revisions","href":"/api/feature-revisions/operation/listRevisions"},{"title":"List revisions for a feature","openapi":"openapi.yaml GET /v1/features/{id}/revisions","href":"/api/feature-revisions/operation/getFeatureRevisions"},{"title":"Create a draft revision","openapi":"openapi.yaml POST /v1/features/{id}/revisions","href":"/api/feature-revisions/operation/postFeatureRevision"},{"title":"Get the most recent active draft revision","openapi":"openapi.yaml GET /v1/features/{id}/revisions/latest","href":"/api/feature-revisions/operation/getFeatureRevisionLatest"},{"title":"Get a single feature revision","openapi":"openapi.yaml GET /v1/features/{id}/revisions/{version}","href":"/api/feature-revisions/operation/getFeatureRevision"},{"title":"Update revision metadata (comment, title, feature metadata)","openapi":"openapi.yaml PUT /v1/features/{id}/revisions/{version}/metadata","href":"/api/feature-revisions/operation/putFeatureRevisionMetadata"},{"title":"Set the default value in a draft revision","openapi":"openapi.yaml PUT /v1/features/{id}/revisions/{version}/default-value","href":"/api/feature-revisions/operation/putFeatureRevisionDefaultValue"},{"title":"Set feature-level prerequisites in a draft revision","openapi":"openapi.yaml PUT /v1/features/{id}/revisions/{version}/prerequisites","href":"/api/feature-revisions/operation/putFeatureRevisionPrerequisites"},{"title":"Set holdout in a draft revision","openapi":"openapi.yaml PUT /v1/features/{id}/revisions/{version}/holdout","href":"/api/feature-revisions/operation/putFeatureRevisionHoldout"},{"title":"Set archived state in a draft revision","openapi":"openapi.yaml PUT /v1/features/{id}/revisions/{version}/archive","href":"/api/feature-revisions/operation/putFeatureRevisionArchive"},{"title":"Toggle an environment on/off in a draft revision","openapi":"openapi.yaml POST /v1/features/{id}/revisions/{version}/toggle","href":"/api/feature-revisions/operation/postFeatureRevisionToggle"},{"title":"Add a rule to a draft revision","openapi":"openapi.yaml POST /v1/features/{id}/revisions/{version}/rules","href":"/api/feature-revisions/operation/postFeatureRevisionRuleAdd"},{"title":"Update a rule in a draft revision","openapi":"openapi.yaml PUT /v1/features/{id}/revisions/{version}/rules/{ruleId}","href":"/api/feature-revisions/operation/putFeatureRevisionRule"},{"title":"Delete a rule from a draft revision","openapi":"openapi.yaml DELETE /v1/features/{id}/revisions/{version}/rules/{ruleId}","href":"/api/feature-revisions/operation/deleteFeatureRevisionRule"},{"title":"Reorder rules in an environment","openapi":"openapi.yaml POST /v1/features/{id}/revisions/{version}/rules/reorder","href":"/api/feature-revisions/operation/postFeatureRevisionRulesReorder"},{"title":"Set ramp schedule for a rule","openapi":"openapi.yaml PUT /v1/features/{id}/revisions/{version}/rules/{ruleId}/ramp-schedule","href":"/api/feature-revisions/operation/putFeatureRevisionRuleRampSchedule"},{"title":"Remove ramp schedule from a rule","openapi":"openapi.yaml DELETE /v1/features/{id}/revisions/{version}/rules/{ruleId}/ramp-schedule","href":"/api/feature-revisions/operation/deleteFeatureRevisionRuleRampSchedule"},{"title":"Request review for a draft revision","openapi":"openapi.yaml POST /v1/features/{id}/revisions/{version}/request-review","href":"/api/feature-revisions/operation/postFeatureRevisionRequestReview"},{"title":"Submit a review on a draft revision","openapi":"openapi.yaml POST /v1/features/{id}/revisions/{version}/submit-review","href":"/api/feature-revisions/operation/postFeatureRevisionSubmitReview"},{"title":"Get merge status for a draft revision","openapi":"openapi.yaml GET /v1/features/{id}/revisions/{version}/merge-status","href":"/api/feature-revisions/operation/getFeatureRevisionMergeStatus"},{"title":"Rebase a draft revision onto the current live version","openapi":"openapi.yaml POST /v1/features/{id}/revisions/{version}/rebase","href":"/api/feature-revisions/operation/postFeatureRevisionRebase"},{"title":"Publish a draft revision","openapi":"openapi.yaml POST /v1/features/{id}/revisions/{version}/publish","href":"/api/feature-revisions/operation/postFeatureRevisionPublish"},{"title":"Discard a draft revision","openapi":"openapi.yaml POST /v1/features/{id}/revisions/{version}/discard","href":"/api/feature-revisions/operation/postFeatureRevisionDiscard"},{"title":"Revert the feature to a prior revision","openapi":"openapi.yaml POST /v1/features/{id}/revisions/{version}/revert","href":"/api/feature-revisions/operation/postFeatureRevisionRevert"}]},{"group":"Ramp Schedules","pages":[{"title":"Get all rampSchedules","openapi":"openapi.yaml GET /v1/ramp-schedules","href":"/api/ramp-schedules/operation/listRampSchedules"},{"title":"Create a ramp schedule","openapi":"openapi.yaml POST /v1/ramp-schedules","href":"/api/ramp-schedules/operation/postRampSchedule"},{"title":"Start a ramp schedule","openapi":"openapi.yaml POST /v1/ramp-schedules/{id}/actions/start","href":"/api/ramp-schedules/operation/startRampSchedule"},{"title":"Pause a ramp schedule","openapi":"openapi.yaml POST /v1/ramp-schedules/{id}/actions/pause","href":"/api/ramp-schedules/operation/pauseRampSchedule"},{"title":"Resume a paused ramp schedule","openapi":"openapi.yaml POST /v1/ramp-schedules/{id}/actions/resume","href":"/api/ramp-schedules/operation/resumeRampSchedule"},{"title":"Roll back a ramp schedule","openapi":"openapi.yaml POST /v1/ramp-schedules/{id}/actions/rollback","href":"/api/ramp-schedules/operation/rollbackRampSchedule"},{"title":"Restart a terminal ramp schedule","openapi":"openapi.yaml POST /v1/ramp-schedules/{id}/actions/restart","href":"/api/ramp-schedules/operation/restartRampSchedule"},{"title":"Jump to a specific step","openapi":"openapi.yaml POST /v1/ramp-schedules/{id}/actions/jump","href":"/api/ramp-schedules/operation/jumpRampSchedule"},{"title":"Complete a ramp schedule immediately","openapi":"openapi.yaml POST /v1/ramp-schedules/{id}/actions/complete","href":"/api/ramp-schedules/operation/completeRampSchedule"},{"title":"Approve the pending approval gate","openapi":"openapi.yaml POST /v1/ramp-schedules/{id}/actions/approve-step","href":"/api/ramp-schedules/operation/approveStepRampSchedule"},{"title":"Add a target rule to a ramp schedule","openapi":"openapi.yaml POST /v1/ramp-schedules/{id}/actions/add-target","href":"/api/ramp-schedules/operation/addTargetRampSchedule"},{"title":"Remove a target rule from a ramp schedule","openapi":"openapi.yaml POST /v1/ramp-schedules/{id}/actions/eject-target","href":"/api/ramp-schedules/operation/ejectTargetRampSchedule"},{"title":"Advance to the next step, overriding any holds","openapi":"openapi.yaml POST /v1/ramp-schedules/{id}/actions/advance","href":"/api/ramp-schedules/operation/apiAdvanceRampSchedule"},{"title":"Get ramp schedule status summary","openapi":"openapi.yaml GET /v1/ramp-schedules/{id}/status","href":"/api/ramp-schedules/operation/getRampScheduleStatus"},{"title":"Set ramp monitoring mode","openapi":"openapi.yaml POST /v1/ramp-schedules/{id}/actions/set-monitoring-mode","href":"/api/ramp-schedules/operation/setMonitoringModeRampSchedule"},{"title":"Toggle automatic monitoring updates","openapi":"openapi.yaml POST /v1/ramp-schedules/{id}/actions/set-auto-update","href":"/api/ramp-schedules/operation/setAutoUpdateRampSchedule"},{"title":"Update ramp monitoring configuration","openapi":"openapi.yaml PUT /v1/ramp-schedules/{id}/monitoring","href":"/api/ramp-schedules/operation/updateRampScheduleMonitoring"},{"title":"Update ramp lockdown configuration","openapi":"openapi.yaml PUT /v1/ramp-schedules/{id}/lockdown","href":"/api/ramp-schedules/operation/updateRampScheduleLockdown"},{"title":"Update ramp schedule steps","openapi":"openapi.yaml PUT /v1/ramp-schedules/{id}/steps","href":"/api/ramp-schedules/operation/updateRampScheduleSteps"},{"title":"Trigger a manual monitoring update","openapi":"openapi.yaml POST /v1/ramp-schedules/{id}/actions/refresh-monitoring","href":"/api/ramp-schedules/operation/refreshMonitoringRampSchedule"},{"title":"Roll back matching ramp schedules","openapi":"openapi.yaml POST /v1/ramp-schedules/actions/rollback","href":"/api/ramp-schedules/operation/rollbackMatchingRampSchedules"},{"title":"Pause matching ramp schedules","openapi":"openapi.yaml POST /v1/ramp-schedules/actions/pause","href":"/api/ramp-schedules/operation/pauseMatchingRampSchedules"},{"title":"Get a single rampSchedule","openapi":"openapi.yaml GET /v1/ramp-schedules/{id}","href":"/api/ramp-schedules/operation/getRampSchedule"},{"title":"Update a single rampSchedule","openapi":"openapi.yaml PUT /v1/ramp-schedules/{id}","href":"/api/ramp-schedules/operation/updateRampSchedule"},{"title":"Delete a single rampSchedule","openapi":"openapi.yaml DELETE /v1/ramp-schedules/{id}","href":"/api/ramp-schedules/operation/deleteRampSchedule"}]},{"group":"Data Sources","pages":[{"title":"Get all data sources","openapi":"openapi.yaml GET /v1/data-sources","href":"/api/data-sources/operation/listDataSources"},{"title":"Get a single data source","openapi":"openapi.yaml GET /v1/data-sources/{id}","href":"/api/data-sources/operation/getDataSource"},{"title":"Get a Data Source's Information Schema","openapi":"openapi.yaml GET /v1/data-sources/{dataSourceId}/information-schema","href":"/api/data-sources/operation/getInformationSchema"},{"title":"Search warehouse tables","openapi":"openapi.yaml POST /v1/data-sources/{id}/sql/search-tables","href":"/api/data-sources/operation/searchWarehouseTables"},{"title":"Get warehouse table schemas","openapi":"openapi.yaml POST /v1/data-sources/{id}/sql/table-schema","href":"/api/data-sources/operation/getWarehouseTableSchema"},{"title":"Preview distinct column values","openapi":"openapi.yaml POST /v1/data-sources/{id}/sql/preview-values","href":"/api/data-sources/operation/previewWarehouseColumnValues"},{"title":"Execute a read-only SQL query","openapi":"openapi.yaml POST /v1/data-sources/{id}/sql/run-query","href":"/api/data-sources/operation/runSqlQuery"},{"title":"Get a single Information Schema Table by id","openapi":"openapi.yaml GET /v1/information-schema-tables/{tableId}","href":"/api/data-sources/operation/getInformationSchemaTable"}]},{"group":"Fact Tables","pages":[{"title":"Get all fact tables","openapi":"openapi.yaml GET /v1/fact-tables","href":"/api/fact-tables/operation/listFactTables"},{"title":"Create a single fact table","openapi":"openapi.yaml POST /v1/fact-tables","href":"/api/fact-tables/operation/postFactTable"},{"title":"Get a single fact table","openapi":"openapi.yaml GET /v1/fact-tables/{id}","href":"/api/fact-tables/operation/getFactTable"},{"title":"Update a single fact table","openapi":"openapi.yaml POST /v1/fact-tables/{id}","href":"/api/fact-tables/operation/updateFactTable"},{"title":"Deletes a single fact table","openapi":"openapi.yaml DELETE /v1/fact-tables/{id}","href":"/api/fact-tables/operation/deleteFactTable"},{"title":"Get all filters for a fact table","openapi":"openapi.yaml GET /v1/fact-tables/{factTableId}/filters","href":"/api/fact-tables/operation/listFactTableFilters"},{"title":"Create a single fact table filter","openapi":"openapi.yaml POST /v1/fact-tables/{factTableId}/filters","href":"/api/fact-tables/operation/postFactTableFilter"},{"title":"Get a single fact filter","openapi":"openapi.yaml GET /v1/fact-tables/{factTableId}/filters/{id}","href":"/api/fact-tables/operation/getFactTableFilter"},{"title":"Update a single fact table filter","openapi":"openapi.yaml POST /v1/fact-tables/{factTableId}/filters/{id}","href":"/api/fact-tables/operation/updateFactTableFilter"},{"title":"Deletes a single fact table filter","openapi":"openapi.yaml DELETE /v1/fact-tables/{factTableId}/filters/{id}","href":"/api/fact-tables/operation/deleteFactTableFilter"},{"title":"Create a virtual (computed) column on a fact table","openapi":"openapi.yaml POST /v1/fact-tables/{factTableId}/virtual-columns","href":"/api/fact-tables/operation/postFactTableVirtualColumn"},{"title":"Update a virtual (computed) column on a fact table","openapi":"openapi.yaml POST /v1/fact-tables/{factTableId}/virtual-columns/{id}","href":"/api/fact-tables/operation/updateFactTableVirtualColumn"},{"title":"Delete a virtual (computed) column from a fact table","openapi":"openapi.yaml DELETE /v1/fact-tables/{factTableId}/virtual-columns/{id}","href":"/api/fact-tables/operation/deleteFactTableVirtualColumn"},{"title":"Get the materialization status of a fact table's shared daily aggregated tables","openapi":"openapi.yaml GET /v1/fact-tables/{id}/aggregated-tables","href":"/api/fact-tables/operation/getAggregatedFactTables"},{"title":"Force a refresh or full restate of a fact table's shared daily aggregated tables","openapi":"openapi.yaml POST /v1/fact-tables/{id}/aggregated-tables/refresh","href":"/api/fact-tables/operation/refreshAggregatedFactTable"},{"title":"List aggregated table runs","openapi":"openapi.yaml GET /v1/fact-tables/{id}/aggregated-tables/runs","href":"/api/fact-tables/operation/listAggregatedTableRuns"},{"title":"Get a single aggregated table run","openapi":"openapi.yaml GET /v1/fact-tables/{id}/aggregated-tables/runs/{runId}","href":"/api/fact-tables/operation/getAggregatedTableRun"},{"title":"Bulk import fact tables, filters, and metrics","openapi":"openapi.yaml POST /v1/bulk-import/facts","href":"/api/fact-tables/operation/postBulkImportFacts"}]},{"group":"Fact Metrics","pages":[{"title":"Get all fact metrics","openapi":"openapi.yaml GET /v1/fact-metrics","href":"/api/fact-metrics/operation/listFactMetrics"},{"title":"Create a single fact metric","openapi":"openapi.yaml POST /v1/fact-metrics","href":"/api/fact-metrics/operation/postFactMetric"},{"title":"Get a single fact metric","openapi":"openapi.yaml GET /v1/fact-metrics/{id}","href":"/api/fact-metrics/operation/getFactMetric"},{"title":"Update a single fact metric","openapi":"openapi.yaml POST /v1/fact-metrics/{id}","href":"/api/fact-metrics/operation/updateFactMetric"},{"title":"Deletes a single fact metric","openapi":"openapi.yaml DELETE /v1/fact-metrics/{id}","href":"/api/fact-metrics/operation/deleteFactMetric"},{"title":"Create a fact metric analysis","openapi":"openapi.yaml POST /v1/fact-metrics/{id}/analysis","href":"/api/fact-metrics/operation/postFactMetricAnalysis"}]},{"group":"Metrics (legacy)","tag":"LEGACY","expanded":false,"pages":[{"title":"Get all metrics","openapi":"openapi.yaml GET /v1/metrics","href":"/api/metrics/operation/listMetrics"},{"title":"Create a single metric","openapi":"openapi.yaml POST /v1/metrics","href":"/api/metrics/operation/postMetric"},{"title":"Get a single metric","openapi":"openapi.yaml GET /v1/metrics/{id}","href":"/api/metrics/operation/getMetric"},{"title":"Update a metric","openapi":"openapi.yaml PUT /v1/metrics/{id}","href":"/api/metrics/operation/putMetric"},{"title":"Deletes a metric","openapi":"openapi.yaml DELETE /v1/metrics/{id}","href":"/api/metrics/operation/deleteMetric"},{"title":"Get results for all experiments that use a metric","openapi":"openapi.yaml GET /v1/metrics/{id}/experiments","href":"/api/metrics/operation/listMetricExperiments"}]},{"group":"Experiments","pages":[{"title":"Get all experiments","openapi":"openapi.yaml GET /v1/experiments","href":"/api/experiments/operation/listExperiments"},{"title":"Create a single experiment","openapi":"openapi.yaml POST /v1/experiments","href":"/api/experiments/operation/postExperiment"},{"title":"Get latest results for many experiments","openapi":"openapi.yaml GET /v1/experiments/results","href":"/api/experiments/operation/listExperimentResults"},{"title":"Get a single experiment","openapi":"openapi.yaml GET /v1/experiments/{id}","href":"/api/experiments/operation/getExperiment"},{"title":"Update a single experiment","openapi":"openapi.yaml POST /v1/experiments/{id}","href":"/api/experiments/operation/updateExperiment"},{"title":"Get an experiment pre-launch checklist status","openapi":"openapi.yaml GET /v1/experiments/{id}/start-checklist","href":"/api/experiments/operation/getExperimentStartChecklist"},{"title":"Get results for an experiment","openapi":"openapi.yaml GET /v1/experiments/{id}/results","href":"/api/experiments/operation/getExperimentResults"},{"title":"Start/Stage an experiment","openapi":"openapi.yaml POST /v1/experiments/{id}/start","href":"/api/experiments/operation/postExperimentStart"},{"title":"Mark manual pre-launch checklist items complete","openapi":"openapi.yaml POST /v1/experiments/{id}/start-checklist/manual/complete","href":"/api/experiments/operation/postExperimentStartChecklistManualComplete"},{"title":"Stop an experiment","openapi":"openapi.yaml POST /v1/experiments/{id}/stop","href":"/api/experiments/operation/postExperimentStop"},{"title":"Set an experiment's schedule and shipping automation","openapi":"openapi.yaml PUT /v1/experiments/{id}/schedule","href":"/api/experiments/operation/putExperimentSchedule"},{"title":"Modify temporary rollout status for a stopped experiment","openapi":"openapi.yaml POST /v1/experiments/{id}/modify-temporary-rollout","href":"/api/experiments/operation/postExperimentModifyTemporaryRollout"},{"title":"Create Experiment Snapshot","openapi":"openapi.yaml POST /v1/experiments/{id}/snapshot","href":"/api/experiments/operation/postExperimentSnapshot"},{"title":"Upload a variation screenshot","openapi":"openapi.yaml POST /v1/experiments/{id}/variation/{variationId}/screenshot/upload","href":"/api/experiments/operation/postVariationImageUpload"},{"title":"Delete a variation screenshot","openapi":"openapi.yaml DELETE /v1/experiments/{id}/variation/{variationId}/screenshot","href":"/api/experiments/operation/deleteVariationScreenshot"},{"title":"Get a list of experiments with names and ids","openapi":"openapi.yaml GET /v1/experiment-names","href":"/api/experiments/operation/getExperimentNames"},{"title":"Post a comment on an experiment","openapi":"openapi.yaml POST /v1/experiments/{id}/comment","href":"/api/experiments/operation/postExperimentComment"}]},{"group":"Namespaces","pages":[{"title":"Get all namespaces","openapi":"openapi.yaml GET /v1/namespaces","href":"/api/namespaces/operation/listNamespaces"},{"title":"Create a namespace","openapi":"openapi.yaml POST /v1/namespaces","href":"/api/namespaces/operation/postNamespace"},{"title":"Get a single namespace","openapi":"openapi.yaml GET /v1/namespaces/{id}","href":"/api/namespaces/operation/getNamespace"},{"title":"Update a namespace","openapi":"openapi.yaml PUT /v1/namespaces/{id}","href":"/api/namespaces/operation/putNamespace"},{"title":"Delete a namespace","openapi":"openapi.yaml DELETE /v1/namespaces/{id}","href":"/api/namespaces/operation/deleteNamespace"},{"title":"Get namespace membership","openapi":"openapi.yaml GET /v1/namespaces/{id}/memberships","href":"/api/namespaces/operation/getNamespaceMemberships"},{"title":"Rotate namespace seed","openapi":"openapi.yaml POST /v1/namespaces/{id}/rotateSeed","href":"/api/namespaces/operation/postNamespaceRotateSeed"}]},{"group":"Experiment Snapshots","pages":[{"title":"Get an experiment snapshot status","openapi":"openapi.yaml GET /v1/snapshots/{id}","href":"/api/snapshots/operation/getExperimentSnapshot"}]},{"group":"Dimensions","pages":[{"title":"Get all dimensions","openapi":"openapi.yaml GET /v1/dimensions","href":"/api/dimensions/operation/listDimensions"},{"title":"Create a single dimension","openapi":"openapi.yaml POST /v1/dimensions","href":"/api/dimensions/operation/postDimension"},{"title":"Get a single dimension","openapi":"openapi.yaml GET /v1/dimensions/{id}","href":"/api/dimensions/operation/getDimension"},{"title":"Update a single dimension","openapi":"openapi.yaml POST /v1/dimensions/{id}","href":"/api/dimensions/operation/updateDimension"},{"title":"Deletes a single dimension","openapi":"openapi.yaml DELETE /v1/dimensions/{id}","href":"/api/dimensions/operation/deleteDimension"}]},{"group":"Segments","pages":[{"title":"Get all segments","openapi":"openapi.yaml GET /v1/segments","href":"/api/segments/operation/listSegments"},{"title":"Create a single segment","openapi":"openapi.yaml POST /v1/segments","href":"/api/segments/operation/postSegment"},{"title":"Get a single segment","openapi":"openapi.yaml GET /v1/segments/{id}","href":"/api/segments/operation/getSegment"},{"title":"Update a single segment","openapi":"openapi.yaml POST /v1/segments/{id}","href":"/api/segments/operation/updateSegment"},{"title":"Deletes a single segment","openapi":"openapi.yaml DELETE /v1/segments/{id}","href":"/api/segments/operation/deleteSegment"}]},{"group":"Experiment Reports","pages":[{"title":"Get all reports","openapi":"openapi.yaml GET /v1/reports","href":"/api/reports/operation/listReports"},{"title":"Create a new report","openapi":"openapi.yaml POST /v1/reports","href":"/api/reports/operation/postReport"},{"title":"Get a single report","openapi":"openapi.yaml GET /v1/reports/{id}","href":"/api/reports/operation/getReport"},{"title":"Refresh a report by re-running its analysis","openapi":"openapi.yaml POST /v1/reports/{id}/refresh","href":"/api/reports/operation/postReportRefresh"},{"title":"Update report metadata (title, description, visibility)","openapi":"openapi.yaml PUT /v1/reports/{id}/metadata","href":"/api/reports/operation/putReportMetadata"},{"title":"Update report analysis settings","openapi":"openapi.yaml PUT /v1/reports/{id}/settings","href":"/api/reports/operation/putReportSettings"}]},{"group":"SDK Connections","pages":[{"title":"Get all sdk connections","openapi":"openapi.yaml GET /v1/sdk-connections","href":"/api/sdk-connections/operation/listSdkConnections"},{"title":"Create a single sdk connection","openapi":"openapi.yaml POST /v1/sdk-connections","href":"/api/sdk-connections/operation/postSdkConnection"},{"title":"Get a single sdk connection","openapi":"openapi.yaml GET /v1/sdk-connections/{id}","href":"/api/sdk-connections/operation/getSdkConnection"},{"title":"Update a single sdk connection","openapi":"openapi.yaml PUT /v1/sdk-connections/{id}","href":"/api/sdk-connections/operation/putSdkConnection"},{"title":"Deletes a single SDK connection","openapi":"openapi.yaml DELETE /v1/sdk-connections/{id}","href":"/api/sdk-connections/operation/deleteSdkConnection"},{"title":"Find a single sdk connection by its key","openapi":"openapi.yaml GET /v1/sdk-connections/lookup/{key}","href":"/api/sdk-connections/operation/lookupSdkConnectionByKey"}]},{"group":"Visual Changesets","pages":[{"title":"Get all visual changesets","openapi":"openapi.yaml GET /v1/experiments/{id}/visual-changesets","href":"/api/visual-changesets/operation/listVisualChangesets"},{"title":"Create a visual changeset for an experiment","openapi":"openapi.yaml POST /v1/experiments/{id}/visual-changesets","href":"/api/visual-changesets/operation/postVisualChangesets"},{"title":"Get a single visual changeset","openapi":"openapi.yaml GET /v1/visual-changesets/{id}","href":"/api/visual-changesets/operation/getVisualChangeset"},{"title":"Update a visual changeset","openapi":"openapi.yaml PUT /v1/visual-changesets/{id}","href":"/api/visual-changesets/operation/putVisualChangeset"},{"title":"Create a visual change for a visual changeset","openapi":"openapi.yaml POST /v1/visual-changesets/{id}/visual-change","href":"/api/visual-changesets/operation/postVisualChange"},{"title":"Update a visual change for a visual changeset","openapi":"openapi.yaml PUT /v1/visual-changesets/{id}/visual-change/{visualChangeId}","href":"/api/visual-changesets/operation/putVisualChange"}]},{"group":"Saved Groups","pages":[{"title":"Get all saved group","openapi":"openapi.yaml GET /v1/saved-groups","href":"/api/saved-groups/operation/listSavedGroups"},{"title":"Create a single saved group","openapi":"openapi.yaml POST /v1/saved-groups","href":"/api/saved-groups/operation/postSavedGroup"},{"title":"Get a single saved group","openapi":"openapi.yaml GET /v1/saved-groups/{id}","href":"/api/saved-groups/operation/getSavedGroup"},{"title":"Partially update a single saved group","openapi":"openapi.yaml POST /v1/saved-groups/{id}","href":"/api/saved-groups/operation/updateSavedGroup"},{"title":"Deletes a single saved group","openapi":"openapi.yaml DELETE /v1/saved-groups/{id}","href":"/api/saved-groups/operation/deleteSavedGroup"},{"title":"Archive a single saved group","openapi":"openapi.yaml POST /v1/saved-groups/{id}/archive","href":"/api/saved-groups/operation/archiveSavedGroup"},{"title":"Unarchive a single saved group","openapi":"openapi.yaml POST /v1/saved-groups/{id}/unarchive","href":"/api/saved-groups/operation/unarchiveSavedGroup"},{"title":"Get features, experiments, and saved groups that reference this saved group","openapi":"openapi.yaml GET /v1/saved-groups/{id}/references","href":"/api/saved-groups/operation/getSavedGroupReferences"},{"title":"List the uploads of a remote saved group","openapi":"openapi.yaml GET /v1/saved-groups/{id}/uploads","href":"/api/saved-groups/operation/listSavedGroupUploads"},{"title":"Upload a new version of a remote saved group's IDs","openapi":"openapi.yaml POST /v1/saved-groups/{id}/uploads","href":"/api/saved-groups/operation/postSavedGroupUpload"},{"title":"Get a signed URL to upload a remote saved group CSV","openapi":"openapi.yaml POST /v1/saved-groups/{id}/upload-url","href":"/api/saved-groups/operation/postSavedGroupUploadUrl"},{"title":"Report loading a remote saved group upload into a data store","openapi":"openapi.yaml POST /v1/saved-groups/{id}/uploads/{version}/loads","href":"/api/saved-groups/operation/postSavedGroupUploadLoad"},{"title":"Get one upload of a remote saved group","openapi":"openapi.yaml GET /v1/saved-groups/{id}/uploads/{version}","href":"/api/saved-groups/operation/getSavedGroupUpload"},{"title":"Delete an upload of a remote saved group","openapi":"openapi.yaml DELETE /v1/saved-groups/{id}/uploads/{version}","href":"/api/saved-groups/operation/deleteSavedGroupUpload"}]},{"group":"Saved Group Revisions","pages":[{"title":"List saved-group revisions across the organization","openapi":"openapi.yaml GET /v1/saved-groups-revisions","href":"/api/saved-group-revisions/operation/listSavedGroupRevisions"},{"title":"List revisions for a saved group","openapi":"openapi.yaml GET /v1/saved-groups-revisions/{savedGroupId}","href":"/api/saved-group-revisions/operation/getSavedGroupRevisions"},{"title":"Create a draft revision","openapi":"openapi.yaml POST /v1/saved-groups-revisions/{savedGroupId}","href":"/api/saved-group-revisions/operation/postSavedGroupRevision"},{"title":"Get the most recent active draft revision","openapi":"openapi.yaml GET /v1/saved-groups-revisions/{savedGroupId}/latest","href":"/api/saved-group-revisions/operation/getSavedGroupRevisionLatest"},{"title":"Get a single saved group revision","openapi":"openapi.yaml GET /v1/saved-groups-revisions/{savedGroupId}/{version}","href":"/api/saved-group-revisions/operation/getSavedGroupRevision"},{"title":"Update saved group metadata in a draft revision","openapi":"openapi.yaml PUT /v1/saved-groups-revisions/{savedGroupId}/{version}/metadata","href":"/api/saved-group-revisions/operation/putSavedGroupRevisionMetadata"},{"title":"Update the condition of a condition saved group draft revision","openapi":"openapi.yaml PUT /v1/saved-groups-revisions/{savedGroupId}/{version}/condition","href":"/api/saved-group-revisions/operation/putSavedGroupRevisionCondition"},{"title":"Replace the values list in a list saved group draft revision","openapi":"openapi.yaml PUT /v1/saved-groups-revisions/{savedGroupId}/{version}/values","href":"/api/saved-group-revisions/operation/putSavedGroupRevisionValues"},{"title":"Set the upload a remote saved group draft revision uses","openapi":"openapi.yaml PUT /v1/saved-groups-revisions/{savedGroupId}/{version}/upload-version","href":"/api/saved-group-revisions/operation/putSavedGroupRevisionUploadVersion"},{"title":"Stage an archive/unarchive in a draft revision","openapi":"openapi.yaml PUT /v1/saved-groups-revisions/{savedGroupId}/{version}/archive","href":"/api/saved-group-revisions/operation/putSavedGroupRevisionArchive"},{"title":"Append items to a list saved group draft revision","openapi":"openapi.yaml POST /v1/saved-groups-revisions/{savedGroupId}/{version}/items/add","href":"/api/saved-group-revisions/operation/postSavedGroupRevisionItemsAdd"},{"title":"Remove items from a list saved group draft revision","openapi":"openapi.yaml POST /v1/saved-groups-revisions/{savedGroupId}/{version}/items/remove","href":"/api/saved-group-revisions/operation/postSavedGroupRevisionItemsRemove"},{"title":"Request review for a draft revision","openapi":"openapi.yaml POST /v1/saved-groups-revisions/{savedGroupId}/{version}/request-review","href":"/api/saved-group-revisions/operation/postSavedGroupRevisionRequestReview"},{"title":"Submit a review on a draft revision","openapi":"openapi.yaml POST /v1/saved-groups-revisions/{savedGroupId}/{version}/submit-review","href":"/api/saved-group-revisions/operation/postSavedGroupRevisionSubmitReview"},{"title":"Recall a review request","openapi":"openapi.yaml POST /v1/saved-groups-revisions/{savedGroupId}/{version}/recall-review","href":"/api/saved-group-revisions/operation/postSavedGroupRevisionRecallReview"},{"title":"Reopen a discarded revision","openapi":"openapi.yaml POST /v1/saved-groups-revisions/{savedGroupId}/{version}/reopen","href":"/api/saved-group-revisions/operation/postSavedGroupRevisionReopen"},{"title":"Schedule (or cancel) a deferred publish","openapi":"openapi.yaml POST /v1/saved-groups-revisions/{savedGroupId}/{version}/schedule-publish","href":"/api/saved-group-revisions/operation/postSavedGroupRevisionSchedulePublish"},{"title":"Retract your own review verdict","openapi":"openapi.yaml POST /v1/saved-groups-revisions/{savedGroupId}/{version}/undo-review","href":"/api/saved-group-revisions/operation/postSavedGroupRevisionUndoReview"},{"title":"Get merge status for a draft revision","openapi":"openapi.yaml GET /v1/saved-groups-revisions/{savedGroupId}/{version}/merge-status","href":"/api/saved-group-revisions/operation/getSavedGroupRevisionMergeStatus"},{"title":"Rebase a draft revision onto the current live saved group","openapi":"openapi.yaml POST /v1/saved-groups-revisions/{savedGroupId}/{version}/rebase","href":"/api/saved-group-revisions/operation/postSavedGroupRevisionRebase"},{"title":"Publish a draft revision","openapi":"openapi.yaml POST /v1/saved-groups-revisions/{savedGroupId}/{version}/publish","href":"/api/saved-group-revisions/operation/postSavedGroupRevisionPublish"},{"title":"Discard a draft revision","openapi":"openapi.yaml POST /v1/saved-groups-revisions/{savedGroupId}/{version}/discard","href":"/api/saved-group-revisions/operation/postSavedGroupRevisionDiscard"},{"title":"Revert the saved group to a prior revision","openapi":"openapi.yaml POST /v1/saved-groups-revisions/{savedGroupId}/{version}/revert","href":"/api/saved-group-revisions/operation/postSavedGroupRevisionRevert"}]},{"group":"Constants","tag":"BETA","pages":[{"title":"Get all constants","openapi":"openapi.yaml GET /v1/constants","href":"/api/constants/operation/listConstants"},{"title":"Create a single constant","openapi":"openapi.yaml POST /v1/constants","href":"/api/constants/operation/postConstant"},{"title":"Get features and constants that reference this constant","openapi":"openapi.yaml GET /v1/constants/{key}/references","href":"/api/constants/operation/getConstantReferences"},{"title":"Get a single constant","openapi":"openapi.yaml GET /v1/constants/{key}","href":"/api/constants/operation/getConstant"},{"title":"Partially update a single constant","openapi":"openapi.yaml POST /v1/constants/{key}","href":"/api/constants/operation/updateConstant"},{"title":"Delete a single constant","openapi":"openapi.yaml DELETE /v1/constants/{key}","href":"/api/constants/operation/deleteConstant"},{"title":"Archive a single constant","openapi":"openapi.yaml POST /v1/constants/{key}/archive","href":"/api/constants/operation/archiveConstant"},{"title":"Unarchive a single constant","openapi":"openapi.yaml POST /v1/constants/{key}/unarchive","href":"/api/constants/operation/unarchiveConstant"}]},{"group":"Constant Revisions","tag":"BETA","pages":[{"title":"List constant revisions across the organization","openapi":"openapi.yaml GET /v1/constants-revisions","href":"/api/constant-revisions/operation/listConstantRevisions"},{"title":"List revisions for a constant","openapi":"openapi.yaml GET /v1/constants-revisions/{key}","href":"/api/constant-revisions/operation/getConstantRevisions"},{"title":"Create a draft revision","openapi":"openapi.yaml POST /v1/constants-revisions/{key}","href":"/api/constant-revisions/operation/postConstantRevision"},{"title":"Get the most recent active draft revision","openapi":"openapi.yaml GET /v1/constants-revisions/{key}/latest","href":"/api/constant-revisions/operation/getConstantRevisionLatest"},{"title":"Get a single constant revision","openapi":"openapi.yaml GET /v1/constants-revisions/{key}/{version}","href":"/api/constant-revisions/operation/getConstantRevision"},{"title":"Update constant metadata in a draft revision","openapi":"openapi.yaml PUT /v1/constants-revisions/{key}/{version}/metadata","href":"/api/constant-revisions/operation/putConstantRevisionMetadata"},{"title":"Update the value of a constant draft revision","openapi":"openapi.yaml PUT /v1/constants-revisions/{key}/{version}/value","href":"/api/constant-revisions/operation/putConstantRevisionValue"},{"title":"Stage an archive/unarchive in a draft revision","openapi":"openapi.yaml PUT /v1/constants-revisions/{key}/{version}/archive","href":"/api/constant-revisions/operation/putConstantRevisionArchive"},{"title":"Request review for a draft revision","openapi":"openapi.yaml POST /v1/constants-revisions/{key}/{version}/request-review","href":"/api/constant-revisions/operation/postConstantRevisionRequestReview"},{"title":"Submit a review on a draft revision","openapi":"openapi.yaml POST /v1/constants-revisions/{key}/{version}/submit-review","href":"/api/constant-revisions/operation/postConstantRevisionSubmitReview"},{"title":"Recall a review request","openapi":"openapi.yaml POST /v1/constants-revisions/{key}/{version}/recall-review","href":"/api/constant-revisions/operation/postConstantRevisionRecallReview"},{"title":"Reopen a discarded revision","openapi":"openapi.yaml POST /v1/constants-revisions/{key}/{version}/reopen","href":"/api/constant-revisions/operation/postConstantRevisionReopen"},{"title":"Schedule (or cancel) a deferred publish","openapi":"openapi.yaml POST /v1/constants-revisions/{key}/{version}/schedule-publish","href":"/api/constant-revisions/operation/postConstantRevisionSchedulePublish"},{"title":"Retract your own review verdict","openapi":"openapi.yaml POST /v1/constants-revisions/{key}/{version}/undo-review","href":"/api/constant-revisions/operation/postConstantRevisionUndoReview"},{"title":"Get merge status for a draft revision","openapi":"openapi.yaml GET /v1/constants-revisions/{key}/{version}/merge-status","href":"/api/constant-revisions/operation/getConstantRevisionMergeStatus"},{"title":"Rebase a draft revision onto the current live constant","openapi":"openapi.yaml POST /v1/constants-revisions/{key}/{version}/rebase","href":"/api/constant-revisions/operation/postConstantRevisionRebase"},{"title":"Publish a draft revision","openapi":"openapi.yaml POST /v1/constants-revisions/{key}/{version}/publish","href":"/api/constant-revisions/operation/postConstantRevisionPublish"},{"title":"Discard a draft revision","openapi":"openapi.yaml POST /v1/constants-revisions/{key}/{version}/discard","href":"/api/constant-revisions/operation/postConstantRevisionDiscard"},{"title":"Revert the constant to a prior revision","openapi":"openapi.yaml POST /v1/constants-revisions/{key}/{version}/revert","href":"/api/constant-revisions/operation/postConstantRevisionRevert"}]},{"group":"Configs","tag":"BETA","pages":[{"title":"Get all configs","openapi":"openapi.yaml GET /v1/configs","href":"/api/configs/operation/listConfigs"},{"title":"Create a single config","openapi":"openapi.yaml POST /v1/configs","href":"/api/configs/operation/postConfig"},{"title":"Get features and configs that reference this config","openapi":"openapi.yaml GET /v1/configs/{key}/references","href":"/api/configs/operation/getConfigReferences"},{"title":"Get the feature rules and default values implementing each key","openapi":"openapi.yaml GET /v1/configs/{key}/key-usage","href":"/api/configs/operation/getConfigKeyUsage"},{"title":"Get the full lineage (family tree) for a config","openapi":"openapi.yaml GET /v1/configs/{key}/lineage","href":"/api/configs/operation/getConfigLineage"},{"title":"Verify a config's schema against a source (drift check)","openapi":"openapi.yaml POST /v1/configs/{key}/schema/verify","href":"/api/configs/operation/verifyConfigSchema"},{"title":"Export a config's schema","openapi":"openapi.yaml GET /v1/configs/{key}/schema","href":"/api/configs/operation/getConfigSchema"},{"title":"Get a single config","openapi":"openapi.yaml GET /v1/configs/{key}","href":"/api/configs/operation/getConfig"},{"title":"Partially update a single config","openapi":"openapi.yaml POST /v1/configs/{key}","href":"/api/configs/operation/updateConfig"},{"title":"Delete a single config","openapi":"openapi.yaml DELETE /v1/configs/{key}","href":"/api/configs/operation/deleteConfig"},{"title":"Archive a single config","openapi":"openapi.yaml POST /v1/configs/{key}/archive","href":"/api/configs/operation/archiveConfig"},{"title":"Unarchive a single config","openapi":"openapi.yaml POST /v1/configs/{key}/unarchive","href":"/api/configs/operation/unarchiveConfig"},{"title":"Lock a config at its current published revision","openapi":"openapi.yaml POST /v1/configs/{key}/lock","href":"/api/configs/operation/lockConfig"},{"title":"Unlock a config","openapi":"openapi.yaml POST /v1/configs/{key}/unlock","href":"/api/configs/operation/unlockConfig"}]},{"group":"Config Revisions","tag":"BETA","pages":[{"title":"List config revisions across the organization","openapi":"openapi.yaml GET /v1/configs-revisions","href":"/api/config-revisions/operation/listConfigRevisions"},{"title":"List revisions for a config","openapi":"openapi.yaml GET /v1/configs-revisions/{key}","href":"/api/config-revisions/operation/getConfigRevisions"},{"title":"Create a draft revision","openapi":"openapi.yaml POST /v1/configs-revisions/{key}","href":"/api/config-revisions/operation/postConfigRevision"},{"title":"Get the most recent active draft revision","openapi":"openapi.yaml GET /v1/configs-revisions/{key}/latest","href":"/api/config-revisions/operation/getConfigRevisionLatest"},{"title":"Get a single config revision","openapi":"openapi.yaml GET /v1/configs-revisions/{key}/{version}","href":"/api/config-revisions/operation/getConfigRevision"},{"title":"Update config metadata in a draft revision","openapi":"openapi.yaml PUT /v1/configs-revisions/{key}/{version}/metadata","href":"/api/config-revisions/operation/putConfigRevisionMetadata"},{"title":"Update the value of a config draft revision","openapi":"openapi.yaml PUT /v1/configs-revisions/{key}/{version}/value","href":"/api/config-revisions/operation/putConfigRevisionValue"},{"title":"Set one property of a config draft revision's value","openapi":"openapi.yaml PUT /v1/configs-revisions/{key}/{version}/property","href":"/api/config-revisions/operation/putConfigRevisionProperty"},{"title":"Remove one property from a config draft revision's value","openapi":"openapi.yaml DELETE /v1/configs-revisions/{key}/{version}/property","href":"/api/config-revisions/operation/deleteConfigRevisionProperty"},{"title":"Update or import the schema of a config draft revision","openapi":"openapi.yaml PUT /v1/configs-revisions/{key}/{version}/schema","href":"/api/config-revisions/operation/putConfigRevisionSchema"},{"title":"Set (or update) a config's per-source render projection on a draft","openapi":"openapi.yaml PUT /v1/configs-revisions/{key}/{version}/projection","href":"/api/config-revisions/operation/putConfigRevisionProjection"},{"title":"Remove a config's per-source render projection on a draft","openapi":"openapi.yaml DELETE /v1/configs-revisions/{key}/{version}/projection","href":"/api/config-revisions/operation/deleteConfigRevisionProjection"},{"title":"Stage an archive/unarchive in a draft revision","openapi":"openapi.yaml PUT /v1/configs-revisions/{key}/{version}/archive","href":"/api/config-revisions/operation/putConfigRevisionArchive"},{"title":"Request review for a draft revision","openapi":"openapi.yaml POST /v1/configs-revisions/{key}/{version}/request-review","href":"/api/config-revisions/operation/postConfigRevisionRequestReview"},{"title":"Submit a review on a draft revision","openapi":"openapi.yaml POST /v1/configs-revisions/{key}/{version}/submit-review","href":"/api/config-revisions/operation/postConfigRevisionSubmitReview"},{"title":"Retract your own review verdict","openapi":"openapi.yaml POST /v1/configs-revisions/{key}/{version}/undo-review","href":"/api/config-revisions/operation/postConfigRevisionUndoReview"},{"title":"Recall a review request","openapi":"openapi.yaml POST /v1/configs-revisions/{key}/{version}/recall-review","href":"/api/config-revisions/operation/postConfigRevisionRecallReview"},{"title":"Reopen a discarded revision","openapi":"openapi.yaml POST /v1/configs-revisions/{key}/{version}/reopen","href":"/api/config-revisions/operation/postConfigRevisionReopen"},{"title":"Schedule (or cancel) a deferred publish","openapi":"openapi.yaml POST /v1/configs-revisions/{key}/{version}/schedule-publish","href":"/api/config-revisions/operation/postConfigRevisionSchedulePublish"},{"title":"Get merge status for a draft revision","openapi":"openapi.yaml GET /v1/configs-revisions/{key}/{version}/merge-status","href":"/api/config-revisions/operation/getConfigRevisionMergeStatus"},{"title":"Rebase a draft revision onto the current live config","openapi":"openapi.yaml POST /v1/configs-revisions/{key}/{version}/rebase","href":"/api/config-revisions/operation/postConfigRevisionRebase"},{"title":"Publish a draft revision","openapi":"openapi.yaml POST /v1/configs-revisions/{key}/{version}/publish","href":"/api/config-revisions/operation/postConfigRevisionPublish"},{"title":"Discard a draft revision","openapi":"openapi.yaml POST /v1/configs-revisions/{key}/{version}/discard","href":"/api/config-revisions/operation/postConfigRevisionDiscard"},{"title":"Revert the config to a prior revision","openapi":"openapi.yaml POST /v1/configs-revisions/{key}/{version}/revert","href":"/api/config-revisions/operation/postConfigRevisionRevert"}]},{"group":"Releases","tag":"BETA","pages":[{"title":"Atomically publish revisions across multiple entities","openapi":"openapi.yaml POST /v1/releases/publish-revisions","href":"/api/releases/operation/postReleasePublishRevisions"}]},{"group":"Custom Hooks","pages":[{"title":"Get all custom hooks","openapi":"openapi.yaml GET /v1/custom-hooks","href":"/api/custom-hooks/operation/listCustomHooks"},{"title":"Create a single custom hook","openapi":"openapi.yaml POST /v1/custom-hooks","href":"/api/custom-hooks/operation/postCustomHook"},{"title":"Dry-run hook code in the sandbox","openapi":"openapi.yaml POST /v1/custom-hooks/test","href":"/api/custom-hooks/operation/testCustomHook"},{"title":"Get a single custom hook","openapi":"openapi.yaml GET /v1/custom-hooks/{id}","href":"/api/custom-hooks/operation/getCustomHook"},{"title":"Partially update a single custom hook","openapi":"openapi.yaml POST /v1/custom-hooks/{id}","href":"/api/custom-hooks/operation/updateCustomHook"},{"title":"Delete a single custom hook","openapi":"openapi.yaml DELETE /v1/custom-hooks/{id}","href":"/api/custom-hooks/operation/deleteCustomHook"},{"title":"List a custom hook's version history","openapi":"openapi.yaml GET /v1/custom-hooks/{id}/history","href":"/api/custom-hooks/operation/listCustomHookHistory"},{"title":"Revert a custom hook to a previous version","openapi":"openapi.yaml POST /v1/custom-hooks/{id}/revert","href":"/api/custom-hooks/operation/revertCustomHook"}]},{"group":"Organizations","pages":[{"title":"Get all organizations (only for super admins on multi-org Enterprise Plan only)","openapi":"openapi.yaml GET /v1/organizations","href":"/api/organizations/operation/listOrganizations"},{"title":"Create a single organization (only for super admins on multi-org Enterprise Plan only)","openapi":"openapi.yaml POST /v1/organizations","href":"/api/organizations/operation/postOrganization"},{"title":"Edit a single organization (only for super admins on multi-org Enterprise Plan only)","openapi":"openapi.yaml PUT /v1/organizations/{id}","href":"/api/organizations/operation/putOrganization"}]},{"group":"Members","pages":[{"title":"Get all organization members","openapi":"openapi.yaml GET /v1/members","href":"/api/members/operation/listMembers"},{"title":"Update a member's role","openapi":"openapi.yaml POST /v1/members/{id}/role","href":"/api/members/operation/updateMemberRole"},{"title":"Removes a single user from an organization","openapi":"openapi.yaml DELETE /v1/members/{id}","href":"/api/members/operation/deleteMember"}]},{"group":"Code References","pages":[{"title":"Get list of all code references for the current organization","openapi":"openapi.yaml GET /v1/code-refs","href":"/api/code-references/operation/listCodeRefs"},{"title":"Submit list of code references","openapi":"openapi.yaml POST /v1/code-refs","href":"/api/code-references/operation/postCodeRefs"},{"title":"Get list of code references for a single feature id","openapi":"openapi.yaml GET /v1/code-refs/{id}","href":"/api/code-references/operation/getCodeRefs"}]},{"group":"Archetypes","pages":[{"title":"Get the organization's archetypes","openapi":"openapi.yaml GET /v1/archetypes","href":"/api/archetypes/operation/listArchetypes"},{"title":"Create a single archetype","openapi":"openapi.yaml POST /v1/archetypes","href":"/api/archetypes/operation/postArchetype"},{"title":"Get a single archetype","openapi":"openapi.yaml GET /v1/archetypes/{id}","href":"/api/archetypes/operation/getArchetype"},{"title":"Update a single archetype","openapi":"openapi.yaml PUT /v1/archetypes/{id}","href":"/api/archetypes/operation/putArchetype"},{"title":"Deletes a single archetype","openapi":"openapi.yaml DELETE /v1/archetypes/{id}","href":"/api/archetypes/operation/deleteArchetype"}]},{"group":"Queries","pages":[{"title":"Get a single query","openapi":"openapi.yaml GET /v1/queries/{id}","href":"/api/queries/operation/getQuery"}]},{"group":"Settings","pages":[{"title":"Get organization settings","openapi":"openapi.yaml GET /v1/settings","href":"/api/settings/operation/getSettings"},{"title":"Update approval settings","openapi":"openapi.yaml PUT /v1/settings/approvals","href":"/api/settings/operation/putApprovalSettings"}]},{"group":"Attributes","pages":[{"title":"Get the organization's attributes","openapi":"openapi.yaml GET /v1/attributes","href":"/api/attributes/operation/listAttributes"},{"title":"Create a new attribute","openapi":"openapi.yaml POST /v1/attributes","href":"/api/attributes/operation/postAttribute"},{"title":"Update an attribute","openapi":"openapi.yaml PUT /v1/attributes/{property}","href":"/api/attributes/operation/putAttribute"},{"title":"Deletes a single attribute","openapi":"openapi.yaml DELETE /v1/attributes/{property}","href":"/api/attributes/operation/deleteAttribute"}]},{"group":"Usage","pages":[{"title":"Get metric usage across experiments","openapi":"openapi.yaml GET /v1/usage/metrics","href":"/api/usage/operation/getMetricUsage"}]},{"group":"Meta","pages":[{"title":"Get the GrowthBook server version and build info","openapi":"openapi.yaml GET /v1/version","href":"/api/meta/operation/getVersion"},{"title":"Get a confirmation","openapi":"openapi.yaml GET /v1/confirmations/{id}","href":"/api/meta/operation/getConfirmation"}]},{"group":"Contextual Bandits","tag":"BETA","pages":[{"title":"Get current Contextual Bandit leaf weights and latest event","openapi":"openapi.yaml GET /v1/contextual-bandits/{id}/current","href":"/api/ContextualBandits/operation/getContextualBanditCurrentWeights"},{"title":"List Contextual Bandit snapshots","openapi":"openapi.yaml GET /v1/contextual-bandits/{id}/snapshots","href":"/api/ContextualBandits/operation/listContextualBanditSnapshots"},{"title":"Get a single Contextual Bandit snapshot","openapi":"openapi.yaml GET /v1/contextual-bandits/{id}/snapshots/{snapshotId}","href":"/api/ContextualBandits/operation/getContextualBanditSnapshot"},{"title":"List Contextual Bandit weight-update events","openapi":"openapi.yaml GET /v1/contextual-bandits/{id}/events","href":"/api/ContextualBandits/operation/listContextualBanditEvents"},{"title":"Get a single Contextual Bandit weight-update event","openapi":"openapi.yaml GET /v1/contextual-bandits/{id}/events/{eventId}","href":"/api/ContextualBandits/operation/getContextualBanditEvent"},{"title":"Get latest Contextual Bandit results","openapi":"openapi.yaml GET /v1/contextual-bandits/{id}/results","href":"/api/ContextualBandits/operation/getContextualBanditResults"},{"title":"Get Contextual Bandit run status","openapi":"openapi.yaml GET /v1/contextual-bandits/{id}/status","href":"/api/ContextualBandits/operation/getContextualBanditStatus"},{"title":"Get features linked to a Contextual Bandit","openapi":"openapi.yaml GET /v1/contextual-bandits/{id}/linked-features","href":"/api/ContextualBandits/operation/getContextualBanditLinkedFeatures"},{"title":"Link a feature to a Contextual Bandit","openapi":"openapi.yaml POST /v1/contextual-bandits/{id}/linked-feature/{featureId}","href":"/api/ContextualBandits/operation/addContextualBanditLinkedFeature"},{"title":"Replace a Contextual Bandit's rule on a linked feature","openapi":"openapi.yaml PUT /v1/contextual-bandits/{id}/linked-feature/{featureId}","href":"/api/ContextualBandits/operation/updateContextualBanditLinkedFeature"},{"title":"Unlink a feature from a Contextual Bandit","openapi":"openapi.yaml DELETE /v1/contextual-bandits/{id}/linked-feature/{featureId}","href":"/api/ContextualBandits/operation/deleteContextualBanditLinkedFeature"},{"title":"Get a single contextualBandit","openapi":"openapi.yaml GET /v1/contextual-bandits/{id}","href":"/api/ContextualBandits/operation/getContextualBandit"},{"title":"Update a single contextualBandit","openapi":"openapi.yaml PUT /v1/contextual-bandits/{id}","href":"/api/ContextualBandits/operation/updateContextualBandit"},{"title":"Get all contextualBandits","openapi":"openapi.yaml GET /v1/contextual-bandits","href":"/api/ContextualBandits/operation/listContextualBandits"},{"title":"Create a single contextualBandit","openapi":"openapi.yaml POST /v1/contextual-bandits","href":"/api/ContextualBandits/operation/createContextualBandit"},{"title":"Start a Contextual Bandit","openapi":"openapi.yaml POST /v1/contextual-bandits/{id}/start","href":"/api/ContextualBandits/operation/startContextualBandit"},{"title":"Stop a Contextual Bandit","openapi":"openapi.yaml POST /v1/contextual-bandits/{id}/stop","href":"/api/ContextualBandits/operation/stopContextualBandit"},{"title":"Trigger a Contextual Bandit snapshot refresh","openapi":"openapi.yaml POST /v1/contextual-bandits/{id}/refresh","href":"/api/ContextualBandits/operation/refreshContextualBandit"},{"title":"Add or remove Contextual Bandit variations","openapi":"openapi.yaml POST /v1/contextual-bandits/{id}/variations","href":"/api/ContextualBandits/operation/updateContextualBanditVariations"},{"title":"Cancel a running Contextual Bandit snapshot refresh","openapi":"openapi.yaml POST /v1/contextual-bandits/{id}/cancel","href":"/api/ContextualBandits/operation/cancelContextualBandit"},{"title":"List visual changesets for a Contextual Bandit","openapi":"openapi.yaml GET /v1/contextual-bandits/{id}/visual-changesets","href":"/api/ContextualBandits/operation/listContextualBanditVisualChangesets"},{"title":"Create a visual changeset for a Contextual Bandit","openapi":"openapi.yaml POST /v1/contextual-bandits/{id}/visual-changesets","href":"/api/ContextualBandits/operation/postContextualBanditVisualChangesets"}]},{"group":"Dashboards","pages":[{"title":"Get a single dashboard","openapi":"openapi.yaml GET /v1/dashboards/{id}","href":"/api/Dashboards/operation/getDashboard"},{"title":"Update a single dashboard","openapi":"openapi.yaml PUT /v1/dashboards/{id}","href":"/api/Dashboards/operation/updateDashboard"},{"title":"Delete a single dashboard","openapi":"openapi.yaml DELETE /v1/dashboards/{id}","href":"/api/Dashboards/operation/deleteDashboard"},{"title":"Get all dashboards","openapi":"openapi.yaml GET /v1/dashboards","href":"/api/Dashboards/operation/listDashboards"},{"title":"Create a single dashboard","openapi":"openapi.yaml POST /v1/dashboards","href":"/api/Dashboards/operation/createDashboard"},{"title":"Create a single dashboard","openapi":"openapi.yaml POST /v2/dashboards","href":"/api/Dashboards/operation/createDashboardV2"},{"title":"Get all dashboards for an experiment","openapi":"openapi.yaml GET /v1/dashboards/by-experiment/{experimentId}","href":"/api/Dashboards/operation/getDashboardsForExperiment"}]},{"group":"Contextual Bandit Queries","tag":"BETA","pages":[{"title":"Get a single contextualBanditQuery","openapi":"openapi.yaml GET /v1/contextual-bandit-queries/{id}","href":"/api/ContextualBanditQueries/operation/getContextualBanditQuery"},{"title":"Update a single contextualBanditQuery","openapi":"openapi.yaml PUT /v1/contextual-bandit-queries/{id}","href":"/api/ContextualBanditQueries/operation/updateContextualBanditQuery"},{"title":"Delete a single contextualBanditQuery","openapi":"openapi.yaml DELETE /v1/contextual-bandit-queries/{id}","href":"/api/ContextualBanditQueries/operation/deleteContextualBanditQuery"},{"title":"Get all contextualBanditQueries","openapi":"openapi.yaml GET /v1/contextual-bandit-queries","href":"/api/ContextualBanditQueries/operation/listContextualBanditQueries"},{"title":"Create a single contextualBanditQuery","openapi":"openapi.yaml POST /v1/contextual-bandit-queries","href":"/api/ContextualBanditQueries/operation/createContextualBanditQuery"}]},{"group":"Interleaving Experiments","pages":[{"title":"Get a single interleaving","openapi":"openapi.yaml GET /v1/interleavings/{id}","href":"/api/Interleavings/operation/getInterleaving"},{"title":"Update a single interleaving","openapi":"openapi.yaml PUT /v1/interleavings/{id}","href":"/api/Interleavings/operation/updateInterleaving"},{"title":"Get all interleavings","openapi":"openapi.yaml GET /v1/interleavings","href":"/api/Interleavings/operation/listInterleavings"},{"title":"Create a single interleaving","openapi":"openapi.yaml POST /v1/interleavings","href":"/api/Interleavings/operation/createInterleaving"},{"title":"Start an interleaving experiment","openapi":"openapi.yaml POST /v1/interleavings/{id}/start","href":"/api/Interleavings/operation/startInterleaving"},{"title":"Stop an interleaving experiment","openapi":"openapi.yaml POST /v1/interleavings/{id}/stop","href":"/api/Interleavings/operation/stopInterleaving"}]},{"group":"Custom Fields","pages":[{"title":"Get all custom fields","openapi":"openapi.yaml GET /v1/custom-fields","href":"/api/CustomFields/operation/listCustomFields"},{"title":"Create a single customField","openapi":"openapi.yaml POST /v1/custom-fields","href":"/api/CustomFields/operation/createCustomField"},{"title":"Get a single customField","openapi":"openapi.yaml GET /v1/custom-fields/{id}","href":"/api/CustomFields/operation/getCustomField"},{"title":"Update a single customField","openapi":"openapi.yaml PUT /v1/custom-fields/{id}","href":"/api/CustomFields/operation/updateCustomField"},{"title":"Delete a single customField","openapi":"openapi.yaml DELETE /v1/custom-fields/{id}","href":"/api/CustomFields/operation/deleteCustomField"}]},{"group":"Metric Groups","pages":[{"title":"Get a single metricGroup","openapi":"openapi.yaml GET /v1/metric-groups/{id}","href":"/api/MetricGroups/operation/getMetricGroup"},{"title":"Update a single metricGroup","openapi":"openapi.yaml PUT /v1/metric-groups/{id}","href":"/api/MetricGroups/operation/updateMetricGroup"},{"title":"Delete a single metricGroup","openapi":"openapi.yaml DELETE /v1/metric-groups/{id}","href":"/api/MetricGroups/operation/deleteMetricGroup"},{"title":"Get all metricGroups","openapi":"openapi.yaml GET /v1/metric-groups","href":"/api/MetricGroups/operation/listMetricGroups"},{"title":"Create a single metricGroup","openapi":"openapi.yaml POST /v1/metric-groups","href":"/api/MetricGroups/operation/createMetricGroup"}]},{"group":"Teams","pages":[{"title":"Get a single team","openapi":"openapi.yaml GET /v1/teams/{id}","href":"/api/Teams/operation/getTeam"},{"title":"Update a single team","openapi":"openapi.yaml PUT /v1/teams/{id}","href":"/api/Teams/operation/updateTeam"},{"title":"Delete a single team","openapi":"openapi.yaml DELETE /v1/teams/{id}","href":"/api/Teams/operation/deleteTeam"},{"title":"Get all teams","openapi":"openapi.yaml GET /v1/teams","href":"/api/Teams/operation/listTeams"},{"title":"Create a single team","openapi":"openapi.yaml POST /v1/teams","href":"/api/Teams/operation/createTeam"},{"title":"Add members to team","openapi":"openapi.yaml POST /v1/teams/{id}/members","href":"/api/Teams/operation/addTeamMembers"},{"title":"Remove members from team","openapi":"openapi.yaml DELETE /v1/teams/{id}/members","href":"/api/Teams/operation/removeTeamMember"}]},{"group":"Experiment Templates","pages":[{"title":"Get a single experimentTemplate","openapi":"openapi.yaml GET /v1/experiment-templates/{id}","href":"/api/ExperimentTemplates/operation/getExperimentTemplate"},{"title":"Update a single experimentTemplate","openapi":"openapi.yaml PUT /v1/experiment-templates/{id}","href":"/api/ExperimentTemplates/operation/updateExperimentTemplate"},{"title":"Delete a single experimentTemplate","openapi":"openapi.yaml DELETE /v1/experiment-templates/{id}","href":"/api/ExperimentTemplates/operation/deleteExperimentTemplate"},{"title":"Get all experimentTemplates","openapi":"openapi.yaml GET /v1/experiment-templates","href":"/api/ExperimentTemplates/operation/listExperimentTemplates"},{"title":"Create a single experimentTemplate","openapi":"openapi.yaml POST /v1/experiment-templates","href":"/api/ExperimentTemplates/operation/createExperimentTemplate"},{"title":"Bulk create or update experiment templates","openapi":"openapi.yaml POST /v1/experiment-templates/bulk-import","href":"/api/ExperimentTemplates/operation/bulkImportExperimentTemplates"}]},{"group":"Analytics Explorations","pages":[{"title":"Create a Metric based visualization","openapi":"openapi.yaml POST /v1/product-analytics/metric-exploration","href":"/api/AnalyticsExplorations/operation/postMetricExploration"},{"title":"Run a Fact Table based visualization","openapi":"openapi.yaml POST /v1/product-analytics/fact-table-exploration","href":"/api/AnalyticsExplorations/operation/postFactTableExploration"},{"title":"Create a Data Source based visualization","openapi":"openapi.yaml POST /v1/product-analytics/data-source-exploration","href":"/api/AnalyticsExplorations/operation/postDataSourceExploration"},{"title":"Create a SQL based visualization","openapi":"openapi.yaml POST /v1/product-analytics/sql-exploration","href":"/api/AnalyticsExplorations/operation/postSqlExploration"},{"title":"Run a Funnel based visualization","openapi":"openapi.yaml POST /v1/product-analytics/funnel-exploration","href":"/api/AnalyticsExplorations/operation/postFunnelExploration"},{"title":"Run a User Journey based visualization","openapi":"openapi.yaml POST /v1/product-analytics/journey-exploration","href":"/api/AnalyticsExplorations/operation/postJourneyExploration"},{"title":"Search Product Analytics resources","openapi":"openapi.yaml GET /v1/product-analytics/search","href":"/api/AnalyticsExplorations/operation/searchProductAnalyticsResources"},{"title":"List columns available to a Product Analytics exploration","openapi":"openapi.yaml GET /v1/product-analytics/columns","href":"/api/AnalyticsExplorations/operation/getProductAnalyticsColumns"},{"title":"Fetch values for Product Analytics string columns","openapi":"openapi.yaml POST /v1/product-analytics/column-values","href":"/api/AnalyticsExplorations/operation/getProductAnalyticsColumnValues"},{"title":"Get a Product Analytics exploration","openapi":"openapi.yaml GET /v1/product-analytics/explorations/{id}","href":"/api/AnalyticsExplorations/operation/getProductAnalyticsExploration"}]},{"group":"Ramp Schedule Templates","pages":[{"title":"Get a single rampScheduleTemplate","openapi":"openapi.yaml GET /v1/ramp-schedule-templates/{id}","href":"/api/RampScheduleTemplates/operation/getRampScheduleTemplate"},{"title":"Update a single rampScheduleTemplate","openapi":"openapi.yaml PUT /v1/ramp-schedule-templates/{id}","href":"/api/RampScheduleTemplates/operation/updateRampScheduleTemplate"},{"title":"Delete a single rampScheduleTemplate","openapi":"openapi.yaml DELETE /v1/ramp-schedule-templates/{id}","href":"/api/RampScheduleTemplates/operation/deleteRampScheduleTemplate"},{"title":"Get all rampScheduleTemplates","openapi":"openapi.yaml GET /v1/ramp-schedule-templates","href":"/api/RampScheduleTemplates/operation/listRampScheduleTemplates"},{"title":"Create a single rampScheduleTemplate","openapi":"openapi.yaml POST /v1/ramp-schedule-templates","href":"/api/RampScheduleTemplates/operation/createRampScheduleTemplate"}]},{"group":"Learnings","pages":[{"title":"Get a single learning","openapi":"openapi.yaml GET /v1/learnings/{id}","href":"/api/Learnings/operation/getLearning"},{"title":"Update a single learning","openapi":"openapi.yaml PUT /v1/learnings/{id}","href":"/api/Learnings/operation/updateLearning"},{"title":"Delete a single learning","openapi":"openapi.yaml DELETE /v1/learnings/{id}","href":"/api/Learnings/operation/deleteLearning"},{"title":"Get all learnings","openapi":"openapi.yaml GET /v1/learnings","href":"/api/Learnings/operation/listLearnings"},{"title":"Create a single learning","openapi":"openapi.yaml POST /v1/learnings","href":"/api/Learnings/operation/createLearning"},{"title":"Search saved Learnings by meaning rather than keyword","openapi":"openapi.yaml POST /v1/learnings/search","href":"/api/Learnings/operation/searchLearnings"}]},{"group":"Holdouts","pages":[{"title":"Get a single holdout","openapi":"openapi.yaml GET /v1/holdouts/{id}","description":null,"href":"/api/Holdouts/operation/getHoldout"},{"title":"Update a single holdout","openapi":"openapi.yaml PUT /v1/holdouts/{id}","href":"/api/Holdouts/operation/updateHoldout"},{"title":"Get all holdouts","openapi":"openapi.yaml GET /v1/holdouts","description":null,"href":"/api/Holdouts/operation/listHoldouts"},{"title":"Create a single holdout","openapi":"openapi.yaml POST /v1/holdouts","href":"/api/Holdouts/operation/createHoldout"},{"title":"Start the Holdout's Active Period","openapi":"openapi.yaml POST /v1/holdouts/{id}/start","href":"/api/Holdouts/operation/startHoldout"},{"title":"Start the Holdout's Analysis Period","openapi":"openapi.yaml POST /v1/holdouts/{id}/start-analysis","href":"/api/Holdouts/operation/startHoldoutAnalysis"},{"title":"Stop a Holdout","openapi":"openapi.yaml POST /v1/holdouts/{id}/stop","href":"/api/Holdouts/operation/stopHoldout"}]},{"group":"Auto Runs","pages":[{"title":"Get all autoRuns","openapi":"openapi.yaml GET /v1/auto-runs","href":"/api/AutoRuns/operation/listAutoRuns"},{"title":"Create a single autoRun","openapi":"openapi.yaml POST /v1/auto-runs","href":"/api/AutoRuns/operation/createAutoRun"},{"title":"Get a single autoRun","openapi":"openapi.yaml GET /v1/auto-runs/{id}","href":"/api/AutoRuns/operation/getAutoRun"},{"title":"Update a single autoRun","openapi":"openapi.yaml PUT /v1/auto-runs/{id}","href":"/api/AutoRuns/operation/updateAutoRun"},{"title":"Record something an auto run created","openapi":"openapi.yaml POST /v1/auto-runs/{id}/artifacts","href":"/api/AutoRuns/operation/appendAutoRunArtifact"}]},{"group":"Populations","tag":"BETA","pages":[{"title":"Get all populations","openapi":"openapi.yaml GET /v1/populations","href":"/api/Populations/operation/listPopulations"},{"title":"Create a single population","openapi":"openapi.yaml POST /v1/populations","href":"/api/Populations/operation/createPopulation"},{"title":"Get a single population","openapi":"openapi.yaml GET /v1/populations/{id}","href":"/api/Populations/operation/getPopulation"},{"title":"Update a single population","openapi":"openapi.yaml PUT /v1/populations/{id}","href":"/api/Populations/operation/updatePopulation"},{"title":"Delete a single population","openapi":"openapi.yaml DELETE /v1/populations/{id}","href":"/api/Populations/operation/deletePopulation"}]}]},{"group":"Models","pages":[{"title":"Aggregated Fact Table","href":"/api/AggregatedFactTable_model"},{"title":"Analytics Exploration","href":"/api/AnalyticsExploration_model"},{"title":"Archetype","href":"/api/Archetype_model"},{"title":"Attribute","href":"/api/Attribute_model"},{"title":"Auto Run","href":"/api/AutoRun_model"},{"title":"Code Ref","href":"/api/CodeRef_model"},{"title":"Config","href":"/api/Config_model"},{"title":"Config Key Usage","href":"/api/ConfigKeyUsage_model"},{"title":"Config Lineage","href":"/api/ConfigLineage_model"},{"title":"Config References","href":"/api/ConfigReferences_model"},{"title":"Config Revision","href":"/api/ConfigRevision_model"},{"title":"Config Revision Activity Log Entry","href":"/api/ConfigRevisionActivityLogEntry_model"},{"title":"Config Revision Ref","href":"/api/ConfigRevisionRef_model"},{"title":"Config Revision Review","href":"/api/ConfigRevisionReview_model"},{"title":"Config Schema Export","href":"/api/ConfigSchemaExport_model"},{"title":"Config Schema Source","href":"/api/ConfigSchemaSource_model"},{"title":"Config Schema Verify","href":"/api/ConfigSchemaVerify_model"},{"title":"Config Schema Warning","href":"/api/ConfigSchemaWarning_model"},{"title":"Confirmation","href":"/api/Confirmation_model"},{"title":"Confirmation Held","href":"/api/ConfirmationHeld_model"},{"title":"Constant","href":"/api/Constant_model"},{"title":"Constant References","href":"/api/ConstantReferences_model"},{"title":"Constant Revision","href":"/api/ConstantRevision_model"},{"title":"Constant Revision Activity Log Entry","href":"/api/ConstantRevisionActivityLogEntry_model"},{"title":"Constant Revision Ref","href":"/api/ConstantRevisionRef_model"},{"title":"Constant Revision Review","href":"/api/ConstantRevisionReview_model"},{"title":"Contextual Bandit","href":"/api/ContextualBandit_model"},{"title":"Contextual Bandit Query","href":"/api/ContextualBanditQuery_model"},{"title":"Custom Field","href":"/api/CustomField_model"},{"title":"Custom Hook","href":"/api/CustomHook_model"},{"title":"Dashboard","href":"/api/Dashboard_model"},{"title":"Data Source","href":"/api/DataSource_model"},{"title":"Dimension","href":"/api/Dimension_model"},{"title":"Environment","href":"/api/Environment_model"},{"title":"Event User","href":"/api/EventUser_model"},{"title":"Experiment","href":"/api/Experiment_model"},{"title":"Experiment Rule","href":"/api/Experiment Rule_model"},{"title":"Experiment Analysis Settings","href":"/api/ExperimentAnalysisSettings_model"},{"title":"Experiment Decision Framework Settings","href":"/api/ExperimentDecisionFrameworkSettings_model"},{"title":"Experiment Metric","href":"/api/ExperimentMetric_model"},{"title":"Experiment Metric Override Entry","href":"/api/ExperimentMetricOverrideEntry_model"},{"title":"Experiment Results","href":"/api/ExperimentResults_model"},{"title":"Experiment Snapshot","href":"/api/ExperimentSnapshot_model"},{"title":"Experiment Template","href":"/api/ExperimentTemplate_model"},{"title":"Experiment With Enhanced Status","href":"/api/ExperimentWithEnhancedStatus_model"},{"title":"Fact Metric","href":"/api/FactMetric_model"},{"title":"Fact Table","href":"/api/FactTable_model"},{"title":"Fact Table Column","href":"/api/FactTableColumn_model"},{"title":"Fact Table Filter","href":"/api/FactTableFilter_model"},{"title":"Feature Base Rule","href":"/api/FeatureBaseRule_model"},{"title":"Feature Contextual Bandit Ref Rule","href":"/api/FeatureContextualBanditRefRule_model"},{"title":"Feature Definition","href":"/api/FeatureDefinition_model"},{"title":"Feature Environment V1","href":"/api/FeatureEnvironmentV1_model"},{"title":"Feature Environment V2","href":"/api/FeatureEnvironmentV2_model"},{"title":"Feature Experiment Ref Rule","href":"/api/FeatureExperimentRefRule_model"},{"title":"Feature Experiment Rule","href":"/api/FeatureExperimentRule_model"},{"title":"Feature Force Rule","href":"/api/FeatureForceRule_model"},{"title":"Feature Revision Ref","href":"/api/FeatureRevisionRef_model"},{"title":"Feature Revision Summary","href":"/api/FeatureRevisionSummary_model"},{"title":"Feature Revision V1","href":"/api/FeatureRevisionV1_model"},{"title":"Feature Revision V2","href":"/api/FeatureRevisionV2_model"},{"title":"Feature Rollout Rule","href":"/api/FeatureRolloutRule_model"},{"title":"Feature Rule V1","href":"/api/FeatureRuleV1_model"},{"title":"Feature Rule V2","href":"/api/FeatureRuleV2_model"},{"title":"Feature Safe Rollout Rule","href":"/api/FeatureSafeRolloutRule_model"},{"title":"Feature V1","href":"/api/FeatureV1_model"},{"title":"Feature V2","href":"/api/FeatureV2_model"},{"title":"Feature With Revisions V1","href":"/api/FeatureWithRevisionsV1_model"},{"title":"Feature With Revisions V2","href":"/api/FeatureWithRevisionsV2_model"},{"title":"Holdout","href":"/api/Holdout_model"},{"title":"Information Schema","href":"/api/InformationSchema_model"},{"title":"Information Schema Table","href":"/api/InformationSchemaTable_model"},{"title":"Interleaving","href":"/api/Interleaving_model"},{"title":"Learning","href":"/api/Learning_model"},{"title":"Lookback Override","href":"/api/LookbackOverride_model"},{"title":"Member","href":"/api/Member_model"},{"title":"Metric","href":"/api/Metric_model"},{"title":"Metric Analysis","href":"/api/MetricAnalysis_model"},{"title":"Metric Group","href":"/api/MetricGroup_model"},{"title":"Metric Usage","href":"/api/MetricUsage_model"},{"title":"Namespace","href":"/api/Namespace_model"},{"title":"Namespace Experiment Member","href":"/api/NamespaceExperimentMember_model"},{"title":"Organization","href":"/api/Organization_model"},{"title":"Pagination Fields","href":"/api/PaginationFields_model"},{"title":"Population","href":"/api/Population_model"},{"title":"Project","href":"/api/Project_model"},{"title":"Query","href":"/api/Query_model"},{"title":"Ramp Schedule","href":"/api/RampSchedule_model"},{"title":"Ramp Schedule Template","href":"/api/RampScheduleTemplate_model"},{"title":"Report","href":"/api/Report_model"},{"title":"Require Review Rule","href":"/api/RequireReviewRule_model"},{"title":"Require Review Rule Input","href":"/api/RequireReviewRuleInput_model"},{"title":"Revision Id Ref","href":"/api/RevisionIdRef_model"},{"title":"Safe Rollout Rule","href":"/api/Safe Rollout Rule_model"},{"title":"Saved Group","href":"/api/SavedGroup_model"},{"title":"Saved Group Approval Rule","href":"/api/SavedGroupApprovalRule_model"},{"title":"Saved Group Reference Resource","href":"/api/SavedGroupReferenceResource_model"},{"title":"Saved Group References","href":"/api/SavedGroupReferences_model"},{"title":"Saved Group Revision","href":"/api/SavedGroupRevision_model"},{"title":"Saved Group Revision Activity Log Entry","href":"/api/SavedGroupRevisionActivityLogEntry_model"},{"title":"Saved Group Revision Ref","href":"/api/SavedGroupRevisionRef_model"},{"title":"Saved Group Revision Review","href":"/api/SavedGroupRevisionReview_model"},{"title":"Saved Group Upload","href":"/api/SavedGroupUpload_model"},{"title":"Schedule Rule","href":"/api/ScheduleRule_model"},{"title":"Scheduled Stop Plan","href":"/api/ScheduledStopPlan_model"},{"title":"Sdk Connection","href":"/api/SdkConnection_model"},{"title":"Segment","href":"/api/Segment_model"},{"title":"Settings","href":"/api/Settings_model"},{"title":"Targeting Rule","href":"/api/Targeting Rule_model"},{"title":"Targeting Review Rule","href":"/api/TargetingReviewRule_model"},{"title":"Team","href":"/api/Team_model"},{"title":"Visual Change","href":"/api/VisualChange_model"},{"title":"Visual Changeset","href":"/api/VisualChangeset_model"},{"title":"Visual Editor Cb Experiment Stub","href":"/api/VisualEditorCbExperimentStub_model"}]}]}]},"title":"Update a single holdout - GrowthBook Documentation","buildId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","deploymentId":"dpl_2xiSHD9XEvLsPGPcfoMtkLTB3dy9","dynamics":["10e4515597","c2aa737661","b0f84f53ff","a9bb46feb3","2b790eda92"],"chunks":["BannerMarkdown-B-Glu166.js","dist-zbf22OZA.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-Cs6nMGht.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","OpenApiReferenceProvider-DmVyH30O.js","utils-BHQqGGOd.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-CD-E4BIt.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Bp5Lq9Ds.js","snippetPresets-C4xAVCFP.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","Page-CBCH2P7b.js","ApiExamples-CgXVLxUC.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BF8I5oUf.js","shallow-Byd0lWnC.js","getApiPlaygroundDisplay-BGOZG1OK.js","CodeSnippet-CpvQL0CY.js","CodeSnippets-B8wkBKXa.js","getPastedJson-Ry3scI3Y.js","icon-D7a9HcdD.js","MethodPill-CJ8pmHhz.js","DuplicateIcon-rh1HJF0t.js","createIcon-DvGznqYs.js","DynamicMarkdown-Cc6AuSHS.js","SectionHeading-B4A0S-ep.js","axios-vUo_bRtp.js","Markdown-Cc16CX65.js","AssistantPageLink-C_fs-y5n.js"]}