bymundi API

Get a trip template

GET/v1/trip-templates/{templateId}

Returns one trip template in full: its design (the route) and its block forest. Create a trip from it with POST /trips and templateId.

Permissions: catalog:read · Kind: read · Cost: 1 unit · MCP tool get_trip_template

Path parameters

Field Type Required Description
templateId uuid yes

Query parameters

None.

Response 200

Field Type Required Description
object "trip_template" yes
id uuid yes
title string yes
description string yes
tags string[] yes
coverUrl string | null yes
stopCount integer yes
updatedAt string yes
design object yes
design.version 1 yes
design.originCity string yes
design.stops object[] yes max 60 items
design.stops[].id string yes
design.stops[].city string yes
design.stops[].nights integer yes 0–365
design.stops[].transferBefore object | null yes
design.stops[].escala boolean default false
design.stops[].place object default {"placeId":"","lat":null,"lng":null,"formattedAddress":""}
design.returnCity string | null yes
design.returnTransfer object | null yes
design.returnTransfer.id string yes
design.returnTransfer.departDate string | null yes
design.returnTransfer.arriveDate string | null yes
design.returnTransfer.days integer 0–30, default 0
design.returnTransfer.departTime string default ""
design.returnTransfer.arriveTime string default ""
design.returnTransfer.flight object default {"flightNo":"","airline":"","fromAirport":"","toAirport":"","source":"","fetchedAt":"","scheduleValidFor":""}
design.originPlace object default {"placeId":"","lat":null,"lng":null,"formattedAddress":""}
design.originPlace.placeId string default ""
design.originPlace.lat number | null default null
design.originPlace.lng number | null default null
design.originPlace.formattedAddress string default ""
design.returnPlace object default {"placeId":"","lat":null,"lng":null,"formattedAddress":""}
design.returnPlace.placeId string default ""
design.returnPlace.lat number | null default null
design.returnPlace.lng number | null default null
design.returnPlace.formattedAddress string default ""
blocks object[] yes
proposals object[] | null yes The quotes a trip made from it starts with, as drafts; null on a template saved before proposals were kept.
proposals[].name string yes
proposals[].mode string yes package (one price, upgrade packages) or per_item (the customer picks lines).
proposals[].marginPct number yes
proposals[].lineCount integer yes
proposals[].wasAccepted boolean yes Accepted in the trip the template was saved from.
travelers integer | null yes The headcount a trip made from it starts with.
presentation object | null yes The branding a trip made from it starts with.
baseStartDate string | null yes The start date of the trip it was saved from; a new trip's dates shift relative to it.

Errors

Errors are problem details. Besides the refusals described above, any call like this one can return: