Saltar al contenido

requisitions

Módulo People · 7 operaciones

List requisition rows

GET/requisitions

A staffing or purchase requisition, approved before an opportunity is published. Returns a cursor page of requisition rows the caller may see. The default order is `created_at` ascending. Supports sparse fieldsets and the filter grammar.

Create a requisition

POST/requisitions

A staffing or purchase requisition, approved before an opportunity is published. Creates a requisition. 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 requisition

GET/requisitions/{id}

A staffing or purchase requisition, approved before an opportunity is published. Returns one requisition with its `ETag`. A requisition the caller may not see returns 404.

Update a requisition

PATCH/requisitions/{id}

A staffing or purchase requisition, approved before an opportunity is published. 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 requisition

DELETE/requisitions/{id}

A staffing or purchase requisition, approved before an opportunity is published. Soft-deletes the requisition: it moves to Trash and can be restored for its table's retention period.

Transition the requisition state

POST/requisitions/{id}/transitions

Moves the requisition lifecycle to another state through its transition RPC, which writes the transition ledger. Uses compare-and-set on `expected_state`; a disallowed transition returns a 422 refusal. Requires `Idempotency-Key`; a replay returns the original response. A rule that refuses the request returns 422 with `refusal` and `reason`.

Approve a requisition

POST/requisitions/{id}/approve

Records an approval decision on the requisition. Spend authority applies before an opportunity can be published. Spend authority and separation of duties are enforced in the approval RPC; a refusal returns 422 and names the rule. Requires `Idempotency-Key`; a replay returns the original response. A rule that refuses the request returns 422 with `refusal` and `reason`.