Crowdsourced trail condition or hazard report with temporal decay.
tid
Timestamp-based ID
Properties
coordinate
array
of
string
Optional
Optional exact GPS coordinates [lon, lat, ele?] of the hazard, as decimal strings (the ATProto data model has no floats). On an activity-subject report it also limits which of the activity's matched trails the report reaches.
expiresAt
string
datetime
Optional
Optional explicit expiration timestamp. When absent, defaults to reportedAt + 14 days.
notes
string
Optional
Detailed notes describing the observed trail condition or obstacle.
maxLength: 10000 bytesmaxGraphemes: 1000 graphemesphotoBlob
blob
Optional
Optional photograph of the condition or hazard.
maxSize: 10.0 MBreportedAt
string
datetime
Required
Timestamp when the observation was made.
severity
string
Required
Severity level of the condition.
info, caution, hazard, closurestatus
string
Required
Current status or condition observation.
clear, minor_issues, wet_muddy, snow_ice, tree_fall, flowing, dry, closedsubject
union
Required
The trail, route, segment, activity, or landmark subject of this condition report. A strongRef to a world.treeline.activity.record reports on every trail that activity matched.
View raw schema
{
"description": "Crowdsourced trail condition or hazard report with temporal decay.",
"key": "tid",
"record": {
"properties": {
"coordinate": {
"description": "Optional exact GPS coordinates [lon, lat, ele?] of the hazard, as decimal strings (the ATProto data model has no floats). On an activity-subject report it also limits which of the activity's matched trails the report reaches.",
"items": {
"type": "string"
},
"type": "array"
},
"expiresAt": {
"description": "Optional explicit expiration timestamp. When absent, defaults to reportedAt + 14 days.",
"format": "datetime",
"type": "string"
},
"notes": {
"description": "Detailed notes describing the observed trail condition or obstacle.",
"maxGraphemes": 1000,
"maxLength": 10000,
"type": "string"
},
"photoBlob": {
"accept": [
"image/png",
"image/jpeg",
"image/webp"
],
"description": "Optional photograph of the condition or hazard.",
"maxSize": 10000000,
"type": "blob"
},
"reportedAt": {
"description": "Timestamp when the observation was made.",
"format": "datetime",
"type": "string"
},
"severity": {
"description": "Severity level of the condition.",
"knownValues": [
"info",
"caution",
"hazard",
"closure"
],
"type": "string"
},
"status": {
"description": "Current status or condition observation.",
"knownValues": [
"clear",
"minor_issues",
"wet_muddy",
"snow_ice",
"tree_fall",
"flowing",
"dry",
"closed"
],
"type": "string"
},
"subject": {
"description": "The trail, route, segment, activity, or landmark subject of this condition report. A strongRef to a world.treeline.activity.record reports on every trail that activity matched.",
"refs": [
"#trailSubject",
"com.atproto.repo.strongRef"
],
"type": "union"
}
},
"required": [
"subject",
"status",
"severity",
"reportedAt"
],
"type": "object"
},
"type": "record"
}