Upload an evidence file to a dispute
Streams an evidence file (pdf, png, jpeg, or csv) to tenant-scoped object storage and records the resulting object key on the dispute as a new evidence item. The comment arrives as a query parameter and the file bytes as the request body. The tenant is resolved from the JWT and the dispute from the path — never from the body. Fails closed (503) when object storage is not configured; rejects oversize bodies (413) and unsupported content types (415).
Authorizations
Bearer token authentication (format: "Bearer {token}")
Headers
Evidence media type: application/pdf, image/png, image/jpeg, or text/csv
"application/pdf"
Path Parameters
Dispute ID (UUID)
"550e8400-e29b-41d4-a716-446655440001"
Query Parameters
Comment describing the uploaded evidence
1 - 1000"Bank statement showing correct amount"
Body
The body is of type file.
Response
Created
Dispute category: BANK_FEE_ERROR (incorrect fee), UNRECOGNIZED_CHARGE, DUPLICATE_TRANSACTION, AMOUNT_MISMATCH, or OTHER
BANK_FEE_ERROR, UNRECOGNIZED_CHARGE, DUPLICATE_TRANSACTION, AMOUNT_MISMATCH, OTHER "BANK_FEE_ERROR"
Creation timestamp as an RFC 3339 timestamp
"2025-01-15T10:30:00Z"
Description of the dispute
"Transaction amount differs from expected"
Identifier of the exception this dispute is for (UUID)
"550e8400-e29b-41d4-a716-446655440001"
Unique identifier for the dispute (UUID)
"550e8400-e29b-41d4-a716-446655440000"
User who opened the dispute
"user@example.com"
Dispute state: DRAFT, OPEN, PENDING_EVIDENCE (awaiting evidence), WON, or LOST
DRAFT, OPEN, PENDING_EVIDENCE, WON, LOST "OPEN"
Last update timestamp as an RFC 3339 timestamp
"2025-01-15T10:30:00Z"
Evidence items submitted for this dispute (max 50)
50Reason recorded when the dispute was reopened
"New evidence discovered"
Resolution description recorded when the dispute was closed
"Counterparty confirmed error"

