Search Calendar Events
search_calendar_eventsSearch for NIP-52 calendar events (date-based and time-based). Supports temporal filters (start/end time ranges), geohash location filtering, and hashtag filtering. Returns events from the configured calendar relay. When presenting an event to the user, render it as a markdown link: prefer the event url (the edufeed-app viewer at /, which shows fuller details) over sourcePage (the original external event page). Never construct an naddr or viewer URL yourself — use the naddr/url fields as returned.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| kinds | No | Event kinds to query (default: [31922, 31923]). 31922 = date-based, 31923 = time-based. | |
| limit | No | Maximum number of results (1-250, default: 20) | |
| query | No | Free-text topic for the events. Combines with a time range (startAfter/startBefore/endAfter/endBefore) in a single server-side query — e.g. "events about X in the next week" is one call. EXCEPTION: a geohash query forces the relay location index, which ignores this topic; for "events about X near a place" pass the geohash and filter the returned events by topic on the client. | |
| since | No | Return events created at or after this Unix timestamp | |
| until | No | Return events created at or before this Unix timestamp | |
| authors | No | Filter by author pubkeys (hex format) | |
| geohash | No | Geohash prefix for location-based search | |
| endAfter | No | Only events ending after this Unix timestamp | |
| hashtags | No | Filter by hashtags (e.g., ["meetup", "nostr"]) | |
| community | No | Return calendar events shared into this community (Communikey). Accepts a hex pubkey or npub; resolve a community name with resolve_author. Combines with a time range (startAfter/startBefore/endAfter/endBefore) in a single server-side query, so "events shared with X next week" is one call. EXCEPTION: a geohash query forces the relay location index, which ignores this community filter; for "shared with X near a place" pass the geohash and filter the returned events by community client-side. | |
| endBefore | No | Only events ending before this Unix timestamp | |
| startAfter | No | Only events starting after this Unix timestamp | |
| startBefore | No | Only events starting before this Unix timestamp |