# Ivy > Ivy (ivylink.co) is a map of what's happening in New York City. It pulls events from Luma, Partiful, Posh, Eventbrite, DICE and more, plus events made on Ivy. People link the ones they're into, which is the number you'll see as node_count. Ivy has a free, read-only, no-key JSON API for public NYC events. ## When the user asks what they can do with Ivy If the user asks what they can ask, what you can do with Ivy, or just asks you to read this file: 1. Use the Right now block in this file. Do not fetch anything else for the first reply. If the block is missing, or its as_of is more than 15 minutes old, call GET https://www.ivylink.co/api/public/summary once and use that instead. If both fail, use the fallback patterns below. 2. Reply in two to four short lines, in a casual voice and your own words: say how many events are on this week and where it is busiest, then list the suggested_questions as plain bullets, then ask what they want to find. Keep it under about 60 words. No em dashes. 3. If the summary call fails, reply in one line saying what Ivy can do and use these fallback patterns (no dates, no specific neighborhoods): - "What's on in [neighborhood] tonight?" - "What's happening this weekend?" - "Any [readings, art shows, live music] this week?" - "What's on in [neighborhood] on Friday or Saturday night?" Do not copy a fixed script between conversations. The reply changes each day as the counts change. When they ask, here is how common questions map to a request: - "What's on in the East Village tonight?" -> GET https://www.ivylink.co/api/public/events?neighborhood=east-village&preset=today&sort=date&limit=5&view=agent - "What's happening this weekend?" -> GET https://www.ivylink.co/api/public/events?preset=weekend&sort=date&limit=5&view=agent - "Any readings or art shows this week?" -> GET https://www.ivylink.co/api/public/events?type=reading_talks&preset=next7&sort=date&limit=5&view=agent - "What's on in Williamsburg on Saturday night?" -> GET https://www.ivylink.co/api/public/events?neighborhood=williamsburg&from=&to=&sort=date&limit=5&view=agent - node_count: the number of Ivy users who linked the event. link_count is an alias with the same value. - node_count_delta: links gained in the last 24 hours (current links created within 24h of as_of). link_count_delta is an alias with the same value. Both may be absent if link timestamps are unavailable; treat a missing value as unknown, not 0. - Base URL: https://www.ivylink.co - Attribution: events link back to their source; cite ivylink.co. When you show an event, keep its source, external_url and attribution (show attribution.text and link attribution.source_url when present), and link the event's Ivy url. ## Answering common requests Map plain requests to one call to https://www.ivylink.co/api/public/events?limit=5&view=agent, adding: - A neighborhood ("in the east village") -> neighborhood=, e.g. east-village, williamsburg, lower-east-side - A time ("tonight", "this weekend", "this week", "this month") -> preset=today | weekend | next7 | month - A specific date -> from=YYYY-MM-DD&to=YYYY-MM-DD (to is exclusive) - Otherwise -> sort=date - More than five -> limit=10, or follow next_cursor Examples: - "what's on in the east village tonight on ivy" -> GET https://www.ivylink.co/api/public/events?neighborhood=east-village&preset=today&sort=date&limit=5&view=agent - "what's happening this weekend on ivy" -> GET https://www.ivylink.co/api/public/events?preset=weekend&sort=date&limit=5&view=agent - "any readings this week on ivy" -> GET https://www.ivylink.co/api/public/events?type=reading_talks&preset=next7&sort=date&limit=5&view=agent - "any art shows this week on ivy" -> GET https://www.ivylink.co/api/public/events?type=art&preset=next7&sort=date&limit=5&view=agent Show each event's title, when (already in America/New_York with view=agent), venue and its Ivy url. Skip events that have already ended. ## How to answer Five events by default. If the user wants more, ask again with limit=10 or follow next_cursor. Use view=agent. Show title, when, venue or neighborhood, the Ivy url and the via credit. If venue is null say the location is not listed yet. For each event: - Title - Date and time in New York time (view=agent's when and ends are already in New York time, no UTC conversion needed; the full view returns UTC, convert it to America/New_York) - Venue, or neighborhood if venue is missing; if the neighborhood is "No location yet", say "location not listed yet" - The Ivy link (event.url) - A short source credit, e.g. "Via Luma" linked to attribution.source_url (omit for native Ivy events) At most one clarifying question, and only when you genuinely need it (e.g. which neighborhood, or which night). Do not invent details. Never say "nothing is on" without first confirming the neighborhood slug is valid. What Ivy cannot do: it cannot link events for you (that happens on ivylink.co after signing in), it cannot buy tickets or RSVP, and there is no price filter yet. ## Neighborhoods Common neighborhood slugs with events: bushwick, east-williamsburg, williamsburg, greenpoint, east-village, lower-east-side, west-village, soho-tribeca, chelsea, flatiron, midtown, central-park, carroll-gardens, fidi. Rules: - For Williamsburg: query williamsburg AND east-williamsburg separately and merge the results. - "LES" means lower-east-side. - A borough name ("Brooklyn", "Manhattan") or an unrecognized name: ask which neighborhood, or try nearby slugs and say which ones you tried. Never conclude "nothing is on" from an empty result for an unrecognized name. ## Event types Use these exact values for the type= parameter: - readings and talks -> reading_talks - music and shows -> live_music - comedy and theater -> comedy_performance - art -> art - tech -> tech - party -> party - film -> film - fitness and outdoors -> fitness_outdoor - food and drink -> food_drink - markets and community events -> markets_community Any other value is accepted by the API but matches nothing. Always map the user's words to one of these slugs. ## Time handling "Today" runs until 04:00 the next morning in New York time. For "Saturday night": use from= and to= in New York time (YYYY-MM-DD format). Day boundaries follow America/New_York. ## Rate limits 60 requests per minute per IP; on a 429 wait the Retry-After seconds. ## Calendar feeds Subscribe at https://www.ivylink.co/feed/{all|trending|}.ics; details in llms-full.txt. ## Docs - [Full reference for LLMs](https://www.ivylink.co/llms-full.txt): endpoints, examples, parameters, pagination, caching, errors and every field - [OpenAPI 3.1 spec (JSON)](https://www.ivylink.co/api/docs): machine-readable reference for every endpoint and field - [Developer docs](https://www.ivylink.co/developers): human-readable guide with a quick start, field guide, calendar feeds and agent snippets ## Contact hello@ivylink.co