From d3c74e8048d792804a27c2ce080c7effa47de3c4 Mon Sep 17 00:00:00 2001 From: Mofei Zhu Date: Mon, 5 Oct 2026 18:01:43 +0300 Subject: [PATCH 1/3] Remove ETA flags from search forward and search category ETA results are gated by a per-account feature flag, so for most accounts --eta-type, --navigation-profile and --origin were accepted but never added an ETA to the response. Drop them rather than expose flags that silently do nothing for most users. --- CHANGELOG.md | 7 ++++ custom-openapi/search/openapi/search.yaml | 50 ----------------------- docs/commands.md | 2 - 3 files changed, 7 insertions(+), 52 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 42df219..79e0817 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -19,6 +19,13 @@ that may never merge. They are not releases and are not listed here. ## Unreleased +- **Breaking**: `--eta-type`, `--navigation-profile` and `--origin` removed + from `mapbox search forward` and `mapbox search category`. ETA results + are gated by a per-account feature flag, so for most accounts the flags + were accepted but never added an ETA to the response. A script that + passes them now fails with an unknown-argument error; drop the flags. + (#76) + - **Breaking**: `--exclude-fields` removed from `mapbox search forward` and `mapbox search category`. The `photos` and `reviews` fields it omitted are only returned for accounts with a specific data provider diff --git a/custom-openapi/search/openapi/search.yaml b/custom-openapi/search/openapi/search.yaml index 69ad746..5f4796c 100644 --- a/custom-openapi/search/openapi/search.yaml +++ b/custom-openapi/search/openapi/search.yaml @@ -223,31 +223,6 @@ paths: and fuzzy matches. schema: type: boolean - - name: "eta_type" - in: query - required: false - description: >- - Enable ETA calculation in the response. The only allowed value - is `navigation`; also requires `navigation_profile` and either - `origin` or `proximity`. - schema: - type: string - enum: ["navigation"] - - name: "navigation_profile" - in: query - required: false - description: "When ETA calculation is enabled, the routing profile to use." - schema: - type: string - enum: ["driving", "walking", "cycling"] - - name: "origin" - in: query - required: false - description: >- - When ETA calculation is enabled, the location to calculate - distance from, as `longitude,latitude`. - schema: - type: string responses: "200": description: A GeoJSON FeatureCollection of matching features. @@ -488,31 +463,6 @@ paths: description: "When SAR is enabled, maximum detour allowed in estimated minutes from the route." schema: type: number - - name: "eta_type" - in: query - required: false - description: >- - Enable ETA calculation in the response. The only allowed value - is `navigation`; also requires `navigation_profile` and either - `origin` or `proximity`. - schema: - type: string - enum: ["navigation"] - - name: "navigation_profile" - in: query - required: false - description: "When ETA calculation is enabled, the routing profile to use." - schema: - type: string - enum: ["driving", "walking", "cycling"] - - name: "origin" - in: query - required: false - description: >- - When ETA calculation is enabled, the location to calculate - distance from, as `longitude,latitude`. - schema: - type: string responses: "200": description: A GeoJSON FeatureCollection of matching features. diff --git a/docs/commands.md b/docs/commands.md index 87ade35..85aaafd 100644 --- a/docs/commands.md +++ b/docs/commands.md @@ -1385,7 +1385,6 @@ session behind it. | `--auto-complete` | Include partial and fuzzy matches, for autocomplete-style input. | | `--sar-type isochrone` + `--route ` + `--route-geometry ` | Search-along-route: results near a route rather than a point. | | `--time-deviation ` | With SAR, maximum detour allowed from the route. | -| `--eta-type navigation` + `--navigation-profile ` + `--origin ` | Include an ETA in each result, from `--origin` (or `--proximity`) to it. | #### Examples @@ -1498,7 +1497,6 @@ here enforces it before the request goes out. | `--language ` | ISO language code. | | `--sar-type isochrone` + `--route ` + `--route-geometry ` | Search-along-route: results near a route rather than a point. | | `--time-deviation ` | With SAR, maximum detour allowed from the route. | -| `--eta-type navigation` + `--navigation-profile ` + `--origin ` | Include an ETA in each result, from `--origin` (or `--proximity`) to it. | #### Examples From b537bb60f39d465c4b4b74cde1cd7faf0b765246 Mon Sep 17 00:00:00 2001 From: Mofei Zhu Date: Tue, 6 Oct 2026 18:30:15 +0300 Subject: [PATCH 2/3] Keep ETA flags on search forward Per the Search team, forward returns an ETA without the feature flag; only category is gated. Restore the flags on forward and remove them from category only, until category supports ETA for every account. --- CHANGELOG.md | 10 ++++----- custom-openapi/search/openapi/search.yaml | 25 +++++++++++++++++++++++ docs/commands.md | 1 + 3 files changed, 31 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 79e0817..193c368 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,11 +20,11 @@ that may never merge. They are not releases and are not listed here. ## Unreleased - **Breaking**: `--eta-type`, `--navigation-profile` and `--origin` removed - from `mapbox search forward` and `mapbox search category`. ETA results - are gated by a per-account feature flag, so for most accounts the flags - were accepted but never added an ETA to the response. A script that - passes them now fails with an unknown-argument error; drop the flags. - (#76) + from `mapbox search category`. The category endpoint only returns an ETA + for accounts with a feature flag enabled, so for most accounts the flags + were accepted but never added one to the response. A script that passes + them now fails with an unknown-argument error; drop the flags. They stay + on `mapbox search forward`, which returns an ETA without the flag. (#76) - **Breaking**: `--exclude-fields` removed from `mapbox search forward` and `mapbox search category`. The `photos` and `reviews` fields it diff --git a/custom-openapi/search/openapi/search.yaml b/custom-openapi/search/openapi/search.yaml index 5f4796c..f229d00 100644 --- a/custom-openapi/search/openapi/search.yaml +++ b/custom-openapi/search/openapi/search.yaml @@ -223,6 +223,31 @@ paths: and fuzzy matches. schema: type: boolean + - name: "eta_type" + in: query + required: false + description: >- + Enable ETA calculation in the response. The only allowed value + is `navigation`; also requires `navigation_profile` and either + `origin` or `proximity`. + schema: + type: string + enum: ["navigation"] + - name: "navigation_profile" + in: query + required: false + description: "When ETA calculation is enabled, the routing profile to use." + schema: + type: string + enum: ["driving", "walking", "cycling"] + - name: "origin" + in: query + required: false + description: >- + When ETA calculation is enabled, the location to calculate + distance from, as `longitude,latitude`. + schema: + type: string responses: "200": description: A GeoJSON FeatureCollection of matching features. diff --git a/docs/commands.md b/docs/commands.md index 85aaafd..0b8c45b 100644 --- a/docs/commands.md +++ b/docs/commands.md @@ -1385,6 +1385,7 @@ session behind it. | `--auto-complete` | Include partial and fuzzy matches, for autocomplete-style input. | | `--sar-type isochrone` + `--route ` + `--route-geometry ` | Search-along-route: results near a route rather than a point. | | `--time-deviation ` | With SAR, maximum detour allowed from the route. | +| `--eta-type navigation` + `--navigation-profile ` + `--origin ` | Include an ETA in each result, from `--origin` (or `--proximity`) to it. | #### Examples From 0425a2d228ae9c1fd6153ce123da9ae4d62855d2 Mon Sep 17 00:00:00 2001 From: Mofei Zhu Date: Tue, 6 Oct 2026 18:35:17 +0300 Subject: [PATCH 3/3] Reword category ETA changelog entry --- CHANGELOG.md | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 193c368..21869bb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,11 +20,10 @@ that may never merge. They are not releases and are not listed here. ## Unreleased - **Breaking**: `--eta-type`, `--navigation-profile` and `--origin` removed - from `mapbox search category`. The category endpoint only returns an ETA - for accounts with a feature flag enabled, so for most accounts the flags - were accepted but never added one to the response. A script that passes - them now fails with an unknown-argument error; drop the flags. They stay - on `mapbox search forward`, which returns an ETA without the flag. (#76) + from `mapbox search category`. The category endpoint does not currently + return an ETA, so the flags were accepted but had no effect. A script + that passes them now fails with an unknown-argument error; drop the + flags. `mapbox search forward` keeps them. (#76) - **Breaking**: `--exclude-fields` removed from `mapbox search forward` and `mapbox search category`. The `photos` and `reviews` fields it