Prediction markets and DAOs logo

DeFi Cover Claim Adjudicator

$5.00 USDC per call · Smart contracts and tokens · POST /api/v1/cover-claim · Id cover-claim

Predicts whether a DeFi cover claim (Nexus Mutual or any provider's wording) will be approved and for how much. Reads the wording, postmortems and the claimant's transactions, quantifies net token loss with Chainlink prices at the loss block, maps facts to covered events, exclusions and conditions with verbatim verified clauses, cites similar past claims, and returns verdict.action (FILE / FILE_WITH_MORE_EVIDENCE / DO_NOT_FILE) with calibrated P(approved), expected payout and filing value in the cover asset, an assessor vote (APPROVE/DENY/ABSTAIN) and the missing evidence that would change the verdict. A failed hard gate (cover period, filing window) is decided in code with no model call; if a model stage fails you still get the verified gates, timing and loss valuation as a partial result. Not financial or legal advice.

What you get

A denied Nexus claim forfeits its 0.05 ETH deposit and a wrong assessor vote is penalized; this prices the claim and names the clause that decides it before anyone files or votes.

Call it

Send the JSON body below to https://agents.writerslogic.com/api/v1/cover-claim. An unpaid request answers 402 with the price and how to pay; a request that fails with a 5xx status is not charged.

curl -i -X POST https://agents.writerslogic.com/api/v1/cover-claim \
  -H 'content-type: application/json' \
  -d '{"wording":{"productName":"Pocket Universe"},"incident":{"description":"A transaction of about 2.08 ETH made on the Lido frontend on 2024-10-04 at 11:31:28 UTC was replaced with a plain transfer to a scam address by malware on the user'\''s machine, and Pocket Universe did not flag it as malicious. The claimant cites covered event 3b, malicious sending of funds.","postmortemUrls":["https://forum.nexusmutual.io/t/1538"],"occurredAt":"2024-10-04T11:31:28Z"},"transactions":[{"chain":"ethereum","hash":"0x1b84e51a0b3f682ce7636170f9a18fcb3cc532661c1ce65f9733e2b5ce74a29f"}],"claimant":"0x760513ef6f45da1964128848f8962c02fb4770c9","cover":{"amount":250000.23,"asset":"USDC","start":"2024-09-25T00:00:00Z","end":"2024-10-25T00:00:00Z"},"claimedLoss":{"amount":5027.91},"claimDate":"2024-10-11T00:00:00Z"}'

Input

FieldTypeRequiredDescription
wordingobjectyesThe cover wording: a Nexus Mutual product (id or name), a URL (HTML or PDF), or pasted text. At least one.
incidentobjectno
transactionsarray<object>; max 12 itemsnoTransactions in which the claimant lost (or deposited, or recovered) funds.
claimantstringyesAddress that suffered the loss (the Impacted Account).
coverobjectyes
deductibleobjectnoOverrides any deductible found in the wording. Amount in cover-asset units; percentages 0-100.
claimedLossobjectnoLoss the claimant asserts, in cover-asset units. Used for the payout only when no on-chain loss can be established; always reported as unverified.
claimDatestring; length 10..40noISO 8601 date the claim is (to be) filed; default now.

Example request body

{
  "wording": {
    "productName": "Pocket Universe"
  },
  "incident": {
    "description": "A transaction of about 2.08 ETH made on the Lido frontend on 2024-10-04 at 11:31:28 UTC was replaced with a plain transfer to a scam address by malware on the user's machine, and Pocket Universe did not flag it as malicious. The claimant cites covered event 3b, malicious sending of funds.",
    "postmortemUrls": [
      "https://forum.nexusmutual.io/t/1538"
    ],
    "occurredAt": "2024-10-04T11:31:28Z"
  },
  "transactions": [
    {
      "chain": "ethereum",
      "hash": "0x1b84e51a0b3f682ce7636170f9a18fcb3cc532661c1ce65f9733e2b5ce74a29f"
    }
  ],
  "claimant": "0x760513ef6f45da1964128848f8962c02fb4770c9",
  "cover": {
    "amount": 250000.23,
    "asset": "USDC",
    "start": "2024-09-25T00:00:00Z",
    "end": "2024-10-25T00:00:00Z"
  },
  "claimedLoss": {
    "amount": 5027.91
  },
  "claimDate": "2024-10-11T00:00:00Z"
}

Result

The response is { "data": ..., "_provenance": ... }. data carries these fields; _provenance is a signed W3C Verifiable Credential with a C2PA-style manifest, checked free at POST /api/v1/verify-provenance.

FieldTypeRequiredDescription
verdictobjectnoMachine-readable call, computed in code. Leads the answer; detail follows in the other fields.
disclaimerstringnoNot financial advice.
partialbooleannoTrue when the clause-map stage failed: clauses were not extracted, confidence is capped at 0.5 and missing names the stage. A failed probability ensemble is a 502 so the payment is released.
missingarray<string>noStages that did not complete: clause_map.
recommendation_assessorstring; one of "APPROVE", "DENY", "ABSTAIN"noVote advice for a claim assessor.
recommendation_claimantstring; one of "FILE", "FILE_WITH_MORE_EVIDENCE", "DO_NOT_FILE"no
refile_afterone ofnoISO time when the wording's cool-down ends, when filing is premature; otherwise null.
decided_bystring; one of "deterministic_hard_gate", "model_ensemble"nodeterministic_hard_gate: a failed hard gate (filing deadline, cover period) decided the verdict in code with no model call.
llm_callsintegernoNumber of model calls this answer used.
clause_map_sourcestring; one of "none", "code_parsed", "model"noWhether clauses and terms were read from the wording by code or by a model.
p_approvednumbernoCalibrated probability the claim is approved (0-1).
p_intervalarray<number>no
confidencenumberno0-1; falls with ensemble disagreement, dropped quotes and decisive evidence gaps.
payoutobjectnoCover-asset amounts: measured_loss, deductible, claim_amount_if_approved, expected_payout, claim_deposit, expected_value_of_filing.
deciding_clausesarray<object>noCovered-event, exclusion and condition clauses, each verified verbatim against the wording.
cleared_exclusionsarray<object>no
gatesarray<object>noDeterministic checks: event within cover period, filing window, cool-down, materiality.
timingobjectno
lossesarray<object>noPer-token net flows of the claimant with Chainlink pricing at the loss block, or the reason a token is unpriced.
transactionsarray<object>no
precedentsarray<object>noMost similar past Nexus Mutual claims with outcomes and verified excerpts.
missing_evidencearray<object>noEvidence that would change the verdict.
ensembleobjectno
red_teamone ofnoAdversarial assessor pass arguing for denial; null when no model ran or the pass failed.
decisive_clause_quotesarray<string>no
reasoningarray<string>no
incidentobjectno
unverified_quotes_droppedintegerno
warningsarray<string>no
sourcesarray<object>no

Pay and connect

Available through: x402 (USDC on Base), MCP, RapidAPI.

Machine-readable