Skip to main content

SearchResultFilters

Optional post-processing filters applied after suppliers respond, before the response is returned to the client. They reduce response size and remove options that do not match your selection criteria. All fields are optional; omitting resultFilters (or sending an empty object) is a no-op.

Filters are stackable: when several are set they are evaluated in a single pass as a logical AND (refundable AND boardCodes AND cheapestOnly).

cheapestOnlyboolean

When true, keep at most one option per (connectionCode, hotelCode) group — the cheapest one according to cheapestStrategy. Use this to reduce payload size on broad searches where the UI only needs one rate per hotel.

Example: true
refundableFilterRefundableFilter (string)

Tri-state filter on the cancellation policy of each option.

  • REFUNDABLE_FILTER_UNSPECIFIED (or omitted) — no filter.
  • REFUNDABLE_FILTER_ONLY_REFUNDABLE — keep only options whose cancelPolicy.refundable is true.
  • REFUNDABLE_FILTER_ONLY_NON_REFUNDABLE — keep only options whose cancelPolicy.refundable is false (or missing).

Possible values: [REFUNDABLE_FILTER_UNSPECIFIED, REFUNDABLE_FILTER_ONLY_REFUNDABLE, REFUNDABLE_FILTER_ONLY_NON_REFUNDABLE]

boardCodesstring[]

Whitelist of board codes (e.g. BB, HB, RO, AI). Comparison is case-insensitive (bb matches BB) against boardCode, falling back to providerBoardCode when the mapped code is empty. Empty array, null, or only-blank entries are treated as no filter. Up to 100 distinct codes are honored; extra entries are ignored defensively.

Example: ["BB","HB"]
cheapestStrategyCheapestStrategy (string)

Selects which price field is used to compare options when cheapestOnly is true.

  • CHEAPEST_STRATEGY_UNSPECIFIED — same as CHEAPEST_STRATEGY_SUGGESTED (default).
  • CHEAPEST_STRATEGY_SUGGESTED — compare by price.suggested (price after markup). Recommended for B2C displays where the customer-facing price drives the choice.
  • CHEAPEST_STRATEGY_NET — compare by price.net (supplier net price). Useful when markup configurations vary across hotels and you want the lowest supplier cost. When the requested currency is set, options matching it are preferred over options in a different currency, regardless of nominal price. Currency comparison is case-insensitive (eur and EUR are equivalent).

Possible values: [CHEAPEST_STRATEGY_UNSPECIFIED, CHEAPEST_STRATEGY_SUGGESTED, CHEAPEST_STRATEGY_NET]

SearchResultFilters
{
"cheapestOnly": true,
"refundableFilter": "REFUNDABLE_FILTER_UNSPECIFIED",
"boardCodes": [
"BB",
"HB"
],
"cheapestStrategy": "CHEAPEST_STRATEGY_UNSPECIFIED"
}