Search URLs#

Wheel encodes the full search state in the URL hash. Copying the browser URL captures every active search mode, filter, and parameter, which makes it possible to bookmark a slice, share it with a colleague, or paste it into a tracker as a reproducible reference. The same encoding is also useful when constructing a link to Wheel programmatically, for example from a notebook, a script, or the Agent Interface.

This page documents the URL structure and lists the parameters that correspond to each search mode in Search. Every parameter described here can also be set through the UI controls; the URL is just the serialised form of the same configuration.

URL Structure#

A Wheel search URL has the form:

http://your-wheel-server/#&page=0&<key>=<value>&<key>=<value>...

The fragment starts with #& (the leading & is intentional and is part of how Wheel parses the hash) and is followed by key=value pairs joined by &. page=0 selects the first page of results and is usually included when sharing a URL.

Encoding rules:

  • Values are URL-encoded. Spaces are encoded as %20 (not +), and symbols such as > or & inside a value are percent-encoded.

  • Multi-value filters are joined with the literal token || (encoded as %7C%7C). The exceptions are cluster_ids and wm_angle_range, which use a single comma.

  • Boolean values are serialised as the strings true and false.

  • Omitted parameters fall back to their defaults. project_source defaults to Alpamayo and is the only field that has a meaningful implicit default; everything else is simply unset when absent.

Common Parameters#

These parameters apply across all search modes and define which project, which datasets, and how results are ordered.

Parameter

Description

Notes

page

Result page index, starting at 0.

Integer.

project_source

One or more project names whose annotations and labels are loaded.

|| separated. Defaults to Alpamayo.

data_source

One or more datasets to restrict the search to. Examples currently documented include MADS, MADS-1M, AV V1 train, AV V1 validation, AV V2 train, AV V2 validation, Nexar, ncore-lidar-model-static-full, and vipe-dynpose100kpp. The full list is deployment-specific and is shown in the Data Source dropdown of the search panel.

|| separated. See Metadata Search.

data_source_mode

Combination rule when multiple data sources are selected: any (clip belongs to at least one) or all (clip belongs to every listed source).

Defaults to any.

rank_mode

Ordering strategy when multiple ranked search modes are active. priority (default) uses the fixed priority order described in Search. rrf merges the active ranked modes with reciprocal rank fusion, giving each mode comparable influence on the final order.

Defaults to priority.

Metadata and Annotation Filters#

Parameters that drive Metadata Search.

Parameter

Description

filter

||-separated list of annotation labels that clips must match.

filter_mode

any (default) or all. Combination rule for the values in filter.

labels_to_exclude

||-separated list of annotation labels that clips must not carry.

labels_to_exclude_mode

any (default) or all. Combination rule for labels_to_exclude.

label_types

||-separated list of label types to scope filter and labels_to_exclude to.

without_ann

true restricts to clips with no annotations of the active project, useful for prioritising labelling work.

search_clipid

Exact clip identifier. Surfaces a single clip by ID.

search_country

Filter clips by the recorded country using official two-letter country codes only. Format: ISO 3166-1 alpha-2 (e.g., Switzerland = CH, USA = US, Germany = DE).

left_hand_driving

true restricts to left-hand-drive recordings.

numeric_filter

||-separated list of numeric metric filters. Each filter has the form <metric_key>,<min>,<max>,<ordering>. Setting ordering to asc or desc makes the metric the active ranked mode.

Display Toggles#

These parameters do not change which clips are returned, only how they are displayed in the result grid.

Parameter

Description

times

true shows time-range badges on each clip card when annotations are time-scoped.

with_metrics

true overlays per-clip model evaluation metrics on each card.

with_bev

true adds the bird’s-eye-view visualisation to each card.

n

Number of clips per result page. Defaults to 6 and is included in the URL only when changed from the default.

Worked Examples#

The examples below show how a natural-language description of a slice maps to the corresponding URL.

Caption keyword search restricted to a dataset

“Find ambulance footage in MADS-1M.”

http://your-wheel-server/#&page=0&search=ambulance&data_source=MADS-1M&project_source=Alpamayo

Caption keyword combined with semantic retrieval and query rewriting

“Show me clips mentioning officer while semantically related to a construction zone, with rewriting on, in AV V1.”

http://your-wheel-server/#&page=0&search=officer&semantic_search_text=construction%20zone&semantic_extra_queries=road%20work%7C%7Cconstruction%20cones%7C%7Corange%20barrels&data_source=AV%20V1%20train%7C%7CAV%20V1%20validation&project_source=Alpamayo

Classifier filter with a probability threshold

“All clips that the Barrier gate classifier scores above 0.95.”

http://your-wheel-server/#&page=0&classifier_run_id=<classifier_run_id>&probability_expression=p%20%3E%200.95&project_source=Alpamayo

Replace <classifier_run_id> with the id of a trained classifier run (set automatically when you select a classifier in the UI).

Common Patterns#

Working with URLs directly is most useful for:

  • Sharing and bookmarking: paste the current URL into a tracker, a message, or a doc to give a colleague the exact slice you are looking at.

  • Programmatic links: build a URL from a notebook or script when presenting a slice for review, for example after running a custom query through WheelClient and wanting to surface the same results in the browser.

  • Adjusting filters by hand: tweaking a single parameter in the URL bar is sometimes faster than navigating the UI, especially when iterating on a long composed query.

For most interactive use, configuring the search through the UI panels is the natural path; the URL is the serialisation, not the primary interface.