The Mouve API is in active development and not yet live. Follow the changelog for the launch announcement.

Mouve Developers
GuidesVenues

Import format

The JSON Lines format for moving spaces, hours, prices, members and bookings from another booking system into Mouve. A v2 preview.

Preview: not yet available. Import is planned for v2. The format is published now so tools can target it early.

An import file is JSON Lines: one JSON object per line. Each line is checked against venue-import-v1.

Rows

typeHolds
spaceA court, room, zone or lane
hoursOpening hours for a weekday, for one space or the whole venue
price_ruleA price for a time window
memberA venue customer record
bookingA future booking

Every row has an external_id: the row's stable id in the old system. Run the import again and Mouve updates the row. It does not add a copy.

Rows refer to each other by external id: a booking has space_external_id and member_external_id.

Rules

  • Times are HH:MM local time. Booking times are RFC 3339 with an offset.
  • Money is an integer in minor units with an ISO 4217 currency.
  • Members are customer records of the venue. They are not Mouve users, and they get no email unless the owner chooses to invite them.
  • Never put the old system's password or API key in the file. Mouve does not need them.

Example

{"type":"space","external_id":"c1","name":"Court 1","kind":"court","sport":"padel","indoor":true,"capacity":4}
{"type":"price_rule","external_id":"p-evening","name":"Weekday evening","weekdays":["mon","tue","wed","thu","fri"],"from":"16:00","to":"23:00","amount_minor":3600,"currency":"EUR"}
{"type":"booking","external_id":"b-5521","space_external_id":"c1","starts_at":"2026-12-01T18:00:00+02:00","ends_at":"2026-12-01T19:00:00+02:00"}

On this page