Skip to main content

Kin Plugin

Kin is an AI-powered chat assistant that helps candidates find jobs, answer questions, and navigate your career site.

Installation

If your site uses a server-side caching or minification plugin (e.g. WP Rocket, W3 Total Cache, Autoptimize), exclude all https://sdk.inploi.com/* URLs from it. These plugins can serve a stale cached copy of the SDK, preventing updates from reaching your site. See CDN caching and minification for details.

Basic usage

Configuration

The publishable key is automatically inherited from the SDK initialisation — you don’t need to pass it again.

Agent name

agentName controls the display name shown to candidates. It appears in the chat header, the iframe accessibility label, message author labels, and the empty-state greeting. If you omit it, the agent is shown as “Agent”.
Keep it short — values longer than 32 characters are truncated automatically so the header doesn’t wrap or clip on mobile.

Appearance

All visual and layout options are grouped under appearance:

Placement

Pass a single string to use the same position on all devices, or an object for independent desktop/mobile positioning:
Available values: 'left', 'center', 'right'. Use 'embedded' together with the container parameter to render the widget inline in a specific element instead of as a floating overlay.

Launcher

Controls whether the trigger displays as an input bar or a circular icon. By default, desktop shows the input bar and mobile shows the icon.
The breakpoint between desktop and mobile is determined by (hover: none) and (pointer: coarse) — devices without a precise pointer (phones, tablets) use the mobile setting.

Closed launcher offset

Use appearance.offset when a page has a fixed CTA, cookie banner, notification button, or accessibility widget near the bottom of the viewport. Offset applies only while the widget is closed. When the chat panel opens, Kin expands as a normal overlay.
You can also update the offset at runtime with kin.setOffset(...). This is useful when a sticky page element appears only after scrolling.
When floating and closed, Kin sizes its host iframe to the launcher bounds so surrounding page controls remain clickable. When opened, the iframe expands to the viewport to render the chat panel.

Starter prompts

Example:

API

prepare()

Preloads the UI and establishes a connection. Call this early for the best user experience.

open()

Opens the chat panel.

close()

Closes the chat panel.

toggle()

Toggles the chat panel open/closed.

setAppearance(options)

Updates visual properties at runtime. Accepts any combination of accentColor, neutralColor, mode, and rounded. Omitted fields keep their current values.
Layout options (placement, launcher, zIndex, logo) cannot be changed at runtime — call destroy() and re-create the plugin to change them.

setOffset(offset)

Updates the closed launcher offset at runtime. This does not move an open chat panel.

destroy()

Removes the widget and cleans up resources.

Full configuration reference

WordPress installation

WordPress sites that use a Content Security Policy (CSP) with nonces require additional setup. This is common on enterprise WordPress installations.

CSP nonce setup

If your WordPress site sets a Content-Security-Policy header with a nonce- value, you need to:
  1. Add https://sdk.inploi.com to your CSP directives. In your theme’s functions.php, ensure your CSP header includes:
  1. Add the nonce to the inline init script. The two external <script> tags don’t need a nonce (they’re allowed by https://sdk.inploi.com in script-src), but the inline init script does:
The nonce value must match the one in your CSP header. If you use a static nonce function with the static keyword, the same value is returned for both the header and the script tag within a single request. For the cleanest integration, register scripts through WordPress’s script API instead of hardcoding them in your template. This automatically handles CSP nonces if your theme or CSP plugin supports it:
If your site uses a server-side caching or minification plugin (e.g. WP Rocket, W3 Total Cache, Autoptimize), exclude all https://sdk.inploi.com/* URLs from it. See CDN caching and minification for details.

Soft navigation

If your site uses client-side navigation (e.g. Turbo, HTMX, SPA routers), the Kin widget’s DOM can be removed without it knowing. Use destroy() before the page content is replaced, and re-initialise on the new page.

Features

Kin streams responses in real-time, providing a natural conversational experience.
The agent remembers the conversation within a session (or persistently, based on your configuration in Studio).
Candidates can upload CVs and other documents for the agent to analyse.
Conversations sync across browser tabs for a seamless experience.