Skip to main content
Proposals are expert answers awaiting human review. These endpoints back the approval queue.

List pending proposals

GET /api/v1/proposals?status=pending
Returns the pending ContextProposals. Each carries its id, its request_id, the expert’s answer, the structured form, confidence, and provenance.
status
pending
Currently only pending is supported — the queue of proposals awaiting a decision.

Accept a proposal

POST /api/v1/proposals/{id}/accept Approves the answer and delivers it to every subscribed consumer via on_proposal_accepted.
decided_by
string
required
Who approved the proposal.
note
string
An optional note recorded with the decision.
Returns the updated proposal. Accepting also sets the request’s status to accepted and notifies the expert that their answer was accepted. An unknown id returns 404; deciding an already-decided proposal is a no-op.

Reject a proposal

POST /api/v1/proposals/{id}/reject
decided_by
string
required
Who rejected the proposal.
reason
string
required
Why it was rejected. Delivered to the consumer with on_proposal_rejected.
Returns the updated proposal and sets the request’s status to rejected.