Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
123 commits
Select commit Hold shift + click to select a range
a3d9c0c
Added information about sampling of visitors in performance graph
chris-absmartly Jan 13, 2025
d70471b
Fixed image
chris-absmartly Jan 13, 2025
ecaa002
added new image path
chris-absmartly Jan 13, 2025
760e6a1
add new experiment create article
chris-absmartly Jan 14, 2025
fb530d0
feat: add release notes section
calthejuggler Jun 18, 2025
919ddb4
2025 july release notes (#232)
chris-absmartly Jul 7, 2025
129ac43
added managing team entry in wiki
chris-absmartly Jun 2, 2025
f551752
Fixed a few typos
chris-absmartly Jun 2, 2025
d95a5a0
and more typos
chris-absmartly Jun 2, 2025
52c5641
change file name to refect the H1
chris-absmartly Jun 2, 2025
3b850e1
Initial version, no screenshot
chris-absmartly Oct 30, 2025
ce4e8d5
typo
chris-absmartly Oct 31, 2025
a11f63b
added images
chris-absmartly Oct 31, 2025
6ee389f
typo and image links
chris-absmartly Oct 31, 2025
e493d91
add hero image
chris-absmartly Oct 31, 2025
3fa6758
new install guide for launchPad
chris-absmartly Nov 3, 2025
493ebe5
Fix LaunchPad installation docs and add DOM Changes SDK plugin section
Nov 3, 2025
36d8d58
Update Chrome Web Store screenshot to landscape resolution (1920x1080)
Nov 3, 2025
574f168
Add direct link to Chrome Web Store and update screenshot
Nov 3, 2025
520f3f0
Added setup guide for Chrome Extension
chris-absmartly Nov 3, 2025
49d84e1
fix path to image folder
chris-absmartly Nov 4, 2025
9e24e4a
I fixed the path in the wrong file
chris-absmartly Nov 4, 2025
ce5487e
New events documentation
chris-absmartly Nov 14, 2025
0dd9bd8
Added missing images
chris-absmartly Nov 14, 2025
e3b0d54
Fixed typocs and removed all files + images
chris-absmartly Nov 14, 2025
6ead4ae
Added Applications and Units pages in Configuration
chris-absmartly Nov 14, 2025
5694a53
Fix broekn paths to settings
chris-absmartly Nov 14, 2025
6fc463f
Added Teams & Users
chris-absmartly Nov 14, 2025
21f404f
more broken links
chris-absmartly Nov 14, 2025
11a067b
and again
chris-absmartly Nov 14, 2025
923262c
add new KB folders for metric, experiments and FF
chris-absmartly Nov 14, 2025
61653ff
broken link to metric pages
chris-absmartly Nov 14, 2025
b1f2106
added goals & metrics pages
chris-absmartly Nov 17, 2025
b8b4e29
fixed broken links
chris-absmartly Nov 17, 2025
f5cffc2
fix typo
chris-absmartly Nov 17, 2025
f059e50
Merged metric groups into overview
chris-absmartly Nov 18, 2025
9c7f5cf
added Metrics overview
chris-absmartly Nov 18, 2025
31e51f5
added some of the metrics type
chris-absmartly Nov 18, 2025
08798db
added metric metadata
chris-absmartly Nov 20, 2025
23f5aef
Fixed path to settings
chris-absmartly Nov 20, 2025
96169bf
Attempt to explain goal ownership and permissions
chris-absmartly Nov 20, 2025
5f8ef72
one more broken link
chris-absmartly Nov 20, 2025
9f26644
again
chris-absmartly Nov 20, 2025
555c0ff
Added outliers and metrics filters
chris-absmartly Nov 21, 2025
dea935e
fixed some formating issues
chris-absmartly Nov 21, 2025
47b74a5
added goal relations draft
chris-absmartly Nov 21, 2025
327cd6e
added goal relations images + alert thresholds
chris-absmartly Nov 21, 2025
07018c0
added formating information
chris-absmartly Nov 21, 2025
1bfe05e
added image to support formatting
chris-absmartly Nov 21, 2025
9d78f1a
Outliers are capped and not excluded
chris-absmartly Nov 21, 2025
1510a7f
added versioning info
chris-absmartly Nov 21, 2025
f7f6379
added metrics ownership and versionsioning info
chris-absmartly Nov 24, 2025
c51ed44
added new metric type pages
chris-absmartly Nov 24, 2025
33a0212
move experiments pages to dedicated folder. I expect many broken links
chris-absmartly Nov 24, 2025
a703446
fixed broken links
chris-absmartly Nov 24, 2025
763ae65
added experiment overview
chris-absmartly Nov 24, 2025
9c6569f
added GT and Fixed Horizon info
chris-absmartly Nov 24, 2025
42a631f
added oermissions
chris-absmartly Nov 24, 2025
db7ef86
added Launchpad info
chris-absmartly Nov 24, 2025
cabbd3c
broken link to images
chris-absmartly Nov 24, 2025
9f66d1e
Added Users, Teams & Roles entries
chris-absmartly Nov 24, 2025
78480fd
added team info
chris-absmartly Nov 24, 2025
123a72d
reordered the menu
chris-absmartly Nov 25, 2025
d859fa6
updated navigation
chris-absmartly Nov 25, 2025
97186bf
fix issue with index
chris-absmartly Nov 25, 2025
96c5b3e
create API & SDK folder
chris-absmartly Nov 28, 2025
ede692e
even better structure
chris-absmartly Nov 28, 2025
16ce167
broken links to SSO
chris-absmartly Nov 28, 2025
6e3ac86
fix link to SDK documentation
chris-absmartly Nov 28, 2025
d476a83
Some more broken links to sdk doc
chris-absmartly Nov 28, 2025
18383ed
move auto-generated content to the correct place
chris-absmartly Nov 28, 2025
f5df198
fix links to SDK-API
chris-absmartly Nov 28, 2025
82e5b25
and again
chris-absmartly Nov 28, 2025
d15f0c3
add get started guide
chris-absmartly Nov 28, 2025
431204c
workding change get started
chris-absmartly Nov 28, 2025
c324589
try home page redirect
chris-absmartly Nov 28, 2025
55ab32c
that did not work
chris-absmartly Nov 28, 2025
725d9b4
again
chris-absmartly Nov 28, 2025
49cd9fe
and that?
chris-absmartly Nov 28, 2025
005d4ff
use relative path
chris-absmartly Nov 28, 2025
52094c7
added get started guide
chris-absmartly Dec 1, 2025
65b6bf0
added link to SDKs doc in header
chris-absmartly Dec 1, 2025
a61219e
added links to get started guide
chris-absmartly Dec 1, 2025
3ad8cb9
typo in link
chris-absmartly Dec 1, 2025
65cc715
link to SDK
chris-absmartly Dec 1, 2025
37858ab
stil ldoes not work
chris-absmartly Dec 1, 2025
f725d10
rename landing to overview
chris-absmartly Dec 1, 2025
2ba0706
added more link to get started guide
chris-absmartly Dec 1, 2025
e3ba49a
added teams documentation
chris-absmartly Dec 1, 2025
f505793
some typo in Team
chris-absmartly Dec 1, 2025
cec955c
added glossary
chris-absmartly Dec 2, 2025
ebc34d4
A and B in glossary
chris-absmartly Dec 2, 2025
6528302
new C entries
chris-absmartly Dec 2, 2025
1c9018f
try better formatting
chris-absmartly Dec 2, 2025
9a8835d
E and F
chris-absmartly Dec 2, 2025
280b1e3
broken anchor
chris-absmartly Dec 2, 2025
9ad0a6a
forgot another anchor
chris-absmartly Dec 2, 2025
950c184
broken external link
chris-absmartly Dec 2, 2025
09401ea
G and H
chris-absmartly Dec 5, 2025
a4f24f5
M
chris-absmartly Dec 5, 2025
823109f
N, O
chris-absmartly Dec 5, 2025
7b86355
Added some more entried to the glossary
chris-absmartly Dec 12, 2025
11cc26a
fixed some typo
chris-absmartly Dec 12, 2025
191569d
Added missing images
chris-absmartly Dec 19, 2025
3dc59b9
P, Q, R, S
chris-absmartly Dec 19, 2025
bc0201b
done
chris-absmartly Dec 19, 2025
807b977
typos
chris-absmartly Dec 19, 2025
0d63d95
more typos
chris-absmartly Dec 19, 2025
e376907
and more
chris-absmartly Dec 19, 2025
b2398a2
feat: add hybrid redirect system for URL structure changes
joalves Jan 7, 2026
e90ab48
small typo
chris-absmartly Jan 9, 2026
689f7f1
fix: add trailing slashes and missing anchor redirects
joalves Jan 9, 2026
faf0a56
debug: add console logging to anchor redirects
joalves Jan 9, 2026
74b25b0
feat: add comprehensive anchor redirects for old and new paths
joalves Jan 9, 2026
a856afe
fix: remove duplicate _category_ copy.json files
joalves Jan 13, 2026
45eeaf3
fix: address all 23 PR review comments
joalves Jan 14, 2026
666c96c
fix: correct GST experiment redirect and optimize anchor redirects
joalves Jan 14, 2026
9e122f8
test: update redirect test script with all 28 URL mappings
joalves Jan 14, 2026
6d7922a
test: add comprehensive URL testing script for all ~223 URLs
joalves Jan 14, 2026
7e1c8da
chore: add openapi_console_bk to gitignore
joalves Jan 14, 2026
99e1733
feat: add comprehensive redirects for all 23 renamed MDX files
joalves Jan 14, 2026
ac7a2c2
feat: add --only-failed flag to URL testing script
joalves Jan 14, 2026
7961134
fix: address final 2 PR review comments
joalves Jan 15, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
7 changes: 5 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,9 +7,9 @@
# Generated files
.docusaurus
.cache-loader
/docs/SDK-API/*.mdx
/docs/APIs-and-SDKs/SDK-API*.mdx
/docs/Web-Console-API/*.mdx
/docs/SDK-API/*.js
/docs/APIs-and-SDKs/SDK-API*.js
/docs/Web-Console-API/*.js

# Misc
Expand All @@ -24,3 +24,6 @@ npm-debug.log*
yarn-debug.log*
yarn-error.log*
.idea
.claude/tasks/
.claude/audits/
openapi_console_bk/
Binary file added .playwright-mcp/chrome-webstore-launchpad.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
25 changes: 25 additions & 0 deletions docs/APIs-and-SDKs/SDK-API/absmartly-collector-api.info.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
---
id: absmartly-collector-api
title: "ABsmartly Collector API"
description: "An OpenAPI Specification that describes the ABsmartly Collector API. This API is mainly used when using ABsmartly in a language that does not yet have a supported SDK."
sidebar_label: Introduction
sidebar_position: 0
hide_title: true
custom_edit_url: null
---

import ApiLogo from "@theme/ApiLogo";
import SchemaTabs from "@theme/SchemaTabs";
import TabItem from "@theme/TabItem";
import Export from "@theme/ApiExplorer/Export";

<span className={"theme-doc-version-badge badge badge--secondary"}>Version: 1.0.0</span>

<h1 className={"openapi__heading"}>ABsmartly Collector API</h1>



An OpenAPI Specification that describes the ABsmartly Collector API. This API is mainly used when using ABsmartly in a language that does not yet have a supported SDK.

<div style={{"marginBottom":"2rem"}}><h2 id={"authentication"} style={{"marginBottom":"1rem"}}>Authentication</h2><SchemaTabs className={"openapi-tabs__security-schemes"}><TabItem label={"API Key: ApiKey"} value={"ApiKey"}><div><table><tbody><tr><th>Security Scheme Type:</th><td>apiKey</td></tr><tr><th>Header parameter name:</th><td>X-API-Key</td></tr></tbody></table></div></TabItem></SchemaTabs></div><div style={{"display":"flex","flexDirection":"column","marginBottom":"var(--ifm-paragraph-margin-bottom)"}}><h3 style={{"marginBottom":"0.25rem"}}>Contact</h3><span>API Support: <a href={"mailto:api@absmartly.com"}>api@absmartly.com</a></span></div><div style={{"marginBottom":"var(--ifm-paragraph-margin-bottom)"}}><h3 style={{"marginBottom":"0.25rem"}}>License</h3></div>

44 changes: 44 additions & 0 deletions docs/APIs-and-SDKs/SDK-API/collector-health-check.api.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
id: collector-health-check
title: "Check Service Health"
description: "A GET request to check that the service is running as expected."
sidebar_label: "Check Service Health"
hide_title: true
hide_table_of_contents: true
api: eJytU02L2zAQ/SvDnL1OttCLT3W3yzbsoYGkUAg5TOTZSNSWFGmcxhj/9yLbIWlLe+rJ8ui9+Xjz1KPQMWKxQ+XqmpW4gPsMK44qGC/GWSywhJfnLQQ+tRwFxIHSrL6DaBIQzRA5nI1iMBFCa62xR6AIfPGshKscM3SeA6VsqwqLW6nPTLXop5QNMwwcvbORIxY9vlsu0+fXRjYczhxSHT0yOxwyfP9vpHVyQw8ZNizapS6OLJihJ9FY4OIKyTCO1KRJj22osUAt4mOxWESy1cFdcjrEhoLUXW7c4vyIwz6xVBuMdCOt9OaV03F/f7VRmptpuiugR+k8Y4E0BTK01KT/bw/levUwhUwaSDNVHEaVTq0JXGEhoeU0kbFvbkxlpE7c8uPcHjxdhYZyvcIM01yTPo/5Ml/iH4u28MWzLdcr2HhW5s2ocWvTqifsgeO49L9UyWGrTUynJH5DxtYdtJEr+KHZQhuTO25cY4GgJnts6chzGcfT1joW0HRmIIit9y4IV7D59JoMpZwVUpLGnhUbm55gmCE3ZOpJ1w+3dSnXJMfURrGNfEdeB+eDYaEwmcS7KA3ZO8RoUtjMTp+M+7t+/dgWW/kvb2Z2hvBFFr4mY1ProyH72bU7vLp2n6F2UVKo7w8U+WuohyGFTy2H0YkZnikYOiSL7Pb3D+HleYvD8BN8TGJM
sidebar_class_name: "get api-method"
info_path: docs/APIs-and-SDKs/SDK-API/absmartly-collector-api
custom_edit_url: null
---

import ApiTabs from "@theme/ApiTabs";
import DiscriminatorTabs from "@theme/DiscriminatorTabs";
import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import SecuritySchemes from "@theme/ApiExplorer/SecuritySchemes";
import MimeTabs from "@theme/MimeTabs";
import ParamsItem from "@theme/ParamsItem";
import ResponseSamples from "@theme/ResponseSamples";
import SchemaItem from "@theme/SchemaItem";
import SchemaTabs from "@theme/SchemaTabs";
import Markdown from "@theme/Markdown";
import OperationTabs from "@theme/OperationTabs";
import TabItem from "@theme/TabItem";

<h1 className={"openapi__heading"}>Check Service Health</h1>

<MethodEndpoint method={"get"} path={"/healthy"}></MethodEndpoint>



A GET request to check that the service is running as expected.

<div><div><ApiTabs label={undefined} id={undefined}><TabItem label={"200"} value={"200"}><div>

Server is healthy

</div><div></div></TabItem><TabItem label={"500"} value={"500"}><div>

Server is not healthy

</div><div></div></TabItem></ApiTabs></div></div>

66 changes: 66 additions & 0 deletions docs/APIs-and-SDKs/SDK-API/context-create.api.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
---
id: context-create
title: "Create a Context"
description: "A POST request for creating a new context and assigning variants to your users."
sidebar_label: "Create a Context"
hide_title: true
hide_table_of_contents: true
api: eJztWF9v2zYQ/yoEnzZAie3YcxI9zU37kHXDgibpBsRBe5JOEluJVEnKsWf4uw9HypbcuF7mpigGLA+JQt4df/f/yCW3kBke3vFYSYtzy+8DnqCJtaisUJKHfMKufr++YRo/1WgsS5VmsUawQmYMmMQH1rAykAkDY0QmaW8GWoC0hlnFFqrWrDaozTEPuKpQA0m/THi4PviCZCIPeAUaSrSoCdaSSyiRh/zPo0mG0vKACwKVIySoecAJltCY8NDqGj/HfpMjuzWoPTNTqUdy/fI14cA5lFVB0iEyJWhbLI5+gRkcXb98zWaD4/7xgAfcxDmWwMMlt4uKiI3VQmZ8tQo66F7JmdBKlodhxJabCckechHnBJWBRqZr6QzqoOO8Qi2I0ByzmxwNshgki5Clqib7y8S7BxOS5HgmLxrt2B8YsQsljSqQGbTkQ7NtiQRnWKiq0eNpuk+qqhCx8+gBukPL/Z11f3h4OETno7eozdfrPvNSnmgApuQW+P4O4EJazBySVOkSrF8aj/hqde/RobEvVLIgnv1gb6WwhiVgwRUAj9GqxtzM5rhVBZrcb6pB4zGSwQia+Wq3TeVUvn///oNRciqXU8nY1Ck95SGbcio070Qy5azXozhh5DVKfoJZr1F4rproiGkEo5PT8TiG8XAwTE7G6ej8/OwnPD0/T9NROjw976fR2RhT6KcxjsaYREOEszRKBwjDUf+sPW0GRf3ZcTnYjUethvijkNnxVK6cFlOKHGc9ackTnaDokYa09si3KvqAsd0KsjtOhxmq4JWmGmsFGmLxyy0vaA0LilaLpfknmW7vkUjP8XmKdJOpcQJfBWTjXbSlkL+izGzOw0HAS5iv/xuP+l1JX+sZylxuhXXCKAj5qrty4eP2jU8H2luRBUylpPHKnvT79Gc7I67rOEZjntd1Ae9kzP+OfIIjty12oGlE4in1uoe5Mh/wpoyROQqRiahA7+5UZI8tuWWb3aV3eOKtJcq6dCV7Y5vhqgvgcDknqwb8XpfivHoXgZSo38WqUJp8u9b1X59dwtx/D05OO4cMVh2rtUIjpQoE2YVD/Yb8WCcCZYy/CVOCjfP9TCkUhriUFpmQULz9BvAbT+8wpayLAqIN+E5Yvtq06MkmLr9Qb3yFaQrOaFeNeQHJeu5+rjoTq4SCuERjINtRD9z+U0aIVsauSam1h9YUX42Og8c63kqoba60+AtdjUkwhbqwuwhp/IlpSkAn9D9vEcdhc0W3oEo5H1dAdZP31rexgBvUs/VdqNYFzZfWVibs9QzIJFLz483l5Vio3mzAabgzGNda2IVjm1TiNdLnfXfrmqzjVVwTtNXTLwSdeffq8sgv7ZtxSSWy/pt2tny1zqhN+7rbHLNuLU1neYYGcU91VKbK6dIYvJ0lL1RRYGyVZpOrS6rvzeAecrrs9fmjq69kv1coJ1eX7LrCWKTrWd0NdJ42QuMGvS+cQhcVYeiLCcNKELJY0E04YQ85SlYbGu5bXiEZsAJkVkOGzTEKDZPKsgValsMMGTBTV5XSlArNVZbiBWKXCY3LHGhPRnWzBFF4x/7cxkusSgrbQsRIlahlvtKq0gIt6IWLXYrOEmSHwl/XGbCLTaRu2W7ZJuc3eEFo4od4elUBQrrphLJj2aTQ1oNGTskV3vHlMgKDt7pYrWj5U43apUXT/VxBv6MQasKbQjURhjaSpuXsUfOHN00u/Mj2vzvsRP+RErDzzOFuETzknK6dB4P43g8Le1XdfjN5HoW/92vCft9uPZQ8v8IHPSE8FXHnmWMLuSe98PiObkhaS/GoLbcckzjGyu6lve80SCohPOBR81xRuq7MNdCTDf0O+ZRPuXtdJAmur7n1JV/XUx5yL5d+/gYMTisZ
sidebar_class_name: "post api-method"
info_path: docs/APIs-and-SDKs/SDK-API/absmartly-collector-api
custom_edit_url: null
---

import ApiTabs from "@theme/ApiTabs";
import DiscriminatorTabs from "@theme/DiscriminatorTabs";
import MethodEndpoint from "@theme/ApiExplorer/MethodEndpoint";
import SecuritySchemes from "@theme/ApiExplorer/SecuritySchemes";
import MimeTabs from "@theme/MimeTabs";
import ParamsItem from "@theme/ParamsItem";
import ResponseSamples from "@theme/ResponseSamples";
import SchemaItem from "@theme/SchemaItem";
import SchemaTabs from "@theme/SchemaTabs";
import Markdown from "@theme/Markdown";
import OperationTabs from "@theme/OperationTabs";
import TabItem from "@theme/TabItem";

<h1 className={"openapi__heading"}>Create a Context</h1>

<MethodEndpoint method={"post"} path={"/context"}></MethodEndpoint>



A POST request for creating a new context and assigning variants to your users.

## Request

<details style={{"marginBottom":"1rem"}} className={"openapi-markdown__details"} data-collapsed={false} open={true}><summary style={{}}><h3 className={"openapi-markdown__details-summary-header-params"}>Header Parameters</h3></summary><div><ul><ParamsItem className={"paramsItem"} param={{"name":"X-Agent","in":"header","required":true,"description":"The User-Agent of your SDK.","example":"absmartly-Java-SDK v1.0.1","schema":{"type":"string"}}}></ParamsItem><ParamsItem className={"paramsItem"} param={{"name":"X-Environment","in":"header","required":true,"description":"The environment in which you are running your experiments. These can be found and created in your ABsmartly Web Console settings.","example":"development","schema":{"type":"string"}}}></ParamsItem><ParamsItem className={"paramsItem"} param={{"name":"X-Application","in":"header","required":true,"description":"The application in which you are running your experiments. These can be found and created in your ABsmartly Web Console settings.","example":"www","schema":{"type":"string"}}}></ParamsItem><ParamsItem className={"paramsItem"} param={{"name":"X-Application-Version","in":"header","required":true,"description":"The application version which you are running your experiments on.","example":0,"schema":{"type":"integer","format":"int64"}}}></ParamsItem></ul></div></details><MimeTabs className={"openapi-tabs__mime"}><TabItem label={"application/json"} value={"application/json-schema"}><details style={{}} className={"openapi-markdown__details mime"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-mime"}><h3 className={"openapi-markdown__details-summary-header-body"}>Body</h3><strong className={"openapi-schema__required"}>required</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}><div style={{"marginTop":"1rem","marginBottom":"1rem"}}>

Units data for which to create the context and variant assignments. Unit types can be found and created in your ABsmartly Web Console settings.

```json
{
"type": "user_id" // The name of the unit type
"uid": "4a42766ca6313d26f49985e799ff4f3790fb86efa0fce46edb3ea8fbf1ea3408" // The value of the unit that you are tracking.
}
```


</div></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>units</strong><span className={"openapi-schema__name"}> object[]</span><span className={"openapi-schema__divider"}></span><span className={"openapi-schema__required"}>required</span></span></summary><div style={{"marginLeft":"1rem"}}><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"type"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","example":"user_id"}}></SchemaItem><SchemaItem collapsible={false} name={"uid"} required={false} schemaName={"string"} qualifierMessage={"**Possible values:** `non-empty` and `<= 640 characters`"} schema={{"type":"string","minLength":1,"maxLength":640,"example":"4a42766ca6313d26f49985e799ff4f3790fb86efa0fce46edb3ea8fbf1ea3408"}}></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem></ul></details></TabItem></MimeTabs><div><div><ApiTabs label={undefined} id={undefined}><TabItem label={"200"} value={"200"}><div>

Success

</div><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>units</strong><span className={"openapi-schema__name"}> object[]</span><span className={"openapi-schema__divider"}></span><span className={"openapi-schema__required"}>required</span></span></summary><div style={{"marginLeft":"1rem"}}><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"type"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","example":"user_id"}}></SchemaItem><SchemaItem collapsible={false} name={"uid"} required={false} schemaName={"string"} qualifierMessage={"**Possible values:** `non-empty` and `<= 640 characters`"} schema={{"type":"string","minLength":1,"maxLength":640,"example":"4a42766ca6313d26f49985e799ff4f3790fb86efa0fce46edb3ea8fbf1ea3408"}}></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem><SchemaItem collapsible={true} className={"schemaItem"}><details style={{}} className={"openapi-markdown__details"}><summary style={{}}><span className={"openapi-schema__container"}><strong className={"openapi-schema__property"}>assignments</strong><span className={"openapi-schema__name"}> object[]</span><span className={"openapi-schema__divider"}></span><span className={"openapi-schema__required"}>required</span></span></summary><div style={{"marginLeft":"1rem"}}><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem","paddingBottom":".5rem"}}>Array [</div></li><SchemaItem collapsible={false} name={"id"} required={true} schemaName={"int32"} qualifierMessage={undefined} schema={{"type":"integer","format":"int32","minimum":0,"example":3}}></SchemaItem><SchemaItem collapsible={false} name={"iteration"} required={true} schemaName={"int32"} qualifierMessage={undefined} schema={{"type":"integer","format":"int32","minimum":0,"example":2}}></SchemaItem><SchemaItem collapsible={false} name={"name"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","example":"exp_banner_color"}}></SchemaItem><SchemaItem collapsible={false} name={"variant"} required={true} schemaName={"int32"} qualifierMessage={"**Possible values:** `<= 127`"} schema={{"type":"integer","format":"int32","minimum":0,"maximum":127,"example":1}}></SchemaItem><SchemaItem collapsible={false} name={"eligible"} required={true} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","example":true}}></SchemaItem><SchemaItem collapsible={false} name={"audienceMismatch"} required={false} schemaName={"boolean"} qualifierMessage={undefined} schema={{"type":"boolean","example":false}}></SchemaItem><SchemaItem collapsible={false} name={"originalVariant"} required={false} schemaName={"int32"} qualifierMessage={"**Possible values:** `<= 127`"} schema={{"type":"integer","format":"int32","minimum":0,"maximum":127,"example":1}}></SchemaItem><SchemaItem collapsible={false} name={"config"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string","nullable":true}}></SchemaItem><li><div style={{"fontSize":"var(--ifm-code-font-size)","opacity":"0.6","marginLeft":"-.5rem"}}>]</div></li></div></details></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n \"units\": [\n {\n \"type\": \"user_id\",\n \"uid\": \"4a42766ca6313d26f49985e799ff4f3790fb86efa0fce46edb3ea8fbf1ea3408\"\n }\n ],\n \"assignments\": [\n {\n \"id\": 3,\n \"iteration\": 2,\n \"name\": \"exp_banner_color\",\n \"variant\": 1,\n \"eligible\": true,\n \"audienceMismatch\": false,\n \"originalVariant\": 1,\n \"config\": \"string\"\n }\n ]\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"400"} value={"400"}><div>

Bad request

</div><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"code"} required={true} schemaName={"int64"} qualifierMessage={undefined} schema={{"type":"integer","format":"int64"}}></SchemaItem><SchemaItem collapsible={false} name={"message"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string"}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n \"code\": 0,\n \"message\": \"string\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem><TabItem label={"401"} value={"401"}><div>

Unauthorized

</div><div></div></TabItem><TabItem label={"default"} value={"default"}><div>

Unexpected error

</div><div><MimeTabs className={"openapi-tabs__mime"} schemaType={"response"}><TabItem label={"application/json"} value={"application/json"}><SchemaTabs className={"openapi-tabs__schema"}><TabItem label={"Schema"} value={"Schema"}><details style={{}} className={"openapi-markdown__details response"} data-collapsed={false} open={true}><summary style={{}} className={"openapi-markdown__details-summary-response"}><strong>Schema</strong></summary><div style={{"textAlign":"left","marginLeft":"1rem"}}></div><ul style={{"marginLeft":"1rem"}}><SchemaItem collapsible={false} name={"code"} required={true} schemaName={"int64"} qualifierMessage={undefined} schema={{"type":"integer","format":"int64"}}></SchemaItem><SchemaItem collapsible={false} name={"message"} required={true} schemaName={"string"} qualifierMessage={undefined} schema={{"type":"string"}}></SchemaItem></ul></details></TabItem><TabItem label={"Example (from schema)"} value={"Example (from schema)"}><ResponseSamples responseExample={"{\n \"code\": 0,\n \"message\": \"string\"\n}"} language={"json"}></ResponseSamples></TabItem></SchemaTabs></TabItem></MimeTabs></div></TabItem></ApiTabs></div></div>

Loading