app.placita.place

placita.app

Documentation

A place saved by a user. The primary entity of Placita: one record per place, stored in the user's own repository.

main record

A place saved by a user. The primary entity of Placita: one record per place, stored in the user's own repository.

Record Key tid Timestamp-based ID

Properties

category string Optional

Place type from Placita's fixed list, for example restaurant, cafe or museum. Missing or unknown means generic.

maxLength: 32 bytes
Known values: generic, restaurant, fastfood, cafe, bar, beer, wine, nightclub, bakery, grocery, clothing, shopping, lodging, campsite, museum, attraction, viewpoint, worship, park, playground, sports, swimming, zoo, cinema, theatre, library, school, college, hospital, pharmacy, doctor, dentist, bank, atm, post, police, fuel, parking, bus, rail, airport, ferry
createdAt string datetime Required

When the place was saved.

name string Required

Name of the place as the user saved it.

maxLength: 300 bytesmaxGraphemes: 100 graphemes
note string Optional

The user's own note about the place.

maxLength: 3000 bytesmaxGraphemes: 1000 graphemes
noteTitle string Optional

Optional short title for the note.

maxLength: 100 bytesmaxGraphemes: 100 graphemes
openingHours string Optional

Opening hours in OpenStreetMap opening_hours syntax, for example Mo-Su 09:00-18:00.

maxLength: 512 bytes
osm ref #osmDetails Optional

Details in OpenStreetMap's own words (structured address, tags). Copied from OpenStreetMap when the place is linked (see checkedAt), and editable by the person (see editedAt). May also hold details typed for a place with no link. A copy made at a point in time: it is not kept up to date.

osmId string Optional

ID of the linked OpenStreetMap feature as a decimal string. Used together with osmType.

maxLength: 32 bytes
osmType string Optional

Type of the linked OpenStreetMap feature. Set only when the user confirmed the match. Used together with osmId.

Known values: node, way, relation
phone string Optional

The place's phone number, as entered or taken from OpenStreetMap.

maxLength: 64 bytes
photo blob Optional

Legacy single photo. Only older records have it. New records use photos.

maxSize: 2.0 MB
photos array of blob Optional

Photos the user uploaded for this place. Up to 4.

rating integer Optional

The user's own rating of the place, from 1 (poor) to 5 (excellent). Only set when status is been. Absent means not rated.

minimum: 1maximum: 5
source string Optional

Where the place came from: a map or review link the user pasted, an OpenStreetMap search result, or manual entry.

Known values: google, foursquare, osm, apple, tripadvisor, manual
sourcePhotoAuthor string Optional

Creator or credit text returned by Wikimedia Commons for sourcePhotoUrl.

maxLength: 500 bytes
sourcePhotoLicense string Optional

License of sourcePhotoUrl, e.g. CC BY-SA 4.0. Attribution duty applies when shown.

maxLength: 64 bytes
sourcePhotoLicenseUrl string Optional

License details URL returned by Wikimedia Commons.

maxLength: 2048 bytes
sourcePhotoPageUrl string Optional

Source file page URL for attribution and reuse details.

maxLength: 2048 bytes
sourcePhotoSourceName string Optional

Origin label for the source photo suggestion.

maxLength: 128 bytes
sourcePhotoUrl string Optional

URL of a free-licensed photo found for this place (Wikimedia Commons, OSM image tag, Wikidata P18). Not a blob - it is a reference to an external image, with attribution.

maxLength: 2048 bytes
sourceUrl string Optional

The link the place was created from, when there was one.

maxLength: 2048 bytes
status string Required

want means the user wants to go there. been means the user has been there.

Known values: want, been
Default: want
tags array of ref com.atproto.repo.strongRef Optional

The user's tags for this place, as strong references to app.placita.tag records.

maxLength: 50 items
visibility string Required

Whether Placita shows this place in public discovery. This is a display hint only: every record in an AT Protocol repository can be read by anyone, including hidden ones.

Known values: hidden, public
Default: hidden
website string Optional

The place's website.

maxLength: 2048 bytes
View raw schema
{
  "description": "A place saved by a user. The primary entity of Placita: one record per place, stored in the user's own repository.",
  "key": "tid",
  "record": {
    "properties": {
      "category": {
        "description": "Place type from Placita's fixed list, for example restaurant, cafe or museum. Missing or unknown means generic.",
        "knownValues": [
          "generic",
          "restaurant",
          "fastfood",
          "cafe",
          "bar",
          "beer",
          "wine",
          "nightclub",
          "bakery",
          "grocery",
          "clothing",
          "shopping",
          "lodging",
          "campsite",
          "museum",
          "attraction",
          "viewpoint",
          "worship",
          "park",
          "playground",
          "sports",
          "swimming",
          "zoo",
          "cinema",
          "theatre",
          "library",
          "school",
          "college",
          "hospital",
          "pharmacy",
          "doctor",
          "dentist",
          "bank",
          "atm",
          "post",
          "police",
          "fuel",
          "parking",
          "bus",
          "rail",
          "airport",
          "ferry"
        ],
        "maxLength": 32,
        "type": "string"
      },
      "createdAt": {
        "description": "When the place was saved.",
        "format": "datetime",
        "type": "string"
      },
      "location": {
        "description": "Where the place is. Normally community.lexicon.location.geo: coordinates as strings, with the street address in its name field when known.",
        "refs": [
          "community.lexicon.location.geo",
          "community.lexicon.location.address"
        ],
        "type": "union"
      },
      "name": {
        "description": "Name of the place as the user saved it.",
        "maxGraphemes": 100,
        "maxLength": 300,
        "type": "string"
      },
      "note": {
        "description": "The user's own note about the place.",
        "maxGraphemes": 1000,
        "maxLength": 3000,
        "type": "string"
      },
      "noteTitle": {
        "description": "Optional short title for the note.",
        "maxGraphemes": 100,
        "maxLength": 100,
        "type": "string"
      },
      "openingHours": {
        "description": "Opening hours in OpenStreetMap opening_hours syntax, for example Mo-Su 09:00-18:00.",
        "maxLength": 512,
        "type": "string"
      },
      "osm": {
        "description": "Details in OpenStreetMap's own words (structured address, tags). Copied from OpenStreetMap when the place is linked (see checkedAt), and editable by the person (see editedAt). May also hold details typed for a place with no link. A copy made at a point in time: it is not kept up to date.",
        "ref": "#osmDetails",
        "type": "ref"
      },
      "osmId": {
        "description": "ID of the linked OpenStreetMap feature as a decimal string. Used together with osmType.",
        "maxLength": 32,
        "type": "string"
      },
      "osmType": {
        "description": "Type of the linked OpenStreetMap feature. Set only when the user confirmed the match. Used together with osmId.",
        "knownValues": [
          "node",
          "way",
          "relation"
        ],
        "type": "string"
      },
      "phone": {
        "description": "The place's phone number, as entered or taken from OpenStreetMap.",
        "maxLength": 64,
        "type": "string"
      },
      "photo": {
        "accept": [
          "image/png",
          "image/jpeg",
          "image/webp"
        ],
        "description": "Legacy single photo. Only older records have it. New records use photos.",
        "maxSize": 2000000,
        "type": "blob"
      },
      "photos": {
        "description": "Photos the user uploaded for this place. Up to 4.",
        "items": {
          "accept": [
            "image/png",
            "image/jpeg",
            "image/webp"
          ],
          "maxSize": 2000000,
          "type": "blob"
        },
        "maxItems": 4,
        "type": "array"
      },
      "rating": {
        "description": "The user's own rating of the place, from 1 (poor) to 5 (excellent). Only set when status is been. Absent means not rated.",
        "maximum": 5,
        "minimum": 1,
        "type": "integer"
      },
      "source": {
        "description": "Where the place came from: a map or review link the user pasted, an OpenStreetMap search result, or manual entry.",
        "knownValues": [
          "google",
          "foursquare",
          "osm",
          "apple",
          "tripadvisor",
          "manual"
        ],
        "type": "string"
      },
      "sourcePhotoAuthor": {
        "description": "Creator or credit text returned by Wikimedia Commons for sourcePhotoUrl.",
        "maxLength": 500,
        "type": "string"
      },
      "sourcePhotoLicense": {
        "description": "License of sourcePhotoUrl, e.g. CC BY-SA 4.0. Attribution duty applies when shown.",
        "maxLength": 64,
        "type": "string"
      },
      "sourcePhotoLicenseUrl": {
        "description": "License details URL returned by Wikimedia Commons.",
        "maxLength": 2048,
        "type": "string"
      },
      "sourcePhotoPageUrl": {
        "description": "Source file page URL for attribution and reuse details.",
        "maxLength": 2048,
        "type": "string"
      },
      "sourcePhotoSourceName": {
        "description": "Origin label for the source photo suggestion.",
        "maxLength": 128,
        "type": "string"
      },
      "sourcePhotoUrl": {
        "description": "URL of a free-licensed photo found for this place (Wikimedia Commons, OSM image tag, Wikidata P18). Not a blob - it is a reference to an external image, with attribution.",
        "maxLength": 2048,
        "type": "string"
      },
      "sourceUrl": {
        "description": "The link the place was created from, when there was one.",
        "maxLength": 2048,
        "type": "string"
      },
      "status": {
        "default": "want",
        "description": "want means the user wants to go there. been means the user has been there.",
        "knownValues": [
          "want",
          "been"
        ],
        "type": "string"
      },
      "tags": {
        "description": "The user's tags for this place, as strong references to app.placita.tag records.",
        "items": {
          "ref": "com.atproto.repo.strongRef",
          "type": "ref"
        },
        "maxLength": 50,
        "type": "array"
      },
      "visibility": {
        "default": "hidden",
        "description": "Whether Placita shows this place in public discovery. This is a display hint only: every record in an AT Protocol repository can be read by anyone, including hidden ones.",
        "knownValues": [
          "hidden",
          "public"
        ],
        "type": "string"
      },
      "website": {
        "description": "The place's website.",
        "maxLength": 2048,
        "type": "string"
      }
    },
    "required": [
      "name",
      "status",
      "visibility",
      "location",
      "createdAt"
    ],
    "type": "object"
  },
  "type": "record"
}
osmAddress object

A structured address, as OpenStreetMap returns it. Every part is optional.

Properties

city string Optional

City, town or village.

maxLength: 200 bytes
country string Optional

Country name.

maxLength: 200 bytes
countryCode string Optional

Two-letter ISO 3166-1 country code, upper case.

maxLength: 2 bytesminLength: 2 bytes
houseNumber string Optional

House or building number.

maxLength: 32 bytes
postcode string Optional

Postal code.

maxLength: 32 bytes
state string Optional

Region or state.

maxLength: 200 bytes
street string Optional

Street or road name.

maxLength: 200 bytes
suburb string Optional

Neighbourhood, quarter or suburb.

maxLength: 200 bytes
View raw schema
{
  "description": "A structured address, as OpenStreetMap returns it. Every part is optional.",
  "properties": {
    "city": {
      "description": "City, town or village.",
      "maxLength": 200,
      "type": "string"
    },
    "country": {
      "description": "Country name.",
      "maxLength": 200,
      "type": "string"
    },
    "countryCode": {
      "description": "Two-letter ISO 3166-1 country code, upper case.",
      "maxLength": 2,
      "minLength": 2,
      "type": "string"
    },
    "houseNumber": {
      "description": "House or building number.",
      "maxLength": 32,
      "type": "string"
    },
    "postcode": {
      "description": "Postal code.",
      "maxLength": 32,
      "type": "string"
    },
    "state": {
      "description": "Region or state.",
      "maxLength": 200,
      "type": "string"
    },
    "street": {
      "description": "Street or road name.",
      "maxLength": 200,
      "type": "string"
    },
    "suburb": {
      "description": "Neighbourhood, quarter or suburb.",
      "maxLength": 200,
      "type": "string"
    }
  },
  "type": "object"
}
osmDetails object

Address and tags in OpenStreetMap's vocabulary: a copy of what OpenStreetMap knew about the linked feature at checkedAt, and/or what the person typed (editedAt). Data copied from OpenStreetMap is (c) OpenStreetMap contributors, available under the Open Database Licence (ODbL). Treat the values as suggestions: they can be wrong or out of date, and the user's own fields always win.

Properties

address ref #osmAddress Optional

The structured address OpenStreetMap has for the feature.

checkedAt string datetime Optional

When the details were copied from OpenStreetMap. Absent for details that were only typed.

editedAt string datetime Optional

When the person last changed these details by hand, or typed them. Details with no checkedAt were never copied from OpenStreetMap.

tags array of ref#osmTag Optional

Raw OpenStreetMap tags (key and value) of the feature, such as cuisine, wheelchair or wikidata. Tags already stored in other fields (name, website, phone, opening hours) and OpenStreetMap-internal tags (source, note, fixme) are left out. At most 60.

maxLength: 60 items
View raw schema
{
  "description": "Address and tags in OpenStreetMap's vocabulary: a copy of what OpenStreetMap knew about the linked feature at checkedAt, and/or what the person typed (editedAt). Data copied from OpenStreetMap is (c) OpenStreetMap contributors, available under the Open Database Licence (ODbL). Treat the values as suggestions: they can be wrong or out of date, and the user's own fields always win.",
  "properties": {
    "address": {
      "description": "The structured address OpenStreetMap has for the feature.",
      "ref": "#osmAddress",
      "type": "ref"
    },
    "checkedAt": {
      "description": "When the details were copied from OpenStreetMap. Absent for details that were only typed.",
      "format": "datetime",
      "type": "string"
    },
    "editedAt": {
      "description": "When the person last changed these details by hand, or typed them. Details with no checkedAt were never copied from OpenStreetMap.",
      "format": "datetime",
      "type": "string"
    },
    "tags": {
      "description": "Raw OpenStreetMap tags (key and value) of the feature, such as cuisine, wheelchair or wikidata. Tags already stored in other fields (name, website, phone, opening hours) and OpenStreetMap-internal tags (source, note, fixme) are left out. At most 60.",
      "items": {
        "ref": "#osmTag",
        "type": "ref"
      },
      "maxLength": 60,
      "type": "array"
    }
  },
  "type": "object"
}
osmTag object

One OpenStreetMap tag.

Properties

key string Required

The tag key, for example cuisine.

maxLength: 64 bytes
value string Required

The tag value, for example italian;pizza. Values over 255 characters are not stored.

maxLength: 1024 bytesmaxGraphemes: 255 graphemes
View raw schema
{
  "description": "One OpenStreetMap tag.",
  "properties": {
    "key": {
      "description": "The tag key, for example cuisine.",
      "maxLength": 64,
      "type": "string"
    },
    "value": {
      "description": "The tag value, for example italian;pizza. Values over 255 characters are not stored.",
      "maxGraphemes": 255,
      "maxLength": 1024,
      "type": "string"
    }
  },
  "required": [
    "key",
    "value"
  ],
  "type": "object"
}

Lexicon Garden

@