Description
HITJMS Integration connects your WordPress site to the HITJMS behavioral health platform API. It lets treatment centers and medical organizations capture intake leads, sync contacts, inject tracking, and embed a chat widget — all configured from a single settings screen.
Features
- Intake form — a built-in lead form (or a HITJMS-native form by ID) that submits securely to the HITJMS API via AJAX, with a GA4
hitjms_lead_submittedevent. - Contact sync — pull your HITJMS patient/contact records into a local table on a schedule (hourly / twice daily / daily) via WP-Cron, or on demand.
- Auto-blogging — automatically mirror the AI-generated blog posts from your HITJMS site into WordPress by polling your site’s RSS feed. Import as drafts or published, assign author and category, and optionally download featured images. Posts are de-duplicated so nothing is imported twice.
- Tracking — enter your HITJMS site ID (hjpx_…) plus, optionally, a Google Tag Manager (GTM-XXXXXXX) or Google Analytics 4 (G-XXXXXXXXXX) ID; the plugin builds and loads the correct tags for you. You never paste a script.
- Chat widget — drop in your HITJMS chat embed site-wide or inline via shortcode.
- Embed codes — copy-and-paste HTML for the chat widget, intake form and tracking pixel, for pages this plugin does not run on (a landing page, an old site, a page builder that strips shortcodes).
- Shortcodes —
[hitjms_intake_form],[hitjms_chat_widget],[hitjms_contact_list],[hitjms_lead_count]and more.
Requires a HITJMS account. You provide your own API key from the HITJMS Developer dashboard. Without a key the plugin stays inactive/idle. If you do not have an account yet, see hitjms.com for plans and pricing.
All connections to third-party services are described in the “External services” section below. Nothing is sent anywhere until you enter your API key or enable a feature — the plugin makes no outbound requests in its default state.
HIPAA / PHI note: Intake and contact data may constitute Protected Health Information (PHI). Use of the HITJMS service for PHI requires a signed Business Associate Agreement (BAA) with HITJMS — read more about our HIPAA posture. The plugin never writes contact data to logs or browser storage, and the contact list is restricted to users with the edit_posts capability.
See it in action
A walkthrough of the HITJMS dashboard this plugin connects to — leads, intake, tracking and content in one place:
Five organic growth moves for filling your calendar without ad spend — the marketing thinking behind the auto-blogging and tracking features:
What clinical directors actually need from marketing, and why most agencies miss it:
More on the HITJMS YouTube channel and the HITJMS blog.
Who it is for
Built for behavioral health and senior care organizations: mental health centers, addiction treatment centers, detox facilities, IOP and PHP programs, sober living homes and hospice providers.
External services
This plugin connects to the following external services. Each one is described below with the data it receives, when that happens, and links to its terms and privacy policy.
1. HITJMS platform API (api.hitjms.com)
This is the service the plugin is a client for. It is required for the plugin’s core functionality, and you must have your own HITJMS account and API key.
- What it is used for: creating intake submissions in, and reading contact records from, your HITJMS account.
- What is sent and when: when a visitor submits the intake form, the values they enter (such as name, email, phone, insurance provider, referral source and notes), together with your site’s URL, are sent over HTTPS to
https://api.hitjms.com/api/v1/intake. When Contact Sync runs (on the schedule you choose, or when you click “Sync Now”), the plugin sends your API key tohttps://api.hitjms.com/api/v1/patientsand stores the returned contact records in your site’s database for display to logged-in staff only. When you click “Test Connection”, your API key alone is sent to verify it. No data is sent unless you have saved an API key. - Service provider: HITJMS.
- Terms of Service: https://hitjms.com/terms
- Privacy Policy: https://hitjms.com/privacy
1b. HITJMS visitor tracking pixel (api.hitjms.com) — optional
- What it is used for: recording visits, traffic sources and form conversions for your site in your HITJMS dashboard.
- What is sent and when: nothing by default. Only when you enter your HITJMS site ID on the Tracking tab and switch the pixel on does the plugin load
https://api.hitjms.com/js/tracker.json your public pages. Visitors’ browsers then send HITJMS the page URL, referrer, traffic-source parameters, IP address and user agent. No cookies are set. Clearing the site ID or switching the pixel off stops all of it. - Service provider: HITJMS.
- Terms of Service: https://hitjms.com/terms
- Privacy Policy: https://hitjms.com/privacy
2. Your HITJMS site’s RSS feed (Auto-Blog only)
- What it is used for: importing blog posts published on your HITJMS site into WordPress.
- What is sent and when: only when you enable Auto-Blogging and supply a feed URL. On the schedule you choose (or when you click “Import Now”) your server requests that feed URL — a normal HTTP GET containing no personal data. If “Featured Images” is enabled, images referenced by the feed are downloaded to your Media Library.
- Service provider: HITJMS (the same account and policies as above).
- Terms of Service: https://hitjms.com/terms
- Privacy Policy: https://hitjms.com/privacy
3. Google Tag Manager (googletagmanager.com) — optional
- What it is used for: loading the tag container you configure, so you can manage marketing and analytics tags without editing your site.
- What is sent and when: nothing by default. Only when you enter a GTM container ID on the Tracking tab does the plugin load
https://www.googletagmanager.com/gtm.json your public pages. Visitors’ browsers then send Google the usual request data — IP address, user agent, referring URL and the page being viewed — plus whatever the tags inside your container are configured to collect. A<noscript>fallback tohttps://www.googletagmanager.com/ns.htmlis included for browsers without JavaScript. Removing the ID stops all of it. - Service provider: Google.
- Terms of Service: https://marketingplatform.google.com/about/analytics/tag-manager/use-policy/
- Privacy Policy: https://policies.google.com/privacy
4. Google Analytics 4 (googletagmanager.com) — optional
- What it is used for: measuring page views and traffic sources for your site, and recording a
hitjms_lead_submittedevent when an intake form is submitted. - What is sent and when: nothing by default. Only when you enter a GA4 measurement ID on the Tracking tab does the plugin load
https://www.googletagmanager.com/gtag/json your public pages. Visitors’ browsers then send Google page view events including the page URL, referrer, IP address, user agent and the Google Analytics client identifier stored in a cookie. Removing the ID stops all of it. - Service provider: Google.
- Terms of Service: https://marketingplatform.google.com/about/analytics/terms/us/
- Privacy Policy: https://policies.google.com/privacy
5. HITJMS chat widget (api.hitjms.com) — optional
- What it is used for: displaying the HITJMS live chat widget on your site.
- What is sent and when: nothing by default. Only when you enter your HITJMS site ID on the Chat Widget tab and either enable the widget site-wide or place the
[hitjms_chat_widget]shortcode does the plugin loadhttps://api.hitjms.com/js/chatbot-widget.json your public pages. HITJMS then receives visitors’ IP address, user agent and page URL, plus anything they type into the chat. Because that happens before the visitor types anything, the widget waits for consent on sites running a consent plugin (see below). Clearing the site ID stops all of it. - Service provider: HITJMS.
- Terms of Service: https://hitjms.com/terms
- Privacy Policy: https://hitjms.com/privacy
Visitor consent: every third-party service above is off unless you configure it. When a consent plugin implementing the WP Consent API is active, the plugin waits for the visitor’s decision before loading anything third-party:
- The HITJMS visitor pixel, Google Tag Manager and Google Analytics require the statistics category.
- The chat widget requires the marketing category, where consent platforms usually place third-party embeds. If your consent policy treats live chat as a necessary service instead, change the category with the
hitjms_chat_consent_categoryfilter (for example tofunctional).
Sites with no consent plugin installed are unaffected — everything loads as configured.
Two filters let you switch these off per page, which is recommended for any page that collects health information: hitjms_allow_tracking for the visitor pixel and Google tags, and hitjms_allow_chat for the chat widget.
Screenshots





Installation
- In WordPress admin, go to Plugins Add New, search for “HITJMS”, and click Install Now, then Activate.
- Go to Settings HITJMS.
- On the General tab, paste your HITJMS API key and click Test Connection (you should see “Connected. API key is valid.”). Your key lives in the HITJMS Developer dashboard.
- Configure the Tracking, Intake Form, Chat Widget, and Contact Sync tabs as needed. The IDs each tab asks for are in your HITJMS dashboard under Tools.
- Add the intake form to any page with the shortcode
[hitjms_intake_form]. - For pages outside WordPress, copy the ready-made HTML from the Embed Codes tab.
Don’t have an account yet? Compare plans or get in touch.
FAQ
-
Do I need a HITJMS account?
-
Yes. The plugin is a connector to the HITJMS platform — see what the platform does. Get your API key from the HITJMS Developer dashboard, or start with a plan if you are new.
-
What data does the plugin send to HITJMS?
-
Intake form submissions are sent to the HITJMS API, and Contact Sync reads your contact records back from it. See the “External services” section above for specifics.
-
Does the plugin track my visitors?
-
Only if you ask it to. The HITJMS visitor pixel, Google Tag Manager and Google Analytics each load only when you enter the matching ID yourself on the Tracking tab. If you run a consent plugin that supports the WP Consent API, all of them wait for the visitor’s consent.
-
Where do I find my HITJMS site ID?
-
In your HITJMS dashboard: Tools Visitor Tracking shows the tracking site ID (it starts with
hjpx_), and Tools Chat Widget shows the chat site ID. Enter the ID on its own — the plugin builds and loads the script for you, so there is no snippet to copy. -
Is the plugin HIPAA compliant?
-
The plugin follows HIPAA-aware practices (PHI is not logged or cached in the browser; the contact list requires the
edit_postscapability). HIPAA compliance is a shared responsibility — using HITJMS for PHI requires a signed BAA with HITJMS, and you remain responsible for your own site’s configuration and hosting. Do not enable third-party tracking on pages that collect health information. Details: HITJMS and HIPAA. -
How do I add the chat widget?
-
Enter your HITJMS chat site ID on the Chat Widget tab, then either enable it site-wide there or place
[hitjms_chat_widget]inline on a specific page. -
Can I use the chat widget or intake form on a site that isn’t this one?
-
Yes. The Embed Codes tab writes out the plain HTML for the chat widget, the intake form and the visitor tracking pixel, filled in with the IDs you have already saved. Copy a snippet and paste it into a landing page, an older site, an email platform or a page builder — anywhere this plugin does not run. Leads and conversations from those pages land in the same HITJMS dashboard.
You do not need any of it on this WordPress site: the plugin already loads each of those for you. The same snippets are shown in your HITJMS dashboard under Tools.
-
What else does the HITJMS platform do?
-
Beyond this plugin: AI website builder, SEO and content, paid search, call tracking, insurance verification, telehealth and EHR integrations.
-
Where do I get help?
-
Support and sales questions: hitjms.com/contact. Product walkthroughs are on the HITJMS YouTube channel, and how-to articles are on the HITJMS blog.
-
How do I show a live lead count?
-
Use
[hitjms_lead_count]or[hitjms_lead_count label="people helped"]. The value is cached for one hour. -
How does auto-blogging work?
-
On the Auto-Blog tab, enable auto-blogging and paste your HITJMS site’s RSS feed URL (usually your site address followed by
/feed.rss). On the schedule you choose, the plugin reads the feed and creates a WordPress post for each article it hasn’t imported before — preserving the original publish date, and optionally the featured image. Choose whether posts arrive as drafts (to review first) or are published immediately, and which author and category to assign. Use Import Now to run it on demand. Because posts are matched by their feed GUID, running it repeatedly never creates duplicates. If an article is later edited on your HITJMS site, the matching WordPress post is refreshed on the next check (you can turn this off with the “Keep in Sync” option; your local status, author, date and category are always preserved). Video embeds in posts are kept intact.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“HITJMS Integration” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “HITJMS Integration” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.7.0
- New “Embed Codes” tab: ready-made HTML for the chat widget, the intake form and the visitor tracking pixel, for pages this plugin does not run on — a landing page, an older site, an email platform, a page builder that strips shortcodes. Each snippet is assembled from the site IDs you have already saved and shown as escaped, read-only text with a Copy button. Nothing is stored, requested or executed by this tab, and no new settings are added.
- Added the HITJMS platform walkthrough videos and links to the relevant hitjms.com documentation throughout this readme.
1.6.0
- The Tracking Script and Chat Embed Script textareas have been removed. The Tracking and Chat Widget tabs now take a single HITJMS site ID, validated on save; the plugin builds each script URL itself and loads it with
wp_enqueue_script()andwp_add_inline_script(). The plugin no longer stores or outputs any code entered by a user. - Upgrading: the site ID is read out of your previously saved snippet automatically, and the stored snippet is deleted. Check Settings HITJMS Tracking and Chat Widget after updating; if a field is blank, copy the ID from your HITJMS dashboard under Tools.
- The chat widget is now loaded through the WordPress script queue on both the site-wide and shortcode paths, so caching and optimisation plugins can manage it.
- Documented the HITJMS visitor pixel and chat widget as external services, with the data each receives.
1.5.0
- Google Tag Manager and Google Analytics 4 are now loaded through the WordPress script queue instead of being printed as raw script tags, so caching and optimisation plugins can manage them.
- Google tags and the chat widget now honour the WP Consent API when a supported consent plugin is active — statistics for the Google tags, marketing for chat. New filters
hitjms_allow_tracking,hitjms_allow_chatandhitjms_chat_consent_categorycontrol this per page. Sites without a consent plugin are unaffected. - Fixed: the intake form’s submit handler could not start on block themes, because the shortcode renders before scripts are registered and its configuration was silently discarded.
- The
[hitjms_chat_widget]shortcode now returns only an escaped container and prints the vendor embed in the footer. - Updates are delivered through WordPress.org; the previous built-in update check has been removed.
- Text domain now matches the plugin slug.
- Documented every external service the plugin can contact, with terms and privacy links.
1.4.0
- Added a built-in update check (removed again in 1.5.0, which updates through WordPress.org).
1.3.0
- Form submissions now report which website they came from (
site_url). If your HITJMS account runs several websites, leads from this site show up under its domain in the leads Site filter.
1.2.1
- Saving the raw Tracking and Chat embed snippets now requires the
unfiltered_htmlcapability; users without it no longer overwrite a previously saved snippet. - Added an uninstall routine that removes the plugin’s options and drops the local contacts table (which may contain PHI) when the plugin is deleted. Multisite-aware.
1.2.0
- Auto-blogging now keeps posts in sync: when an article is edited on your HITJMS site, the matching WordPress post’s title, content and excerpt are refreshed on the next check. Toggle it with the new “Keep in Sync” option; your local status, author, date and category are always preserved.
- Video embeds (YouTube/Vimeo iframes) in imported posts are now preserved. Imported content is sanitized to allow embeds while still stripping unsafe markup such as scripts.
1.1.0
- New: Auto-blogging. Import AI-generated blog posts from your HITJMS site into WordPress by polling its RSS feed on WP-Cron (hourly / twice daily / daily) or on demand. Import as draft or published, assign author and category, optionally sideload featured images, with GUID-based de-duplication so posts are never imported twice.
- New “Auto-Blog” settings tab with an “Import Now” button.
1.0.1
- Intake submissions now send a top-level
sourceof “wordpress” so leads are correctly attributed in the HITJMS platform (Lead Map / analytics) instead of the generic “api” source.
1.0.0
- Initial release: settings page (6 tabs), intake form (built-in + HITJMS-native), tracking injection (HITJMS pixel / GTM / GA4), chat widget, WP-Cron contact sync, and
[hitjms_*]shortcodes.
