---
title: "Developers · OpenVibe.Tours"
canonical: "https://openvibe.tours/developers"
updated: null
---

# Developers · OpenVibe.Tours

HTML: [Developers · OpenVibe.Tours](https://openvibe.tours/developers)

For developers

# The OpenVibe.Tours API

Reads are public. A trip write is a signed-in Network person (the tours\_at cookie or a Bearer user token); a session write must come from openvibe.tours itself. No route needs a service token. Errors are application/problem+json with a stable code.

| Route | What it does | Query or body |
| --- | --- | --- |
| `GET /api/v1/cities` | the catalogue, newest population first | `?limit=&offset=&q=` |
| `GET /api/v1/cities/:slug` | one city, its places and routes | `?slug=lisbon` |
| `GET /api/v1/places/:id` | one OpenStreetMap place with source and fetch time | — |
| `GET /api/v1/routes/:id` | one route with its ordered, cited stops | — |
| `GET /api/v1/live` | IRL tours now and recent IRL VODs | — |
| `GET /api/v1/trips` | the signed-in person's trips | — |
| `POST /api/v1/trips` | create a trip { title, city\_slug, starts\_on, ends\_on, notes? } | — |
| `GET /api/v1/trips/:slug` | your trip, or one shared with you | — |
| `PATCH /api/v1/trips/:slug` | edit title, city, dates or notes (owner, or Specific people with Can edit); the audience is the Share sheet's | — |
| `DELETE /api/v1/trips/:slug` | delete your trip | — |
| `POST /api/v1/trips/:slug/places` | save a place { place\_id, note? } | — |
| `POST /api/v1/trips/:slug/route` | set the trip's route { route\_id } | — |
| `POST /api/v1/trips/:slug/stays` | add a stay { stay\_id } | — |
| `GET /api/v1/openapi.json` | the OpenAPI 3.1 document | — |

## OpenAPI

[/api/v1/openapi.json](/api/v1/openapi.json) · [llms.txt](/llms.txt) · [sitemap.xml](/sitemap.xml)

## Sources and licences

- OpenStreetMap via Overpass, ODbL 1.0; every place links its OSM object.
- Wikivoyage, CC BY-SA 4.0; every route stop links the page it came from.
- Wikidata, CC0; cities keep their Q id and every image keeps its Commons licence.
- OpenVibe.Live and OpenVibe.Rent public APIs; read-only, never a token.

## Source jobs

Each job records its run in tours\_job\_runs. Off under TOURS\_DRILL; the intervals are env names in the README.

- **cities** ok · 2026-11-12 22:45:10 UTC
- **live** ok · 2026-11-13 07:19:48 UTC
- **photos** ok · 2026-11-13 07:17:55 UTC
- **places** partly fetched · 2026-11-09 21:43:54 UTC
- **routes** ok · 2026-11-08 03:11:33 UTC
- **stays** ok · 2026-11-13 06:27:53 UTC
