---
title: "A signed dispute resolution (machine record). Verify offline: node crawlcheck-verify.mjs resolution.json"
method: GET
path: "/api/disputes/resolution"
---

# A signed dispute resolution (machine record). Verify offline: node crawlcheck-verify.mjs resolution.json

`GET /api/disputes/resolution`

## Request

- Base URL: `https://crawlcheck.io`
- URL: `https://crawlcheck.io/api/disputes/resolution`
- Auth: none required

## Query parameters

- `id` string, required

## Response `200`

DisputeResolutionV1

- DisputeResolutionV1: dsp1: a signed resolution of a dispute against one finding (GET /api/disputes/resolution?id=). Verifies offline with crawlcheck-verify.mjs: hash, key id, Ed25519 signature, and the verdict re-derived from the recorded readings by the published decision table.
  - `resolution_id` string, required
  - `kind` 'crawlcheck-dispute-resolution', required
  - `v` unknown, required
  - `schema` string, nullable
  - `dispute_id` string, required
  - `issued_at` string, required
  - `issuer` object, required
    - `observer` string, nullable
    - `version_id` string, nullable
    - `version_tag` string, nullable
    - `key` object
      - `kid` string
      - `jwk` object
      - `published_in` string
  - `subject` object, required
    - `domain` string, required
    - `record` object, required
    - `finding` object, required
      - `code` string
      - `path` string, nullable
      - `fid` string, nullable
      - `decision_id` string, nullable
      - `title` string, nullable
      - `severity` number, nullable
      - `rule_revision` number, nullable
  - `dispute` object, required
    - `filed_at` string
    - `ground` 'misread' | 'fixed' | 'network' | 'rule'
    - `ground_text` string, nullable
    - `statement` string
    - `ownership` object, nullable
      - `method` string
      - `at` string
      - `url` string, nullable
      - `sha256` string, nullable
  - `remeasurement` object, required
    - `replay` object, required
      - `reproduces` boolean, nullable
      - `rule` string, nullable
      - `read` unknown
      - `why` string, nullable
      - `rule_revision` number, nullable
      - `over` string, nullable
    - `observers` object[], required
      - `role` 'primary' | 'independent', required
      - `observer_id` string, required
      - `network_class` string, nullable
      - `network` string, nullable
      - `at` string, nullable
      - `finding_present` boolean, nullable, required
      - `inputs_agree` boolean, nullable
      - `method` string, nullable
      - `reading` string, nullable
      - `side` object, nullable
      - `observation` object, nullable
    - `deadline` string, nullable
    - `independent_wait_hours` number, nullable
  - `decision` object, required
    - `verdict` 'upheld' | 'corrected' | 'fixed_since' | 'vantage_dependent' | 'no_longer_observed' | 'inconclusive', required
    - `verdict_text` string, nullable
    - `effect` 'stands' | 'withdrawn' | 'stands_for_record' | 'stands_with_scope' | 'stands_unresolved', required
    - `effect_text` string, nullable
    - `rule` string, nullable
    - `table` string, nullable
    - `derived_by` string, nullable
  - `links` object
  - `signature` object, required
    - `v` unknown
    - `alg` 'Ed25519', required
    - `kid` string, required
    - `over` 'resolution_sha256'
    - `resolution_sha256` string, required
    - `message` string, required
    - `sig` string, required
    - `signed_at` string
    - `canonical` string

## Other responses

- `404`: no such resolution

---

[API](https://skmtc.dev/crawlcheck/apis/crawlcheck-api.md) · [All operations](https://skmtc.dev/crawlcheck/apis/crawlcheck-api/llms.txt) · [OpenAPI document](https://skmtc.dev/crawlcheck/apis/crawlcheck-api/revisions/57acbd6d4489?raw)
