Skip to content

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.

Text
PATCH /{namespace}/policies/{id}

Path: id. Body, as JSON: the other inputs. Emits Policy.updated.

Inputs

InputTypeRequiredDescription
idstringrequiredThe id of the Policy.
ruletextThe ruling, stated so code can apply it.

Returns

OutputTypeRequiredDescription
policyPolicyrequiredThe Policy.

Refuses when

CheckErrorFixThen call
The key is valid, but its scopes do not allow this operation.forbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.None.

Example

Terminal
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"}'
JSON
{
  "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.

Text
DELETE /{namespace}/policies/{id}

Path: id. Emits Policy.deleted.

Inputs

InputTypeRequiredDescription
idstringrequiredThe id of the Policy.

Returns

OutputTypeRequiredDescription
policyPolicyrequiredThe Policy.

Refuses when

CheckErrorFixThen call
The key is valid, but its scopes do not allow this operation.forbiddenUse a key whose scopes cover the operation, or ask an owner of the namespace to grant them.None.

Example

Terminal
curl -X DELETE https://api.sb/leaseline.app/policies/policy_rTYxr62HGB \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"
JSON
{
  "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"
  }
}