Skip to content

sops

Knowledge module · 6 operations

List SOP rows

GET/sops

A standard operating procedure that members acknowledge. Returns a cursor page of SOP rows the caller may see. The default order is `created_at` ascending. Supports sparse fieldsets and the filter grammar.

Create a SOP

POST/sops

A standard operating procedure that members acknowledge. Creates a SOP. Requires `Idempotency-Key`; a replay returns the original response. The organization is derived from the credential or the parent row, never from the body.

Get a SOP

GET/sops/{id}

A standard operating procedure that members acknowledge. Returns one SOP with its `ETag`. A SOP the caller may not see returns 404.

Update a SOP

PATCH/sops/{id}

A standard operating procedure that members acknowledge. Updates the fields sent; omitted fields are unchanged. Requires `If-Match` with the current `ETag`: a stale tag returns 412 and a missing tag returns 428.

Delete a SOP

DELETE/sops/{id}

A standard operating procedure that members acknowledge. Soft-deletes the SOP: it moves to Trash and can be restored for its table's retention period.

Publish an SOP

POST/sops/{id}/publish

Publishes the SOP: the database stamps `published_at` and raises `version` when it was published before, so everyone is asked to acknowledge the new version. Needs knowledge.sop.publish. Requires `Idempotency-Key`; a replay returns the original response. A rule that refuses the request returns 422 with `refusal` and `reason`.