Venue
Status
API Documentation
Free, public, no API key required. Data is scraped directly from each venue's own website.
https://eventcalendarmtl.com
Returns all shows currently in the database.
Query parameters (both optional):
venue — filter by venue name. Partial, case-insensitive match (e.g. ?venue=espace matches both Espace Go and Espace Libre).
status — filter by upcoming, ongoing, or ended.
GET /api/v1/shows?venue=TNM&status=upcoming
{
"count": 3,
"shows": [
{
"venue": "TNM",
"title": "L'Orestie",
"dates": { "start": "2026-09-22", "end": "2026-10-25" },
"url": "https://tnm.qc.ca/2026-2027/lorestie",
"status": "upcoming"
}
]
}
Returns a single show by its database ID. IDs are not predictable — get one from the _id field returned by /api/v1/shows first, then use it here.
// Step 1 — get an _id from the list endpoint
GET /api/v1/shows?venue=TNM
{
"shows": [
{ "_id": "670a1b2c3d4e5f6a7b8c9d0e", "title": "L'Orestie", ... }
]
}
// Step 2 — use that _id here
GET /api/v1/shows/670a1b2c3d4e5f6a7b8c9d0e
{
"venue": "TNM",
"title": "L'Orestie",
"dates": { "start": "2026-09-22", "end": "2026-10-25" },
"url": "https://tnm.qc.ca/2026-2027/lorestie",
"status": "upcoming"
}
Returns an .ics calendar file, subscribable in Google Calendar, Apple Calendar, or Outlook.
Query parameters (optional):
venue — repeatable, to include multiple venues (e.g. ?venue=TNM&venue=Centaur). Omit entirely to include every venue.
GET /api/v1/calendar?venue=TNM&venue=Centaur
→ downloads montreal-theatre.ics