Create a draft incentive rule version
Requires ADMIN. conditionJson validated as a condition tree at publish time.
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
campaignId
required
string
conditionJson
required
Condition tree (all/any/not + fact conditions); validated at publish.
effectsJson
required
Array<object>
object
type
required
string
props
cooldownSeconds
integer
notes
string
Responses
Section titled “Responses”Created draft version.
Media typeapplication/json
object
version
object
id
string
projectId
string
campaignId
string
version
integer
conditionJson
string
effectsJson
string
rulesHash
string
status
string
cooldownSeconds
integer
createdAt
string
publishedAt
string | null
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 not found in project (error=campaign_not_found).
Media typeapplication/json
object
error
required
Human-readable error message.
string
message
string
Examplegenerated
{ "error": "example", "message": "example"}Duplicate rules content hash (error=duplicate_rules).
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": "参数校验失败"}