Skip to content

A decision receipt anyone can read

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

Public by design, also in live mode: it needs no account.

It holds public OpenStreetMap facts and the tool’s own readings (lane, band, the fact panel, the rules that fired, coverage). It never holds a reviewer name, a session, a decision, a draft or the evidence text.

run_id
required
Run Id
string format: uuid

Successful Response

Media typeapplication/json
PublicReceipt

A decision receipt anyone may read: public OpenStreetMap facts and the tool’s own readings.

It never carries a reviewer name, a session, an outcome, a draft or the evidence text, so a link to it can be shared without sharing anything about the person who made it.

object
attribution
required
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
calibration_version
Any of:
string
changeset_id
required
Changeset Id
integer
>= 1 <= 9999999999999
config_version
required
Config Version
string
coverage
required
PublicCoverage

How much of the changeset the evidence covered.

object
elements_detailed
Elements Detailed
integer
0
elements_in_changeset
Elements In Changeset
integer
0
history_gaps_count
History Gaps Count
integer
0
score
Any of:
number
created_at
required
Created At
string format: date-time
decider
Any of:
PublicDecider

Which model answered.

object
checkpoint
Any of:
string
model
Any of:
string
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
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
pack_id
Any of:
string
probes
Probes
Array<object>
PublicProbe

One fact the Decider was asked, with its probability and reading (public receipt).

object
code
required
Code
string
label
required
Label
string
probability
required
Probability
number
<= 1
reading
required
Tri

A noul probability read against the panel thresholds.

string
Allowed values: no unknown yes
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
rules_fired
Rules Fired
Array<object>
PublicRule

A rule that fired. Only the code, label and severity: never what triggered it.

object
code
required
Code
string
label
required
Label
string
severity
required
Severity
string
Allowed values: info warn block
run_id
required
Run Id
string format: uuid

Example

{
"band": "confident",
"coverage": {
"elements_detailed": 0,
"elements_in_changeset": 0,
"history_gaps_count": 0
},
"lane": "looks_consistent",
"nature": "consistent_edit",
"probes": [
{
"reading": "no"
}
],
"response": "no_action_suggested",
"rules_fired": [
{
"severity": "info"
}
]
}

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"
}
]
}

Too Many Requests

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"
}

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.