Skip to content

Purpose routes: update, delete

The Purpose Verbs update, delete as api.sb routes, with inputs, result, refusals and an example.

Reference for Purpose, one group of Purpose routes.

Purpose.update

Changes the given properties of a Purpose. Verb page.

Text
PATCH /{namespace}/purposes/{id}

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

Inputs

InputTypeRequiredDescription
idstringrequiredThe id of the Purpose.
namestringThe reason, such as marketing email or call recording.

Returns

OutputTypeRequiredDescription
purposePurposerequiredThe Purpose.

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/purposes/purpose_Aoz9nBatRR \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"name":"Leaseline"}'
JSON
{
  "api": "https://api.sb/leaseline.app",
  "purpose": {
    "$id": "https://api.sb/leaseline.app/purposes/purpose_Aoz9nBatRR",
    "$type": "Purpose",
    "name": "Leaseline"
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "Purpose.update",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}

Purpose.delete

Deletes a Purpose: a soft delete that keeps its history, undone by Thing.restore. Verb page.

Text
DELETE /{namespace}/purposes/{id}

Path: id. Emits Purpose.deleted.

Inputs

InputTypeRequiredDescription
idstringrequiredThe id of the Purpose.

Returns

OutputTypeRequiredDescription
purposePurposerequiredThe Purpose.

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/purposes/purpose_Aoz9nBatRR \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"
JSON
{
  "api": "https://api.sb/leaseline.app",
  "purpose": {
    "$id": "https://api.sb/leaseline.app/purposes/purpose_Aoz9nBatRR",
    "$type": "Purpose",
    "name": "Leaseline"
  },
  "action": {
    "$id": "https://api.sb/leaseline.app/actions/act_br07HsG8MG",
    "operation": "Purpose.delete",
    "status": "done"
  },
  "links": {
    "self": "https://api.sb/leaseline.app/actions/act_br07HsG8MG"
  }
}