Every AutoViz tool URL accepts query-string parameters that toggle UI affordances, swap tools, pre-select brands, and control SDK behaviour. They can be passed:
- as URL query params on a configurator / viewer / catalog link (e.g.
?theme=dark&hide_back_button=true)
- as
data-* attributes on an SDK launch button (e.g. data-theme="dark")
- as the
__feature_flags object an integration's SDK forwards to the iframe
- baked into a catalog row's
default_value per integration (admin-editable)
Layering precedence (lowest → highest):
- Hardcoded app defaults
- Per-integration defaults (admin-editable)
- URL query string parameters (always win)
Boolean params accept true / false / 1 / 0. Empty string = unset, falls back to the layer below.
UI controls
| Param | Default | Description |
|---|
theme | resolved | dark or light. Persists in localStorage. |
theme_toggle_button | true | Show / hide the theme toggle. |
background | true | Show the scene background. |
background_color_dark_mode | '' | Hex color (without #) for dark-theme scene background. Empty = theme default 272727. |
background_color_light_mode | '' | Hex color (without #) for light-theme scene background. Empty = theme default ffffff. |
primary_color | '' | Hex color (without #) for primary buttons / highlights / spin loader. |
model_shadow | true | Contact shadow under the model. |
model_prevent_view_under | false | Clamp the camera so the viewer cannot orbit below the model. Part-type rule still applies when false. |
model_prevent_view_back | false | Clamp the camera's azimuthal range to ±π/2 around the front. |
auto_rotate_restart | true | Restart auto-rotate after a timeout with no user activity. |
audio | false | Enable audio. |
audio_toggle_button | false | Show / hide the audio toggle. |
hide_header_model_name | false | Hide the model name in the header. |
hide_navigation | false | Hide top-level navigation. |
hide_back_button | false | Hide the in-tool back button. |
hide_info_footer | false | Hide the footer info strip. |
hide_upload_image_swatch | false | Hide the "upload custom swatch" affordance. |
marketing_site_button | true | Show / hide the marketing-site CTA. |
wheel_catalog_button | true | Show / hide the home Wheel Catalog button. |
force_physical_material | false | Force all materials to render as MeshPhysicalMaterial. |
configurator_dropdown_model_selector | true | Show the model-selector dropdown in the configurator header. |
variant_menu | true | Show the variant (chip) menu. |
Property selection & reachability
| Param | Default | Description |
|---|
enable_dependent_property_dropdowns | true | Gate unreachable property values as disabled chips and auto-snap stale deep links to a reachable neighbour. |
enable_dependent_property_dropdowns_free_click | true | Unreachable dropdown items become clickable; other properties snap around the clicked value. |
variants_hidden_if_properties | true | When true, a wheel renders EITHER the legacy variant picker OR the property/finish UI, never both. |
| Param | Default | Description |
|---|
model_property_swap_crossfade | false | Optional 300ms crossfade on size / lug property swaps. Default false = instant swap. |
enable_catalog_prefetch_on_scene_ready | false | Background-warm the catalog dropdown's data cache after model load completes. |
use_combined_assembled_fetch | true | Use the combined assembled-with-subparts endpoint for assembled-model load. |
feature_flag_progressive_swatches | true | Use the progressive swatch UI. |
Each tool can be enabled / disabled per integration. Canonical names are tool_<name>_enabled. The SDK translates legacy aliases (see_in_my_space, see_on_vehicle, ar_try_on, wheel_swap) on the way in.
| Param | Default | Description |
|---|
tool_viewer_enabled | true | Enable the Viewer tool. |
tool_configurator_enabled | true | Enable the Configurator tool. |
tool_catalog_enabled | true | Enable the Catalog tool. |
tool_see_in_my_space_enabled | true | Enable "See in My Space" CTA. |
tool_see_on_vehicle_enabled | true | Enable "See on Vehicle" CTA. |
tool_wheel_swap_enabled | true | Enable "Wheel Swap" CTA. |
tool_ar_try_on_enabled | false | Enable AR Try-On CTA. Off by default; admins opt IN. |
CTA gates
| Param | Default | Description |
|---|
request_quote | true | Show the Request Quote CTA. |
hide_quote_request | false | Hide the Request Quote CTA (legacy inverse of request_quote). |
show_build_certificate | false | Show the build certificate CTA. |
SDK / embedding
| Param | Default | Description |
|---|
custom_mode | false | Custom integration mode. Renamed from client_view → customizations_mode → custom_mode. |
back_button_closes_iframe | false | Back button closes the embedding iframe instead of navigating back. |
close_iframe_without_refresh | true | Close iframe without refreshing the parent page. |
enable_share_sessions | true | Share-session URL codes (?avs_<code>) for stable external share links. |
assembler_remote_active | true | Use the remote assembler service for GLB assembly. |
Auto-launch
Open a tool automatically on page load.
| Param | Default | Description |
|---|
auto_launch_sims | false | Auto-launch "See in My Space" on load. |
auto_launch_ato | false | Auto-launch "ATO" tool on load. |
auto_launch_ws | false | Auto-launch Wheel Swap on load. |
Viewer
| Param | Default | Description |
|---|
viewer_button_x | true | Show the X close button in the viewer. |
viewer_sims_button | true | Show the "See in My Space" button in the viewer. |
viewer_ws_button | true | Show the Wheel Swap button in the viewer. |
viewer_configurator_button | true | Show the "Customize" button that opens the configurator. |
viewer_configurator_button_icon | '' | Icon name to use on the customize button (empty = default). |
viewer_append_finish_name | true | Append the finish name to the model display name in the viewer. |
viewer_finish_change_reassemble | false | Reassemble the model when the finish changes. |
viewer_show_brand_logo | true | Show the brand logo in the viewer. |
viewer_show_expand_button | false | Show the expand-to-fullscreen button. |
variant_dropdown_title_metakey | '' | When set to a metakey (e.g. finish_description), the variant dropdown labels each item with part.meta_values[<metakey>] instead of display_name. Empty / missing / empty value falls back to display_name. |
Configurator
| Param | Default | Description |
|---|
configurator_hide_catalog_dropdown | false | Hide the catalog dropdown in the configurator header. |
configurator_brand_image_desktop | true | Show the brand image / logo on desktop. |
configurator_brand_image_mobile | true | Show the brand image / logo on mobile. |
Catalog
| Param | Default | Description |
|---|
catalog_link_to_viewer | false | Card click opens the viewer. |
catalog_card_target | 'detail' | Where catalog cards link. One of 'detail' (in-catalog detail view), 'viewer', 'configurator'. |
catalog_hide_header | false | Hide the catalog header. |
catalog_hide_back_button | false | Hide the catalog back button. |
catalog_hide_search_bar | false | Hide the catalog search bar. |
catalog_button_home | true | Show / hide the home button on the catalog. |
catalog_card_logo | true | Show the brand logo on each catalog card. |
catalog_card_subtitle_metakey | '' | When set to a metakey (e.g. finish_description, short_finish, sub_brand), renders part.meta_values[<metakey>] under the model name as a subtitle. Empty / missing / empty value falls back to a single-line layout. |
catalog_selection_variant_sync | false | Catalog dropdown trigger follows the active variant's display_name instead of the stored baseModelName. Off by default because brands whose variants share a family name want the dropdown to keep showing the family. |
catalog_sort_featured_first | false | Sort catalog so featured items appear first. |
catalog_mobile_footer | false | Show a mobile footer on the catalog. |
catalog_filter_convention_toggle | true | Show the Inclusive / Exclusive toggle in the Filter popover. |
catalog_filter_convention_default | 'or' | Default filter convention: 'or' (inclusive — match any selected value) or 'and' (exclusive — must match every selected value). URL `?filter_convention=and |
seo_optimized | true on demo.autoviz.io, else false | SEO: render catalog cards + the home Wheel Catalog button as crawlable <a href> links. |
Brand & group selection
| Param | Default | Description |
|---|
only_brand | '' | Restrict the configurator / catalog to a single brand (slug). |
brand_id | 0 | Numeric or string brand id. |
brand_ids | '' | Comma-separated list of brand ids. |
brand_internal_id | '' | Internal brand id (admin-side). |
brand_group | '' | Brand group slug. |
group | '' | Product group identifier (e.g. apex-pro). |
select_field | '' | Field to use for selection mapping (e.g. finish_name). |
select_current | '' | Current value for the selected field. |
finish_name | '' | Finish name slug to pre-select on load. |
Model & path
| Param | Default | Description |
|---|
model_src | '' | Direct GLB URL override. |
path_id | '' | Specific path id to load. |
path_id_ext | '' | Extension qualifier on path_id. |
parts_exclude_list | '' | Comma-separated part ids to exclude from rendering. |
build_id | '' | Identifier for a stored build / configuration. |
Query filters
| Param | Default | Description |
|---|
custom_query_filters | '' | Custom filter expression applied at query time. |
custom_query_current_property | '' | Current property targeted by custom query filters. |
Operational params
These aren't in FEATURE_PARAMS_CONFIG but are read by other parts of the stack:
| Param | Surface | Description |
|---|
finish_id | Configurator / Viewer | Numeric id of the operator-curated finish entity to pre-select. Survives Reset All so the seeder can re-apply the same finish from the surviving id. |
nocache | Proxy worker / app | Bypass the proxy cache AND bust it (the fresh response replaces the cached one for the next normal request). Useful when you want subsequent visitors to see fresh output. |
skipcache | Proxy worker / app | Bypass the proxy cache for this request only — the existing cached entry is preserved untouched. Useful when validating fresh worker output without affecting other visitors. |
filter_<slug> | Catalog | Filter the catalog list by property slug. Example: ?filter_lug-pattern=8-lug. |
avs_<code> | Share sessions | Resolve a share-session code to its stored configuration on load. |
Swatch params
Per-part finish state is encoded as <part>_<suffix> query keys where suffix is one of:
_c — color
_t — finish type (solid, metallic, tint, preconfig)
_s — sheen (gloss, satin, matte)
_b — base material (for tint finish; e.g. raw-milled, polished, brushed)
_p — preconfig swatch (for plated finishes)
_f — full finish name (legacy)
Examples:
face_t=tint&face_b=raw-milled&face_s=gloss&face_c=clear
barrel_t=metallic&barrel_s=gloss&barrel_c=silver
cap_logo_t=solid&cap_logo_s=satin&cap_logo_c=black
Group keys follow the same pattern with a _group infix when the wheel uses property grouping:
face_group_t=tint&face_group_b=brushed&face_group_s=satin&face_group_c=phoenix-gold
Hostname-based env routing
These hostnames are recognised by the SDK and worker as canonical surfaces — they aren't query params, but they shape every load:
| Hostname | Status filter | Robots |
|---|
app.autoviz.io | LIVE only | Allow |
preview.autoviz.io | LIVE only, no proxy cache | Disallow |
demo.autoviz.io | LIVE only | Allow |