You need a knowledge base with something indexed in it, a public client key, and the ability to add a <script> tag to the page your support form lives on.
1

Create the deflector

In the dashboard: Workspace → Integrations → Support form deflector → New.Give it the name of the form it will attach to (“Support portal — new request”), pick the knowledge base to answer from, and pick the public client key the embed will carry.
2

Find the two selectors that matter

Open your support form and inspect it.
  • Form selector — the <form> element, e.g. #new_request.
  • Question field — the textarea holding the description, e.g. #request_description. A name or an id on its own works too: description.
Paste both into the deflector’s Form wiring tab and save.
If the field is inside an iframe or a web component, see Crossing DOM boundaries — the selectors accept ifr>> and sr>> operators for exactly this.
3

Add the embed

Copy the snippet from the deflector’s Setup tab. It is three attributes:
Everything else is fetched from the deflector at runtime.
4

Say what the button now does

On the Behaviour tab set:
  • Submit button text while armedNext step
  • Notice shown before generating → “We’ll check whether we can answer this right away. If not, your ticket goes straight to our support team.”
This is not decoration. A button labelled “Submit ticket” that opens a modal instead is the single most common complaint about this pattern: the reader believes they filed a ticket, reads nothing, and files a second one from another tab.
5

Test it with the debugger on

Add data-debug-mode="true" to the script tag and submit the form with a real question of at least 25 characters. The console prints what the deflector matched, what it decided, and why.localhost always passes the origin allowlist, so a local build of your support page works before the domain it will ship on exists.

Verifying it works

Without a stored deflector

You can wire everything from the script tag instead. This is what a pre-integration embed does, and it works — you just lose the ability to change the wiring without redeploying the page, along with the deflector’s own threshold, origin allowlist and stats:

From JavaScript

Or from the global the bundle installs, which needs no build step:

Next

Every option

The complete behaviour reference.

Zendesk

A worked example on a real helpdesk form.