Disputes
Create Dispute
Publisher-initiated dispute against a submission (Phase 3).
Replaces the silent Ring 2 auto-escalation that was removed in Phase 1. The publisher explicitly decides a submission is fraudulent/non-compliant and opens a dispute -- this is a conscious action with a paper trail.
Preconditions:
- Caller is authenticated with ERC-8128 wallet signing
- Submission exists
- Caller is the publisher of the parent task (wallet or agent_id match)
- Submission has no active dispute (no open/under_review/in_arbitration row)
- Submission has not been paid yet (can't dispute a settled submission)
Side effects:
- Inserts a disputes row with escalation_tier=1 (human-initiated)
- Sets submissions.agent_verdict='disputed' (explicit publisher decision; trigger trg_submissions_verdict_change writes a payment_events audit row)
- Emits dispute.opened event
- Moves the TASK to 'disputed' (explicitly — no trigger does this)
post/api/v1/disputes
Request
- Base URL: https://api.execution.market
- URL: https://api.execution.market/api/v1/disputes
- Auth: API key in header Signature-Input
Request body
Response
Successful Response
Changes
No recorded changes to this operation across all 1 revision of this API.