Complaintr Docs

Web widget

Let visitors report problems, request features, and get help without leaving your site.

The widget is a small launcher on your site. It opens a panel where visitors can report an issue, request a feature, chat with the assistant, read help articles, and see your news. It needs no account and runs in its own Shadow DOM, so your styles and its styles never mix.

Collect feedback without leaving your site Widget illustration
acme.example.com
How can we help?Send feedback to Acme Store
Report an issueTell us what went wrong
Request a featureSuggest an improvement
MessagesContinue a conversation

The application in your embed snippet determines where these reports arrive.

Set it up

Open in Complaintr
  1. Register the website or product in Applications.
  2. In the sidebar, open Integrations, choose In-app complaint widget, then click Setup.
  3. Select the application that should receive complaints.
  4. Customize the widget, then click Save customization.
  5. Copy the generated embed snippet and add it once before the closing body tag of your website.

Settings are saved per application, and installed widgets pick them up the next time they load. You do not need to replace the snippet after changing the appearance.

Install the snippet

Add the script once, in the shell every page shares. The setup page generates it for HTML, Next.js, and React.

HTML
<script
src="https://app.complaintr.com/widget.js"
data-app="Acme Store"
defer
></script>

Place it before the closing </body> tag.

Customize

SettingOptions
PositionBottom right, bottom left, top right, top left
Primary colorHeader color. Choose a preset gradient (Orange, Emerald, Violet, Sky, Rose, Slate) or any hex color.
Home title and messageThe greeting and the assistant's first message
Launcher iconComplaintr logo, chat bubble, bug, megaphone, or chevron
Launcher buttonAccent gradient, white, or dark
Announcement bannerTitle, short text, and link. Leave the title empty to hide it.

Click Save customization to apply.

Script attributes

Everything can also be set on the script tag. Saved settings take over when the widget loads.

AttributePurpose
data-appRequired. Your registered application name.
data-positionbottom-right, bottom-left, top-right, or top-left
data-colorHex color for the header
data-titleHome title, up to 80 characters
data-welcomeHome message, up to 240 characters
data-banner-title, data-banner-text, data-banner-urlThe announcement banner
data-launcher-iconcomplaintr, chat, bug, megaphone, or chevron
data-launcher-stylegradient, white, or dark
data-ask-examplesUp to 8 example questions separated by `
data-localeWidget language: en or tr. Defaults to the browser language.
data-endpointA different API origin, for local testing or a proxy

News and help

Widget news publishes announcements to the widget's News tab. Each item has a title, date, badge, summary, content, and a type of News or Changelogs.

Widget help publishes articles to the Help tab. Each article has a title, summary, category, read time, icon, and up to 20 sections, each with a heading, body, and optional code block.

Both belong to the selected application and appear without redeploying your site.

What visitors can do

  • Report an issue: a short form with an optional email. It files directly.
  • Request a feature: filed as a complaint marked as a feature request.
  • Ask or chat: a conversation with the assistant. It asks follow-up questions and files once it has enough detail, without a separate approval step.
  • Rate the experience from 1 to 5 on the home screen.
  • Messages: every conversation is kept on the visitor's device. Deleting one asks first.

The widget accepts text only. It never exposes your workspace.

Test it

Open a real page with the widget installed. The setup preview does not send anything. Report a test issue, wait for the confirmation, and find it in Complaints with the Web widget source.

On this page