# `ActivateAROptions`

> Contract 2.0.0 · package sha256 `a857eca95b35921109faf997094bb4192f12527d9d0fcd4be7e97f06425bad6e` · generated from `configurator-runtime.d.ts` by `services/onsite-scripter/scripts/build-contract-docs.mjs`; edit the source, not this file.

Interface · `import type { ActivateAROptions } from '@holostep-configurators/runtime-client/contract';` · stable · since 2.0.0 · section 16. Capture, export, AR

What [`activateAR`](Session.activateAR.md) takes. Its URLs are input only: never returned by any read.

## Members

| Member | Kind | Summary |
| --- | --- | --- |
| <a id="glburl"></a>[`glbUrl?`](ActivateAROptions.glbUrl.md) | property | The GLB Scene Viewer opens: an http(s) URL, never a `.holo` (Scene Viewer runs outside the page, so it can't read a `blob:` URL either). |
| <a id="usdzurl"></a>[`usdzUrl?`](ActivateAROptions.usdzUrl.md) | property | The USDZ iOS Quick Look opens: a hosted http(s) URL, or a `blob:` URL of a USDZ, such as one made from [`session.export({ format: 'usdz' })`](Session.export.md) (an app that exports and caches its own file keeps doing so), in Safari, a… |
| <a id="title"></a>[`title?`](ActivateAROptions.title.md) | property | The name the AR viewer shows: Scene Viewer's `title`, and the Quick Look banner's title where the account turns the banner on. |
| <a id="scale"></a>[`scale?`](ActivateAROptions.scale.md) | property · labs | 'fixed' keeps the product at true size, so the shopper can't pinch-scale it (Scene Viewer `resizable=false`, Quick Look `allowsContentScaling=0`, and no two-finger resize in Holostep's in-page AR); 'auto' lets the… |
| <a id="occlusion"></a>[`occlusion?`](ActivateAROptions.occlusion.md) | property · labs | Scene Viewer's depth occlusion. |
| <a id="overlayroot"></a>[`overlayRoot?`](ActivateAROptions.overlayRoot.md) | property · labs | Your own UI over the camera in Holostep's in-page AR (a swatch strip, a part toggle, add to cart): an element you created before the call. |
| <a id="ui"></a>[`ui?`](ActivateAROptions.ui.md) | property · labs | 'default' shows Holostep's AR screens; 'headless' lets the page draw its own: Holostep's in-page AR then shows only the camera and the product (no coaching icons, buttons, arrow or sheets) and tells its state through … |

## Declaration

```ts
export interface ActivateAROptions {
  glbUrl?: string;
  usdzUrl?: string;
  title?: string;
  scale?: 'auto' | 'fixed';
  occlusion?: boolean;
  overlayRoot?: HTMLElement;
  ui?: 'default' | 'headless';
}
```

## Generic-API test (spec 3.1)

| Rule | Result |
| --- | --- |
| 1. Neutral name | pass: `ActivateAROptions` names no product |
| 2. A precedent | not recorded: no ledger row (coverage.json) names this member or its owner |
| 3. Two apps, or labs | pass: 19 apps (fleet cross-check: app-04c2774145, app-37356bf09f, app-4762caacdc, app-4fd23bc869, app-822bb9d6aa, app-8675b3225c, app-b362a81c85, app-bcb7ef21da and 11 more) |
| 4. The cheaper fix first | not recorded per member (Appendix B decides it per need) |
