Policy routes: update, delete
The Policy Verbs update, delete as api.sb routes, with inputs, result, refusals and an example.
Reference for Policy, one group of Policy routes.
Policy.update
Changes the given properties of a Policy. Verb page.
PATCH /{namespace}/ policies/ {id}Path: id. Body, as JSON: the other inputs. Emits Policy.updated.
Inputs
| Input | Type | Required | Description |
|---|---|---|---|
id | string | required | The id of the Policy. |
rule | text | The ruling, stated so code can apply it. |
Returns
| Output | Type | Required | Description |
|---|---|---|---|
policy | Policy | required | The Policy. |
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/ policies/ policy_rTYxr62HGB \
-H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
-H "Content-Type: application/ json" \
-d '{"rule": "Example rule"}'{
"api": "https: //api.sb/ leaseline.app",
"policy": {
"$id": "https: //api.sb/ leaseline.app/ policies/ policy_rTYxr62HGB",
"$type": "Policy",
"rule": "Example rule"
},
"action": {
"$id": "https: //api.sb/ leaseline.app/ actions/ act_br07HsG8MG",
"operation": "Policy.update",
"status": "done"
},
"links": {
"self": "https: //api.sb/ leaseline.app/ actions/ act_br07HsG8MG"
}
}Policy.delete
Deletes a Policy: a soft delete that keeps its history, undone by Thing.restore. Verb page.
DELETE /{namespace}/ policies/ {id}Path: id. Emits Policy.deleted.
Inputs
| Input | Type | Required | Description |
|---|---|---|---|
id | string | required | The id of the Policy. |
Returns
| Output | Type | Required | Description |
|---|---|---|---|
policy | Policy | required | The Policy. |
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/ policies/ policy_rTYxr62HGB \
-H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"{
"api": "https: //api.sb/ leaseline.app",
"policy": {
"$id": "https: //api.sb/ leaseline.app/ policies/ policy_rTYxr62HGB",
"$type": "Policy",
"rule": "Example rule"
},
"action": {
"$id": "https: //api.sb/ leaseline.app/ actions/ act_br07HsG8MG",
"operation": "Policy.delete",
"status": "done"
},
"links": {
"self": "https: //api.sb/ leaseline.app/ actions/ act_br07HsG8MG"
}
}