{
"id": "social.passports.place",
"defs": {
"main": {
"key": "tid",
"type": "record",
"record": {
"type": "object",
"required": [
"city",
"createdAt"
],
"properties": {
"city": {
"type": "string",
"maxLength": 100,
"description": "Human-readable city name for display, e.g. 'New York City'."
},
"unlocode": {
"type": "string",
"maxLength": 5,
"minLength": 5,
"description": "City-level UN/LOCODE — the canonical cross-user match key. Always the city-level code, not a terminal-specific airport or station node (e.g. 'USNYC' for New York City, not 'USJFK'). First two characters are the ISO 3166-1 alpha-2 country code. Disambiguates same-name cities in different subdivisions (e.g. 'USPDX' = Portland OR, 'USPOD' = Portland ME)."
},
"createdAt": {
"type": "string",
"format": "datetime"
},
"transportCode": {
"type": "string",
"maxLength": 10,
"description": "Terminal-specific code for the place of arrival/departure. IATA airport code for flights (e.g. 'JFK'), train station code for rail (e.g. 'NYP' for New York Penn Station), ferry terminal code, etc. Null for general city-level legs with no specific terminal."
}
}
},
"description": "A named city/country location. Stored once per city on the user's PDS and referenced by travel legs via strongref. Country, subdivision, and coordinates are all derivable from the unlocode field and are not stored redundantly."
}
},
"$type": "com.atproto.lexicon.schema",
"lexicon": 1
}