Variant routes: update, delete
The Variant Verbs update, delete as api.sb routes, with inputs, result, refusals and an example.
Reference for Variant, one group of Variant routes.
Variant.update
Changes the given properties of a Variant. Verb page.
PATCH /{namespace}/ variants/ {id}Path: id. Body, as JSON: the other inputs. Emits Variant.updated.
Inputs
| Input | Type | Required | Description |
|---|---|---|---|
id | string | required | The id of the Variant. |
key | string | The name the Flag returns for it. | |
value | json | What it changes: copy, behavior, a definition Version, or a Thing. | |
control | boolean | True for the current definition every challenger is judged against. | |
follows | Variant | The Variant it was drafted from by a learn step. |
Returns
| Output | Type | Required | Description |
|---|---|---|---|
variant | Variant | required | The Variant. |
Refuses when
| Check | Error | Fix | Then call |
|---|---|---|---|
| The key is valid, but its scopes do not allow this operation. | forbidden | Use a key whose scopes cover the operation, or ask an owner of the namespace to grant them. | None. |
Example
curl -X PATCH https: //api.sb/ leaseline.app/ variants/ variant_nvdfmt7dTw \
-H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
-H "Content-Type: application/ json" \
-d '{"value": {}}'{
"api": "https: //api.sb/ leaseline.app",
"variant": {
"$id": "https: //api.sb/ leaseline.app/ variants/ variant_nvdfmt7dTw",
"$type": "Variant",
"key": "Example key",
"value": {}
},
"action": {
"$id": "https: //api.sb/ leaseline.app/ actions/ act_br07HsG8MG",
"operation": "Variant.update",
"status": "done"
},
"links": {
"self": "https: //api.sb/ leaseline.app/ actions/ act_br07HsG8MG"
}
}Variant.delete
Deletes a Variant: a soft delete that keeps its history, undone by Thing.restore. Verb page.
DELETE /{namespace}/ variants/ {id}Path: id. Emits Variant.deleted.
Inputs
| Input | Type | Required | Description |
|---|---|---|---|
id | string | required | The id of the Variant. |
Returns
| Output | Type | Required | Description |
|---|---|---|---|
variant | Variant | required | The Variant. |
Refuses when
| Check | Error | Fix | Then call |
|---|---|---|---|
| The key is valid, but its scopes do not allow this operation. | forbidden | Use a key whose scopes cover the operation, or ask an owner of the namespace to grant them. | None. |
Example
curl -X DELETE https: //api.sb/ leaseline.app/ variants/ variant_nvdfmt7dTw \
-H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"{
"api": "https: //api.sb/ leaseline.app",
"variant": {
"$id": "https: //api.sb/ leaseline.app/ variants/ variant_nvdfmt7dTw",
"$type": "Variant",
"key": "Example key",
"value": {}
},
"action": {
"$id": "https: //api.sb/ leaseline.app/ actions/ act_br07HsG8MG",
"operation": "Variant.delete",
"status": "done"
},
"links": {
"self": "https: //api.sb/ leaseline.app/ actions/ act_br07HsG8MG"
}
}