app.zeens.getEvents

Browse events. Defaults to upcoming events (startsAt >= now) ordered by startsAt ascending with a stable uri tie-breaker. Supports multi-value category filtering (OR-matched), mode filtering (in person / online / hybrid), and nearby filtering (lat/lng/radius, reusing the getNearbyPhotos coordinate convention).

Repository @zeens.app did:plc:pwpuqwge6g7xrjmfbw73uycw namespace authority
Details · query
Kindquery
Authorityzeens.app
Indexed
cid bafyreidgcv6m26ts7ukl4batvkzv745vubsxawmeduq7h3qmco7dzvgtye

Checks

Valid
JSONDownload
{
  "$type": "com.atproto.lexicon.schema",
  "defs": {
    "main": {
      "description": "Browse events. Defaults to upcoming events (startsAt >= now) ordered by startsAt ascending with a stable uri tie-breaker. Supports multi-value category filtering (OR-matched), mode filtering (in person / online / hybrid), and nearby filtering (lat/lng/radius, reusing the getNearbyPhotos coordinate convention).",
      "output": {
        "encoding": "application/json"
      },
      "parameters": {
        "properties": {
          "category": {
            "description": "Restrict to events carrying any of these category values. Accepts a single value or a comma-separated list, OR-matched against the event's categories array (categories are multi-value: an event can be both a photowalk and a meetup).",
            "type": "string"
          },
          "cursor": {
            "type": "string"
          },
          "filter": {
            "default": "upcoming",
            "description": "Time window relative to now. 'upcoming_first' is the one-list browse: every event, soonest upcoming first, past events below most-recent-first.",
            "knownValues": [
              "upcoming",
              "past",
              "all",
              "upcoming_first"
            ],
            "type": "string"
          },
          "lat": {
            "description": "Center latitude in microdegrees (x1e7) for a nearby search.",
            "type": "integer"
          },
          "limit": {
            "default": 36,
            "maximum": 100,
            "minimum": 1,
            "type": "integer"
          },
          "lng": {
            "description": "Center longitude in microdegrees (x1e7) for a nearby search.",
            "type": "integer"
          },
          "mode": {
            "description": "Restrict to events happening this way. Stored values are normalised on read (absent -> 'in_person', legacy 'virtual' -> 'online'). A 'hybrid' event matches an 'in_person' or an 'online' request as well as an explicit 'hybrid' one, because it genuinely is both.",
            "knownValues": [
              "in_person",
              "online",
              "hybrid"
            ],
            "type": "string"
          },
          "radiusKm": {
            "description": "Radius in km for a nearby search. Requires lat + lng.",
            "maximum": 500,
            "minimum": 1,
            "type": "integer"
          },
          "viewer": {
            "format": "did",
            "type": "string"
          }
        },
        "type": "params"
      },
      "target_collection": "app.zeens.event",
      "type": "query"
    }
  },
  "id": "app.zeens.getEvents",
  "lexicon": 1
}