Skip to content

Case detail

GET
/api/v1/cases/{id}
curl --request GET \
--url https://example.com/api/v1/cases/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0

The case with its latest run, draft and outcome; ETag carries the outcome version.

id
required
Id
string format: uuid

Successful Response

Media typeapplication/json
CaseDetail

Everything the case page needs; evidence comes from the evidence endpoint.

object
allowed_responses
Allowed Responses

Response types a draft may be requested for, from the latest analysis. Empty when there is no analysis, it failed, or the case changed since it ran (stale).

Array<string>
Allowed values: no_action_suggested welcome_and_tips ask_source_question request_local_check escalate_to_experienced_reviewer
attribution
Attribution

OpenStreetMap attribution passed through from the API envelope.

object
attribution
Any of:
string
copyright
Any of:
string
license
Any of:
string
band
Any of:
Band

Backend-assigned sharpness band of the model output.

string
Allowed values: confident unsure cannot_tell
changeset
Any of:
ChangesetDetail

Changeset facts shown on the case page; free text is sanitized before it is rendered.

object
bbox
Any of:
array
>= 4 items <= 4 items
bbox_wraps
Bbox Wraps
boolean
closed_at
Any of:
string format: date-time
comment
Any of:
string
created_at
required
Created At
string format: date-time
created_by
Any of:
string
id
required
Id
integer
locale
Any of:
string
open
Open
boolean
review_requested
Review Requested
boolean
source
Any of:
string
user
Any of:
UserSummary

Public facts about the changeset author; any value may be unknown.

object
account_age_days
Any of:
integer
blocks_active
Any of:
integer
changesets_count
Any of:
integer
changesets_count_basis
Any of:
string
Allowed values: edit_time current
display_name
Any of:
string
changeset_id
required
Changeset Id
integer
comment
Any of:
string
coverage_score
required
Coverage Score
number
<= 1
created_at
required
Created At
string format: date-time
editor
Any of:
string
element_counts
required
ElementCounts

Elements created, modified and deleted by the changeset.

object
create
Create
integer
0
delete
Delete
integer
0
modify
Modify
integer
0
flags
Flags

OSMCha reason codes and policy rule codes

Array<string>
id
required
Id
string format: uuid
lane
required
Lane

Suggested-disposition bucket used to order the queue (nothing is hidden).

string
Allowed values: looks_consistent review_suggested needs_local_knowledge insufficient_evidence rules_only
latest_draft
Any of:
Draft

A comment candidate with its validation result; a person edits and posts it.

object
body
required
Body
string
cited_evidence_ids
Cited Evidence Ids
Array<string>
closing
required
Closing
string
created_at
required
Created At
string format: date-time
greeting
required
Greeting
string
id
required
Id
string format: uuid
model_id
Any of:
string
response_type
required
Response

Q2 option set: suggested next step for the reviewer.

string
Allowed values: no_action_suggested welcome_and_tips ask_source_question request_local_check escalate_to_experienced_reviewer
run_id
required
Run Id
string format: uuid
status
required
DraftStatus

Validation outcome of a drafted comment.

string
Allowed values: generated validated rejected_by_validator template_fallback
validation
required
DraftValidation

Result of validating a draft against tone rules.

object
ok
required
Ok
boolean
violations
Violations
Array<string>
latest_outcome
Any of:
Disposition

What a human reviewer decided.

string
Allowed values: agree different_response needs_survey disagree_with_model no_action
latest_outcome_detail
Any of:
HumanOutcome

A stored reviewer decision (append-only; a correction is a new record).

object
created_at
required
Created At
string format: date-time
disposition
required
Disposition

What a human reviewer decided.

string
Allowed values: agree different_response needs_survey disagree_with_model no_action
final_text
Any of:
string
id
required
Id
string format: uuid
note
Any of:
string
probe_corrections
Any of:
object
key
additional properties
string
Allowed values: yes no
reason_code
Any of:
string
response_type
Any of:
Response

Q2 option set: suggested next step for the reviewer.

string
Allowed values: no_action_suggested welcome_and_tips ask_source_question request_local_check escalate_to_experienced_reviewer
reviewer_display
required
Reviewer Display
string
run_id_seen
required
Run Id Seen
string format: uuid
latest_run
Any of:
RunSummary

One analysis run: lane, band and every option probability (never a single percentage).

object
band
Any of:
Band

Backend-assigned sharpness band of the model output.

string
Allowed values: confident unsure cannot_tell
config_version
required
Config Version
string
created_at
required
Created At
string format: date-time
decider_model
Any of:
string
failure_code
Any of:
string
id
required
Id
string format: uuid
lane
required
Lane

Suggested-disposition bucket used to order the queue (nothing is hidden).

string
Allowed values: looks_consistent review_suggested needs_local_knowledge insufficient_evidence rules_only
latency_ms
Latency Ms
integer
0
nature
Any of:
Nature

Q1 option set: what the changeset looks like.

string
Allowed values: consistent_edit likely_good_faith_mistake possible_deliberate_damage needs_local_knowledge
nature_probabilities
Nature Probabilities
object
key
additional properties
number
<= 1
order_sensitivity
Order Sensitivity
number
0
panel
Any of:
PanelView

The fact panel as reviewers see it: every probe reading, the table rows and cross-checks.

object
advisory_nature
required
PanelNature

The four-way reading the model also gives; shown for audit and never used for lanes.

object
advisory
Advisory
boolean
default: true
choice
required
Nature

Q1 option set: what the changeset looks like.

string
Allowed values: consistent_edit likely_good_faith_mistake possible_deliberate_damage needs_local_knowledge
probabilities
required
Probabilities

Every option with its probability; no single figure is shown

object
key
additional properties
number
<= 1
composition
Any of:
PanelCompositionView

Which table rows produced the suggested response and reading.

object
nature_row
required
Nature Row
string
response_row
required
Response Row
string
unknown
Unknown

Probe ids read as unknown

Array<string>
yes
Yes

Probe ids read as yes

Array<string>
cross_checks
Cross Checks

Panel reading compared with the value computed from parsed evidence

object
key
additional properties
string
Allowed values: agree disagree undecided n/a
high
required
High
number
<= 1
low
required
Low
number
<= 1
probes
required
Probes
Array<object>
PanelProbe

One yes/no fact the Decider was asked, with its probability and a three-way reading.

object
id
required
Id
string
label
required
Label

Plain-language statement of the fact that was asked

string
probability
required
Probability
number
<= 1
reading
required
Tri

No below the low threshold, yes above the high, else unknown

string
Allowed values: no unknown yes
use
required
Use

Composed: feeds the suggestion; cross_check_only and advisory are shown only

string
Allowed values: composed cross_check_only advisory
yes_means
required
Yes Means

Whether a yes raises or lowers the level of review suggested

string
Allowed values: concern reassurance
reconciled
Reconciled
boolean
response
Any of:
Response

Q2 option set: suggested next step for the reviewer.

string
Allowed values: no_action_suggested welcome_and_tips ask_source_question request_local_check escalate_to_experienced_reviewer
response_probabilities
Response Probabilities
object
key
additional properties
number
<= 1
rules_fired
Rules Fired
Array<object>
RuleHit

A deterministic policy rule that fired, with the parsed evidence that triggered it.

object
code
required
Code
string
label
required
Label
string
severity
required
Severity

Severity of a policy rule hit.

string
Allowed values: info warn block
triggered_by
Triggered By
object
key
additional properties
any
snapshot_id
required
Snapshot Id
string format: uuid
status
required
RunStatus

Outcome of an analysis run.

string
Allowed values: succeeded failed
latest_snapshot_id
Any of:
string format: uuid
nature
Any of:
Nature

Q1 option set: what the changeset looks like.

string
Allowed values: consistent_edit likely_good_faith_mistake possible_deliberate_damage needs_local_knowledge
outcome_version
Outcome Version

Send as If-Match: W/“<outcome_version>” when recording an outcome

integer
0
place_label
Any of:
string
response
Any of:
Response

Q2 option set: suggested next step for the reviewer.

string
Allowed values: no_action_suggested welcome_and_tips ask_source_question request_local_check escalate_to_experienced_reviewer
stale
required
Stale
boolean
status
required
CaseStatus

Lifecycle state of a review case (staleness is a separate flag).

string
Allowed values: new analyzing analyzed decided
updated_at
required
Updated At
string format: date-time

Example

{
"allowed_responses": [
"no_action_suggested"
],
"band": "confident",
"changeset": {
"bbox_wraps": false,
"open": false,
"review_requested": false,
"user": {
"changesets_count_basis": "edit_time"
}
},
"element_counts": {
"create": 0,
"delete": 0,
"modify": 0
},
"lane": "looks_consistent",
"latest_draft": {
"response_type": "no_action_suggested",
"status": "generated"
},
"latest_outcome": "agree",
"latest_outcome_detail": {
"disposition": "agree",
"probe_corrections": {
"additionalProperty": "yes"
},
"response_type": "no_action_suggested"
},
"latest_run": {
"band": "confident",
"lane": "looks_consistent",
"latency_ms": 0,
"nature": "consistent_edit",
"order_sensitivity": 0,
"panel": {
"advisory_nature": {
"advisory": true,
"choice": "consistent_edit"
},
"cross_checks": {
"additionalProperty": "agree"
},
"probes": [
{
"reading": "no",
"use": "composed",
"yes_means": "concern"
}
]
},
"reconciled": false,
"response": "no_action_suggested",
"rules_fired": [
{
"severity": "info"
}
],
"status": "succeeded"
},
"nature": "consistent_edit",
"outcome_version": 0,
"response": "no_action_suggested",
"status": "new"
}

Not Found

Problem

Application/problem+json body. Extension members (for example job_id) are allowed.

object
detail
Any of:
string
errors
Any of:
Array<object>
FieldError

One validation failure: where, what, and a stable machine code (never the input value).

object
loc
required
Loc
Array
msg
required
Msg
string
type
required
Type
string
instance
Any of:
string
request_id
required
Request Id
string
status
required
Status
integer
title
required
Title
string
type
Type
string
default: about:blank
key
additional properties
any

Example

{
"type": "about:blank"
}

Validation Error

Media typeapplication/json
HTTPValidationError
object
detail
Detail
Array<object>
ValidationError
object
ctx
Context
object
input
Input
loc
required
Location
Array
msg
required
Message
string
type
required
Error Type
string

Example generated

{
"detail": [
{
"ctx": {},
"input": "example",
"loc": [
"example"
],
"msg": "example",
"type": "example"
}
]
}

Map data © OpenStreetMap contributors, under the Open Database Licence. Code under the Apache-2.0 licence. Made by Yogesh.

Changeset Second Opinion is an independent open source tool for OpenStreetMap reviewers. It is not endorsed by, sponsored by or affiliated with the OpenStreetMap Foundation. OpenStreetMap is a trademark of the OpenStreetMap Foundation, used under itstrademark policy.