> For the complete documentation index, see [llms.txt](https://docs.klai.studio/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.klai.studio/reference/actions-processor/actions_overview/pwapromptinstall.md).

# pwaPromptInstall

`pwaPromptInstall` triggers the install prompt previously captured by `pwaCustomInstall`.

## Action Object

| Key                   | Type       | Description                                             |
| --------------------- | ---------- | ------------------------------------------------------- |
| `action`              | `string`   | Must be `"pwaPromptInstall"`                            |
| `options.onAccepted`  | `function` | Optional callback after the user accepts installation   |
| `options.onDismissed` | `function` | Optional callback after the user dismisses installation |

## Example

```json
{
  "action": "pwaPromptInstall"
}
```

## Behavior Notes

* This action uses `window.deferredPrompt`, so it should normally be paired with `pwaCustomInstall`.
* If the user accepts the install prompt, BetterForms calls `options.onAccepted()` when provided.
* If the user dismisses the install prompt, BetterForms calls `options.onDismissed()` when provided.
* After the prompt is handled, BetterForms clears `window.deferredPrompt`.

## Related Pages

* [pwaCustomInstall](/reference/actions-processor/actions_overview/pwacustominstall.md)
* [Creating a PWA](/reference/apis-and-services/integrations/creating-a-pwa.md)
