find_best_sailings
Decision query: the best upcoming sailings on a lane, ONE per carrier (next bookable departure), ranked. Filter by date window, max transit days, min on-time reliability, cut-off still open, and direct-vs-transshipment. Use this to answer "what should I book?". etd, eta, cutoff.at and the from/to window are port-local times with no timezone offset (2026-10-01T13:00:00): quote the digits, do not convert; only retrieved_at is UTC.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| to | No | Latest departure date YYYY-MM-DD (default: +60 days) | |
| from | No | Earliest departure date YYYY-MM-DD (default: today) | |
| sort | No | Ranking (default recommended = reliability blended with transit) | |
| cutoff | No | Only sailings whose booking cut-off has not passed. Sailings where no cut-off is held are kept by default; each option carries cutoff_status saying which case it is. | |
| origin | Yes | Origin port UN/LOCODE or name resolves upstream, e.g. CNSHA | |
| destination | Yes | Destination port UN/LOCODE, e.g. NLRTM | |
| transshipment | No | true keeps only sailings that change ship, false only sailings proven direct. Omit it for both: a sailing whose routing we do not hold is returned by neither side, because we will not call a sailing direct without evidence. | |
| max_transit_days | No | Maximum transit time in days | |
| reliability_floor | No | Minimum 90-day on-time %, 0-100 | |
| cutoff_include_unknown | No | Default true. false narrows to sailings where a deadline is actually held and still ahead. |