Create A/B experiment
Requires ADMIN. Validates campaign uniqueness (one running experiment per campaign) and that variant weights sum to trafficPercent*100.
Authorizations
Section titled “Authorizations”Parameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”projectId
required
string
Project (tenant) identifier. Row-level tenant isolation is enforced on every query.
Request Bodyrequired
Section titled “Request Bodyrequired”Media typeapplication/json
object
name
required
string
campaignId
string | null
trafficPercent
integer
minSampleSize
integer
guardrails
object
key
additional properties
number
variants
required
Array<object>
object
key
required
string
weight
required
integer
campaignOverrides
object
key
additional properties
any
Responses
Section titled “Responses”Created experiment (status=draft).
Media typeapplication/json
object
experiment
object
id
string
projectId
string
campaignId
string | null
name
string
variantsJson
string
guardrailsJson
string
trafficPercent
integer
minSampleSize
integer
status
string
startedAt
string | null
endedAt
string | null
conclusionJson
string | null
createdAt
string
updatedAt
string
Missing/invalid path input (e.g. projectId) or invalid JSON body.
Media typeapplication/json
object
error
required
Human-readable error message.
string
message
string
Examplegenerated
{ "error": "example", "message": "example"}Not authenticated (401 via requireAuthenticated) or insufficient project role (403).
Media typeapplication/json
object
error
required
Human-readable error message.
string
message
string
Examplegenerated
{ "error": "example", "message": "example"}Campaign already has a running experiment (error=campaign_experiment_conflict).
Media typeapplication/json
object
error
required
Human-readable error message.
string
message
string
Examplegenerated
{ "error": "example", "message": "example"}Zod validation failed (error=‘参数校验失败’ with issues[]).
Media typeapplication/json
object
error
required
string
issues
Array<object>
object
path
string
message
string
details
Array<object>
object
key
additional properties
any
key
additional properties
any
Example
{ "error": "参数校验失败"}