Job Alerts Plugin
The Job Alerts plugin lets candidates subscribe to email notifications when new jobs matching their criteria are posted.Installation
- npm
- pnpm
- CDN
Basic usage
- Package
- CDN
Documentation Index
Fetch the complete documentation index at: /llms.txt
Use this file to discover all available pages before exploring further.
Email alerts for new jobs
npm install @inploi/plugin-job-alerts
pnpm add @inploi/plugin-job-alerts
<script defer src="https://sdk.inploi.com/@inploi/sdk/cdn/index.js"></script>
<script defer src="https://sdk.inploi.com/@inploi/plugin-job-alerts/cdn/index.js"></script>
import { initialiseSdk } from '@inploi/sdk';
import { jobAlertsPlugin } from '@inploi/plugin-job-alerts';
const sdk = initialiseSdk({ publishableKey: 'pk_...', env: 'sandbox' });
const alerts = sdk.register(jobAlertsPlugin());
alerts.render({
theme: { mode: 'light', corners: 'rounded', highlights: 'fill', accent: { hue: 260, chroma: 1 } },
config: { label: 'Get alerts', headerText: 'Subscribe to job alerts' },
initialFilters: {},
});
<div id="inploi-job-alerts"></div>
<script defer src="https://sdk.inploi.com/@inploi/sdk/cdn/index.js"></script>
<script defer src="https://sdk.inploi.com/@inploi/plugin-job-alerts/cdn/index.js"></script>
<script>
document.addEventListener('DOMContentLoaded', () => {
const sdk = inploi.initialiseSdk({ publishableKey: 'pk_...', env: 'sandbox' });
const alerts = sdk.register(inploi.jobAlertsPlugin());
alerts.render({
theme: { mode: 'light', corners: 'rounded', highlights: 'fill', accent: { hue: 260, chroma: 1 } },
config: { label: 'Get alerts', headerText: 'Subscribe to job alerts' },
initialFilters: {},
});
});
</script>
<div id="inploi-job-alerts"></div>
| Option | Values | Description |
|---|---|---|
mode | light, dark | Color scheme |
corners | rounded, soft, sharp | Border radius style |
highlights | stroke, fill | Button/tag style |
accent | { hue: number, chroma: number } | Accent color. hue: 0–360 color angle, chroma: 0–2 intensity multiplier |
| Option | Type | Required | Description |
|---|---|---|---|
config.label | string | Yes | Button label text |
config.headerText | string | Yes | Header above the form |
initialFilters | Record<string, string | string[]> | Yes | Pre-populated filter values |
terms | object | No | Override default UI text. Keys: email, name, save, save_alert, frequency, create_alert, email_placeholder, name_placeholder, and frequency labels (DAILY, WEEKLY, MONTHLY) |
render(params)setFilters(filters)alerts.setFilters({ city: 'London' });
setConfig(config)alerts.setConfig({ label: 'Subscribe', headerText: 'Get notified about new jobs' });
// Or use an updater function
alerts.setConfig(prev => ({ ...prev, label: 'Updated label' }));
prerender(params)const { html } = await alerts.prerender({ theme, config, initialFilters: {} });
type JobAlertsPluginParams = {
theme: {
mode: 'light' | 'dark';
corners: 'rounded' | 'soft' | 'sharp';
highlights: 'stroke' | 'fill';
accent: { hue: number; chroma: number };
};
config: {
label: string;
headerText: string;
};
initialFilters: Record<string, string | string[]>;
terms?: Partial<JobAlertsTranslationTerms>;
};
import { jobSearchPlugin } from '@inploi/plugin-job-search';
import { jobAlertsPlugin } from '@inploi/plugin-job-alerts';
const jobSearch = sdk.register(jobSearchPlugin());
jobSearch.render({
// ... other options
alerts: {
plugin: jobAlertsPlugin(),
params: { config: { label: 'Alert me', headerText: 'Subscribe to job alerts' } },
},
});