{"id":312787,"date":"2026-05-28T05:57:42","date_gmt":"2026-05-28T05:57:42","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/easyit-ai-chat\/"},"modified":"2026-06-02T18:12:36","modified_gmt":"2026-06-02T18:12:36","slug":"easyit-ai-chat","status":"publish","type":"plugin","link":"https:\/\/bal.wordpress.org\/plugins\/easyit-ai-chat\/","author":23498284,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.1.2","stable_tag":"2.1.2","tested":"7.0","requires":"6.0","requires_php":"8.0","requires_plugins":null,"header_name":"EasyIT AI Chat \u2014 Chatbot for OpenAI, Claude, DeepSeek, Gemini & Ollama","header_author":"EasyIT","header_description":"Unified AI chatbot for WordPress. Connect Ollama, OpenAI, Anthropic (Claude) and DeepSeek with one shortcode [eaic_chat]. Free, open-source, no tracking.","assets_banners_color":"0e3d49","last_updated":"2026-06-02 18:12:36","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/easybdit\/easyit-ai-chat","header_author_uri":"https:\/\/easyit.com.bd","rating":0,"author_block_rating":0,"active_installs":0,"downloads":406,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.10":{"tag":"1.0.10","author":"muradbd","date":"2026-05-30 19:14:44"},"1.0.11":{"tag":"1.0.11","author":"muradbd","date":"2026-05-31 12:50:10"},"1.0.12":{"tag":"1.0.12","author":"muradbd","date":"2026-05-31 12:59:18"},"1.0.13":{"tag":"1.0.13","author":"muradbd","date":"2026-05-31 13:08:13"},"1.0.14":{"tag":"1.0.14","author":"muradbd","date":"2026-05-31 13:12:33"},"1.0.15":{"tag":"1.0.15","author":"muradbd","date":"2026-05-31 13:16:56"},"1.0.16":{"tag":"1.0.16","author":"muradbd","date":"2026-05-31 13:21:14"},"1.0.17":{"tag":"1.0.17","author":"muradbd","date":"2026-05-31 13:27:01"},"1.0.18":{"tag":"1.0.18","author":"muradbd","date":"2026-05-31 16:51:04"},"1.0.19":{"tag":"1.0.19","author":"muradbd","date":"2026-05-31 17:04:11"},"1.0.20":{"tag":"1.0.20","author":"muradbd","date":"2026-05-31 17:08:04"},"1.0.21":{"tag":"1.0.21","author":"muradbd","date":"2026-05-31 17:09:57"},"1.0.22":{"tag":"1.0.22","author":"muradbd","date":"2026-05-31 17:11:58"},"1.0.23":{"tag":"1.0.23","author":"muradbd","date":"2026-05-31 17:17:06"},"1.0.24":{"tag":"1.0.24","author":"muradbd","date":"2026-05-31 17:19:23"},"1.0.25":{"tag":"1.0.25","author":"muradbd","date":"2026-05-31 17:22:17"},"1.0.26":{"tag":"1.0.26","author":"muradbd","date":"2026-05-31 17:27:22"},"1.0.27":{"tag":"1.0.27","author":"muradbd","date":"2026-05-31 17:29:23"},"1.0.28":{"tag":"1.0.28","author":"muradbd","date":"2026-05-31 17:31:25"},"1.0.29":{"tag":"1.0.29","author":"muradbd","date":"2026-05-31 17:34:05"},"1.0.3":{"tag":"1.0.3","author":"muradbd","date":"2026-05-28 06:09:32"},"1.0.30":{"tag":"1.0.30","author":"muradbd","date":"2026-05-31 17:38:00"},"1.0.31":{"tag":"1.0.31","author":"muradbd","date":"2026-05-31 17:40:07"},"1.0.4":{"tag":"1.0.4","author":"muradbd","date":"2026-05-30 08:54:04"},"1.0.7":{"tag":"1.0.7","author":"muradbd","date":"2026-05-30 16:11:50"},"1.0.8":{"tag":"1.0.8","author":"muradbd","date":"2026-05-30 18:41:52"},"1.0.9":{"tag":"1.0.9","author":"muradbd","date":"2026-05-30 18:56:30"},"2.0.0":{"tag":"2.0.0","author":"muradbd","date":"2026-05-31 17:50:47"},"2.0.1":{"tag":"2.0.1","author":"muradbd","date":"2026-05-31 17:59:34"},"2.1.0":{"tag":"2.1.0","author":"muradbd","date":"2026-06-02 02:54:29"},"2.1.1":{"tag":"2.1.1","author":"muradbd","date":"2026-06-02 14:20:15"},"2.1.2":{"tag":"2.1.2","author":"muradbd","date":"2026-06-02 18:12:36"}},"upgrade_notice":{"2.0.0":"<p>Major release: 8 new security features \u2014 Access Restriction, IP Blocklist, Word Filter, Prompt Injection Detection, No-Storage Mode, Math Captcha, Abuse Alert, Message Length Limit.<\/p>","1.0.31":"<p>New: Webhook support \u2014 POST to any URL after each AI response. JSON payload + optional HMAC signature. Settings \u2192 Webhook.<\/p>","1.0.30":"<p>New: Multiple Bot Profiles \u2014 named configurations loaded via profile=&quot;slug&quot; shortcode attribute.<\/p>","1.0.29":"<p>New: Shortcode Builder admin page \u2014 configure chatbot visually, get shortcode instantly. No typing required.<\/p>","1.0.28":"<p>New: Context window setting (1\u201320 messages) to control AI memory per request. Lowers token cost on long chats.<\/p>","1.0.27":"<p>New: Read Aloud (TTS) \u2014 speaker button on AI messages, uses browser SpeechSynthesis, no external service.<\/p>","1.0.26":"<p>New: GDPR Consent Gate \u2014 cookie-based consent banner before chat starts. Configurable text. Enable in Settings \u2192 UI.<\/p>","1.0.25":"<p>New: Fullscreen mode \u2014 expand button in topbar, Escape to exit.<\/p>","1.0.24":"<p>New: Session search box in sidebar \u2014 filter conversations by title, client-side, instant.<\/p>","1.0.23":"<p>New: Message feedback (\ud83d\udc4d\/\ud83d\udc4e) on AI responses. Ratings tracked in DB and shown in Analytics.<\/p>","1.0.22":"<p>New: Copy button on AI messages \u2014 hover to reveal, click to copy to clipboard.<\/p>","1.0.21":"<p>New: Message timestamps (HH:MM) displayed next to each message label.<\/p>","1.0.20":"<p>New: Stop button cancels AI response mid-stream; Regenerate button re-runs the last query.<\/p>","1.0.19":"<p>Improved typing indicator: smooth 3-dot animation replaces the hourglass bubble for a cleaner, more familiar chat UX.<\/p>","1.0.18":"<p>New feature: Analytics Dashboard \u2014 total chats, messages, 7-day chart, top provider. Admin only.<\/p>","1.0.17":"<p>New feature: Floating Chat Widget \u2014 fixed launcher button on every page, opens a slide-up chat panel.<\/p>","1.0.16":"<p>New feature: Conversation Export \u2014 download button saves current chat as a .txt file.<\/p>","1.0.15":"<p>New feature: Voice Input \u2014 microphone button with Web Speech API, transcribes speech into the chat input.<\/p>","1.0.14":"<p>New feature: Color Customization \u2014 accent, user bubble, and AI bubble colors via color pickers in Settings \u2192 UI.<\/p>","1.0.13":"<p>New feature: Custom AI Avatar \u2014 replace the default robot emoji with your own image via Settings \u2192 UI.<\/p>","1.0.12":"<p>New feature: Suggested Questions \u2014 clickable chips that send a question instantly when clicked.<\/p>","1.0.11":"<p>New feature: Welcome Message \u2014 show a custom AI greeting when chat opens. Enable in Settings \u2192 UI.<\/p>","1.0.10":"<p>Adds a convenient &quot;Upgrade to Pro&quot; link in the plugins list.<\/p>","1.0.9":"<p>Critical fix: resolves fatal error on activation. All users should update immediately.<\/p>","1.0.8":"<p>Minor maintenance update. Recommended for all users.<\/p>","1.0.7":"<p>WooCommerce bots moved to EasyIT AI Chat Pro. Default models updated to latest versions (GPT-4o-mini, Claude 3.5 Haiku, Gemini 2.0 Flash).<\/p>","1.0.4":"<p>Adds Google Gemini support, auto-title sessions, data retention cron, and per-IP rate limiting. Recommended for all users.<\/p>","1.0.3":"<p>The shortcode has been renamed from <code>[easyai]<\/code> to <code>[eaic_chat]<\/code>. If you used <code>[easyai]<\/code> on any pages, please update them after upgrading.<\/p>","1.0.2":"<p>Security and WordPress.org compliance update. Recommended for all users.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3551631,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3551631,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3553306,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3553295,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.10","1.0.11","1.0.12","1.0.13","1.0.14","1.0.15","1.0.16","1.0.17","1.0.18","1.0.19","1.0.20","1.0.21","1.0.22","1.0.23","1.0.24","1.0.25","1.0.26","1.0.27","1.0.28","1.0.29","1.0.3","1.0.30","1.0.31","1.0.4","1.0.7","1.0.8","1.0.9","2.0.0","2.0.1","2.1.0","2.1.1","2.1.2"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3553433,"resolution":"1","location":"assets","locale":"","width":1920,"height":912},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3553433,"resolution":"2","location":"assets","locale":"","width":1920,"height":912},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3553433,"resolution":"3","location":"assets","locale":"","width":1920,"height":912}},"screenshots":{"1":"Chat interface \u2014 conversation history sidebar, user and AI messages, timestamps, copy and read-aloud buttons.","2":"Settings page \u2014 provider tabs, API keys, Test Connection button, UI customization, and Security Suite.","3":"Analytics dashboard \u2014 total conversations, messages, 7-day bar chart, feedback ratings.","4":"Shortcode Builder \u2014 visual builder generates shortcode live; copy with one click.","5":"Floating chat widget \u2014 fixed launcher button that opens a slide-up chat panel on every page.","6":"Security settings \u2014 Access Restriction, IP Blocklist, Word Filter, Captcha, and more."}},"plugin_section":[],"plugin_tags":[191735,2364,224606,226976,194533],"plugin_category":[],"plugin_contributors":[265076],"plugin_business_model":[],"class_list":["post-312787","plugin","type-plugin","status-publish","hentry","plugin_tags-ai-chatbot","plugin_tags-chatbot","plugin_tags-gemini","plugin_tags-ollama","plugin_tags-openai","plugin_contributors-muradbd","plugin_committers-muradbd"],"banners":{"banner":"https:\/\/ps.w.org\/easyit-ai-chat\/assets\/banner-772x250.png?rev=3553295","banner_2x":"https:\/\/ps.w.org\/easyit-ai-chat\/assets\/banner-1544x500.png?rev=3553306","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/easyit-ai-chat\/assets\/icon-128x128.png?rev=3551631","icon_2x":"https:\/\/ps.w.org\/easyit-ai-chat\/assets\/icon-256x256.png?rev=3551631","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/easyit-ai-chat\/assets\/screenshot-1.png?rev=3553433","caption":"Chat interface \u2014 conversation history sidebar, user and AI messages, timestamps, copy and read-aloud buttons."},{"src":"https:\/\/ps.w.org\/easyit-ai-chat\/assets\/screenshot-2.png?rev=3553433","caption":"Settings page \u2014 provider tabs, API keys, Test Connection button, UI customization, and Security Suite."},{"src":"https:\/\/ps.w.org\/easyit-ai-chat\/assets\/screenshot-3.png?rev=3553433","caption":"Analytics dashboard \u2014 total conversations, messages, 7-day bar chart, feedback ratings."}],"raw_content":"<!--section=description-->\n<p><strong>EasyIT AI Chat<\/strong> is the most feature-rich free AI chatbot plugin for WordPress. Drop in <code>[eaic_chat]<\/code> on any page to add a fully-featured ChatGPT-style assistant \u2014 powered by OpenAI, Anthropic Claude, Google Gemini, DeepSeek, or a 100% free local Ollama model. No coding required.<\/p>\n\n<p>You own your data, you control your keys. No tracking, no telemetry, no subscription \u2014 ever.<\/p>\n\n<blockquote>\n  <p>\ud83c\udf10 Website: <a href=\"https:\/\/easyit.com.bd\">easyit.com.bd<\/a>\n  \ud83d\udcfa Tutorials: <a href=\"https:\/\/www.youtube.com\/@easybdit\">youtube.com\/@easybdit<\/a>\n  \ud83d\udcac Community: <a href=\"https:\/\/www.facebook.com\/easybdit\">facebook.com\/easybdit<\/a><\/p>\n<\/blockquote>\n\n<h4>\u2728 Supported AI Providers<\/h4>\n\n<ul>\n<li>\ud83e\udd99 <strong>Ollama<\/strong> \u2014 Run open-source models (Llama, Mistral, Gemma, Qwen, etc.) on your own server. 100% private, 100% free.<\/li>\n<li>\ud83e\udd16 <strong>OpenAI (ChatGPT)<\/strong> \u2014 GPT-4o, GPT-4o-mini, GPT-4.1, o3, o4-mini and more.<\/li>\n<li>\ud83e\udde0 <strong>Anthropic (Claude)<\/strong> \u2014 Claude 3.7 Sonnet, Claude 3.5 Sonnet, Claude 3.5 Haiku, Claude 3 Opus.<\/li>\n<li>\ud83d\udd0d <strong>DeepSeek<\/strong> \u2014 DeepSeek-Chat, DeepSeek-Reasoner.<\/li>\n<li>\u2726 <strong>Google Gemini<\/strong> \u2014 Gemini 2.5 Pro, Gemini 2.5 Flash, Gemini 2.0 Flash, Gemini 1.5 Flash.<\/li>\n<li>\ud83d\udd27 <strong>Custom Providers<\/strong> \u2014 Any OpenAI-compatible endpoint (LM Studio, custom gateway, proxies, etc.).<\/li>\n<\/ul>\n\n<h4>\ud83d\ude80 Core Features<\/h4>\n\n<ul>\n<li><strong>One shortcode, any provider<\/strong> \u2014 <code>[eaic_chat provider=\"gemini\"]<\/code> \u2014 switch provider per page, no settings change needed<\/li>\n<li><strong>ChatGPT-style UI<\/strong> \u2014 Sidebar with conversation history, code blocks with copy button, markdown rendering<\/li>\n<li><strong>Auto-title sessions<\/strong> \u2014 First message auto-generates a meaningful conversation title via the AI<\/li>\n<li><strong>Conversation memory<\/strong> \u2014 Sessions saved per logged-in user or guest (cookie-scoped, never cross-user)<\/li>\n<li><strong>Custom system prompt<\/strong> \u2014 Set globally in settings or override per shortcode<\/li>\n<li><strong>Lock system prompt<\/strong> \u2014 Prevent front-end prompt injection; admin-configured prompt only<\/li>\n<li><strong>Test Connection<\/strong> button \u2014 Verify your API key or Ollama URL before going live<\/li>\n<li><strong>Rate limiting<\/strong> \u2014 Per-user, per-session, and per-IP throttle to prevent abuse<\/li>\n<li><strong>Data retention<\/strong> \u2014 Auto-purge old conversations after a configurable number of days<\/li>\n<li><strong>Context window control<\/strong> \u2014 Choose how many previous messages to include per AI request (1\u201320)<\/li>\n<li><strong>Privacy notice<\/strong> \u2014 Optional configurable notice linking to your Privacy Policy<\/li>\n<li><strong>Lightweight<\/strong> \u2014 Assets load only on pages using the shortcode<\/li>\n<li><strong>No telemetry<\/strong> \u2014 Zero external calls except to the AI provider you choose<\/li>\n<li><strong>Open source<\/strong> \u2014 GPL-2.0-or-later, fully auditable<\/li>\n<\/ul>\n\n<h4>\ud83d\udcac Chat UX &amp; Interaction<\/h4>\n\n<ul>\n<li><strong>Typing indicator<\/strong> \u2014 Smooth 3-dot animated bubble while AI is responding (accent-color matched)<\/li>\n<li><strong>Stop &amp; Regenerate<\/strong> \u2014 Cancel a response mid-stream with the \u23f9 Stop button; re-run with \ud83d\udd04 Regenerate<\/li>\n<li><strong>Message timestamps<\/strong> \u2014 HH:MM time shown next to every message label<\/li>\n<li><strong>Copy message<\/strong> \u2014 Hover any AI response to reveal a one-click copy button<\/li>\n<li><strong>Read aloud (TTS)<\/strong> \u2014 \ud83d\udd0a Speaker button reads any AI message using the browser's built-in Speech Synthesis API<\/li>\n<li><strong>Voice input<\/strong> \u2014 \ud83c\udfa4 Microphone button transcribes speech directly into the input field (Web Speech API)<\/li>\n<li><strong>Fullscreen mode<\/strong> \u2014 Expand the chat widget to full-screen overlay; press Escape to exit<\/li>\n<li><strong>Message feedback<\/strong> \u2014 \ud83d\udc4d \/ \ud83d\udc4e buttons below AI responses; ratings stored in your DB<\/li>\n<li><strong>Session search<\/strong> \u2014 Search box in the sidebar filters conversations by title in real time<\/li>\n<\/ul>\n\n<h4>\ud83c\udfa8 Customization<\/h4>\n\n<ul>\n<li><strong>Welcome message<\/strong> \u2014 Custom AI greeting bubble when a new chat starts (supports markdown)<\/li>\n<li><strong>Suggested questions<\/strong> \u2014 Clickable chip buttons that send a question instantly<\/li>\n<li><strong>Custom AI avatar<\/strong> \u2014 Replace the \ud83e\udd16 emoji with any image from your Media Library<\/li>\n<li><strong>Color customization<\/strong> \u2014 Accent, user bubble, and bot bubble colors via color pickers; reset to default in one click<\/li>\n<li><strong>Floating chat widget<\/strong> \u2014 Fixed launcher button on every page; configurable position (bottom-right \/ bottom-left) and label<\/li>\n<li><strong>Bot profiles<\/strong> \u2014 Save named configurations (provider, title, system prompt) and load with <code>[eaic_chat profile=\"slug\"]<\/code><\/li>\n<li><strong>Multiple providers per site<\/strong> \u2014 Different providers on different pages using shortcode attributes<\/li>\n<\/ul>\n\n<h4>\ud83d\udcca Analytics &amp; Insights<\/h4>\n\n<ul>\n<li><strong>Analytics dashboard<\/strong> \u2014 Total conversations, total messages, messages today, active chats (7 days), most-used provider<\/li>\n<li><strong>7-day bar chart<\/strong> \u2014 Pure CSS message chart \u2014 no external libraries<\/li>\n<li><strong>Feedback stats<\/strong> \u2014 Helpful \/ Not helpful rating counts from user feedback<\/li>\n<\/ul>\n\n<h4>\ud83d\udd27 Developer &amp; Admin Tools<\/h4>\n\n<ul>\n<li><strong>Shortcode Builder<\/strong> \u2014 Visual admin page: configure provider, title, height, system prompt \u2014 shortcode updates live, copy with one click<\/li>\n<li><strong>Conversation export<\/strong> \u2014 Download any conversation as a <code>.txt<\/code> file<\/li>\n<li><strong>Webhook support<\/strong> \u2014 POST to any URL after each AI response; JSON payload with session UUID, message, provider, timestamp; optional HMAC-SHA256 signature header<\/li>\n<li><strong>Configurable message length<\/strong> \u2014 Set max characters per user message (50\u20134000)<\/li>\n<\/ul>\n\n<h4>\ud83d\udd12 Security Suite (v2.0)<\/h4>\n\n<ul>\n<li><strong>Access restriction<\/strong> \u2014 Allow everyone, logged-in users only, or specific WordPress user roles<\/li>\n<li><strong>IP blocklist<\/strong> \u2014 Block specific IPv4 \/ IPv6 addresses from sending messages<\/li>\n<li><strong>Word filter<\/strong> \u2014 Block or warn when a message contains banned words; configurable action<\/li>\n<li><strong>Prompt injection detection<\/strong> \u2014 Auto-detect and block jailbreak patterns (\"ignore all previous instructions\", \"DAN mode\", etc.)<\/li>\n<li><strong>No-storage mode<\/strong> \u2014 Opt out of saving conversations to the database entirely (GDPR-strict setups)<\/li>\n<li><strong>Anti-bot math captcha<\/strong> \u2014 Simple arithmetic challenge before the first message; no external API or cookies required<\/li>\n<li><strong>Abuse alert email<\/strong> \u2014 Get an email notification when the rate limit is exceeded; configurable recipient<\/li>\n<li><strong>GDPR consent gate<\/strong> \u2014 Show an accept banner before the chat activates; consent stored in a browser cookie (365 days)<\/li>\n<\/ul>\n\n<h4>\ud83d\uded2 WooCommerce Add-on (Pro)<\/h4>\n\n<p>Looking for WooCommerce features? <strong>EasyIT AI Chat Pro<\/strong> adds:<\/p>\n\n<ul>\n<li><strong>Order Status Bot<\/strong> \u2014 Customers check order status by chatting. Guests verify via order number + billing email.<\/li>\n<li><strong>Product Q&amp;A Bot<\/strong> \u2014 AI answers questions about any product (price, stock, description). Smart keyword search included.<\/li>\n<li><strong>Floating Smart Widget<\/strong> \u2014 Context-aware chat launcher that appears on all pages automatically.<\/li>\n<li><strong>Lead Capture<\/strong> \u2014 Collect visitor name and email before chat starts.<\/li>\n<\/ul>\n\n<h4>\ud83d\udd27 Shortcode Examples<\/h4>\n\n<p><strong>Basic usage:<\/strong>\n    [eaic_chat]<\/p>\n\n<p><strong>Specify a provider:<\/strong>\n    [eaic_chat provider=\"gemini\" title=\"Support Bot\" height=\"500\"]<\/p>\n\n<p><strong>Custom system prompt:<\/strong>\n    [eaic_chat provider=\"ollama\" system_prompt=\"You are a helpful gardening assistant.\"]<\/p>\n\n<p><strong>Load a saved bot profile:<\/strong>\n    [eaic_chat profile=\"support-bot\"]<\/p>\n\n<p><strong>Full example:<\/strong>\n    [eaic_chat provider=\"openai\" title=\"Ask Anything\" placeholder=\"Type your question\u2026\" height=\"600\" system_prompt=\"You are a helpful assistant for our website.\"]<\/p>\n\n<p><strong>Available attributes:<\/strong> <code>provider<\/code>, <code>title<\/code>, <code>placeholder<\/code>, <code>system_prompt<\/code>, <code>height<\/code>, <code>profile<\/code><\/p>\n\n<p>\ud83d\udca1 Use the <strong>Shortcode Builder<\/strong> (EasyIT AI Chat \u2192 Shortcode Builder) to generate shortcodes visually \u2014 no typing required.<\/p>\n\n<h4>\ud83d\udd12 Privacy<\/h4>\n\n<p>When a user sends a message, it is forwarded to your configured AI provider along with the conversation history. Messages are also stored in your own database so conversations can resume. <strong>Nothing is sent to the plugin author.<\/strong> You should mention your chosen provider in your site's Privacy Policy.<\/p>\n\n<h3>External Services<\/h3>\n\n<p>This plugin connects to external AI services depending on which provider you configure. No data is transmitted unless a user actively sends a chat message.<\/p>\n\n<h4>OpenAI<\/h4>\n\n<p>Used when OpenAI is selected as the AI provider.\n* Service URL: https:\/\/api.openai.com\/\n* Terms of Use: https:\/\/openai.com\/policies\/row-terms-of-use\n* Privacy Policy: https:\/\/openai.com\/policies\/row-privacy-policy<\/p>\n\n<h4>Anthropic (Claude)<\/h4>\n\n<p>Used when Anthropic is selected as the AI provider.\n* Service URL: https:\/\/api.anthropic.com\/\n* Terms of Use: https:\/\/www.anthropic.com\/legal\/consumer-terms\n* Privacy Policy: https:\/\/www.anthropic.com\/legal\/privacy<\/p>\n\n<h4>DeepSeek<\/h4>\n\n<p>Used when DeepSeek is selected as the AI provider.\n* Service URL: https:\/\/api.deepseek.com\/\n* Terms of Use: https:\/\/chat.deepseek.com\/downloads\/DeepSeek%20Terms%20of%20Use.html\n* Privacy Policy: https:\/\/chat.deepseek.com\/downloads\/DeepSeek%20Privacy%20Policy.html<\/p>\n\n<h4>Google Gemini<\/h4>\n\n<p>Used when Google Gemini is selected as the AI provider.\n* Service URL: https:\/\/generativelanguage.googleapis.com\/\n* Terms of Use: https:\/\/ai.google.dev\/gemini-api\/terms\n* Privacy Policy: https:\/\/policies.google.com\/privacy<\/p>\n\n<h4>Ollama<\/h4>\n\n<p>Used when Ollama is selected. Calls your own self-hosted Ollama server URL.\nNo third-party service is involved unless you point it at a remote server.<\/p>\n\n<p><strong>Data sent to external services:<\/strong> The user's chat message and recent conversation history (last 10 messages). No personal data beyond what the user types is transmitted.<\/p>\n\n<!--section=installation-->\n<p><strong>Automatic Installation (Recommended)<\/strong><\/p>\n\n<ol>\n<li>Go to <strong>Plugins \u2192 Add New<\/strong> in your WordPress dashboard<\/li>\n<li>Search for <strong>EasyIT AI Chat<\/strong><\/li>\n<li>Click <strong>Install Now<\/strong> then <strong>Activate<\/strong><\/li>\n<\/ol>\n\n<p><strong>Manual Installation<\/strong><\/p>\n\n<ol>\n<li>Download the plugin zip file<\/li>\n<li>Go to <strong>Plugins \u2192 Add New \u2192 Upload Plugin<\/strong><\/li>\n<li>Upload the zip and click <strong>Install Now<\/strong><\/li>\n<li>Activate the plugin<\/li>\n<\/ol>\n\n<p><strong>Setup<\/strong><\/p>\n\n<ol>\n<li>Go to <strong>EasyIT AI Chat \u2192 Settings<\/strong><\/li>\n<li>Choose your preferred AI provider and enter your API key<\/li>\n<li>Click <strong>Test Connection<\/strong> to verify everything works<\/li>\n<li>Add <code>[eaic_chat]<\/code> to any page, post, or widget area<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20an%20api%20key%3F\"><h3>Do I need an API key?<\/h3><\/dt>\n<dd><p>For <strong>OpenAI<\/strong>, <strong>Anthropic<\/strong>, <strong>DeepSeek<\/strong>, and <strong>Google Gemini<\/strong> \u2014 yes, you need your own API key. For <strong>Ollama<\/strong> \u2014 no key needed, just a running Ollama server.<\/p><\/dd>\n<dt id=\"how%20do%20i%20get%20an%20api%20key%3F\"><h3>How do I get an API key?<\/h3><\/dt>\n<dd><ul>\n<li>OpenAI: <a href=\"https:\/\/platform.openai.com\">platform.openai.com<\/a><\/li>\n<li>Anthropic: <a href=\"https:\/\/console.anthropic.com\">console.anthropic.com<\/a><\/li>\n<li>DeepSeek: <a href=\"https:\/\/platform.deepseek.com\">platform.deepseek.com<\/a><\/li>\n<li>Google Gemini: <a href=\"https:\/\/aistudio.google.com\/app\/apikey\">aistudio.google.com<\/a><\/li>\n<\/ul><\/dd>\n<dt id=\"where%20can%20i%20run%20ollama%3F\"><h3>Where can I run Ollama?<\/h3><\/dt>\n<dd><p>Locally on your server, or any machine reachable via HTTP. Visit <a href=\"https:\/\/ollama.com\">ollama.com<\/a> for installation instructions.<\/p><\/dd>\n<dt id=\"does%20the%20plugin%20store%20conversations%3F\"><h3>Does the plugin store conversations?<\/h3><\/dt>\n<dd><p>By default yes \u2014 in custom database tables in your own database. All data is deleted when you uninstall the plugin. Guest sessions use a cookie token and are never linked to personal data. You can enable <strong>No-Storage Mode<\/strong> in Settings \u2192 Security to disable all DB writes entirely.<\/p><\/dd>\n<dt id=\"can%20i%20disable%20conversation%20history%3F\"><h3>Can I disable conversation history?<\/h3><\/dt>\n<dd><p>Yes. Enable <strong>No-Storage Mode<\/strong> in Settings \u2192 Security \u2192 No-Storage Mode. Messages will not be saved to the database at all \u2014 ideal for GDPR-strict setups.<\/p><\/dd>\n<dt id=\"will%20it%20slow%20down%20my%20site%3F\"><h3>Will it slow down my site?<\/h3><\/dt>\n<dd><p>No. Frontend assets (~25 KB CSS + ~15 KB JS) only load on pages where the <code>[eaic_chat]<\/code> shortcode is used.<\/p><\/dd>\n<dt id=\"can%20i%20use%20multiple%20providers%20on%20the%20same%20site%3F\"><h3>Can I use multiple providers on the same site?<\/h3><\/dt>\n<dd><p>Yes \u2014 use the <code>provider<\/code> attribute to specify different providers on different pages: <code>[eaic_chat provider=\"openai\"]<\/code> on one page and <code>[eaic_chat provider=\"gemini\"]<\/code> on another.<\/p><\/dd>\n<dt id=\"is%20this%20plugin%20really%20free%3F\"><h3>Is this plugin really free?<\/h3><\/dt>\n<dd><p>Yes \u2014 GPL-2.0-or-later. The only costs are to your chosen AI provider. Ollama is completely free.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20woocommerce%3F\"><h3>Does it work with WooCommerce?<\/h3><\/dt>\n<dd><p>WooCommerce-specific bots (Order Status Bot, Product Q&amp;A Bot, Floating Widget) are available in <strong>EasyIT AI Chat Pro<\/strong>.<\/p><\/dd>\n<dt id=\"how%20do%20i%20restrict%20the%20chat%20to%20logged-in%20users%20only%3F\"><h3>How do I restrict the chat to logged-in users only?<\/h3><\/dt>\n<dd><p>Go to <strong>Settings \u2192 Security \u2192 Access Restriction<\/strong> and select \"Logged-in users only\" or \"Specific user roles\". Guests will see a \"You must be logged in\" message instead of the chat.<\/p><\/dd>\n<dt id=\"can%20i%20block%20abusive%20users%3F\"><h3>Can I block abusive users?<\/h3><\/dt>\n<dd><p>Yes. Use <strong>IP Blocklist<\/strong> (Settings \u2192 Security) to block specific IP addresses. Enable the <strong>Word Filter<\/strong> to block banned words or phrases. Turn on <strong>Abuse Alert<\/strong> to receive an email when the rate limit is exceeded.<\/p><\/dd>\n<dt id=\"does%20the%20floating%20widget%20work%20without%20woocommerce%3F\"><h3>Does the floating widget work without WooCommerce?<\/h3><\/dt>\n<dd><p>Yes \u2014 the Floating Chat Widget in the free plugin works on any WordPress site. Enable it in Settings \u2192 UI, choose position (bottom-right or bottom-left), set a label, and it appears on every page automatically.<\/p><\/dd>\n<dt id=\"can%20i%20have%20different%20chatbots%20on%20different%20pages%3F\"><h3>Can I have different chatbots on different pages?<\/h3><\/dt>\n<dd><p>Yes. Use Bot Profiles (Settings \u2192 Profiles) to save named configurations, then load them per page: <code>[eaic_chat profile=\"support-bot\"]<\/code> on one page and <code>[eaic_chat profile=\"sales-bot\"]<\/code> on another. Each profile has its own provider, title, and system prompt.<\/p><\/dd>\n<dt id=\"how%20does%20the%20webhook%20work%3F\"><h3>How does the webhook work?<\/h3><\/dt>\n<dd><p>After each AI response completes, the plugin sends a non-blocking POST request to your configured URL with a JSON body containing: <code>session_uuid<\/code>, <code>user_message<\/code>, <code>ai_response<\/code>, <code>provider<\/code>, <code>timestamp<\/code>, and <code>site_url<\/code>. Optionally add a secret key to receive a <code>X-EAIC-Signature<\/code> HMAC-SHA256 header for verification. Compatible with Zapier, Make (Integromat), n8n, and any HTTP endpoint.<\/p><\/dd>\n<dt id=\"does%20voice%20input%20work%20on%20all%20browsers%3F\"><h3>Does voice input work on all browsers?<\/h3><\/dt>\n<dd><p>Voice input uses the browser's Web Speech API which is supported in Chrome, Edge, and Safari. It requires HTTPS. Firefox does not support this API.<\/p><\/dd>\n<dt id=\"is%20the%20math%20captcha%20accessible%3F\"><h3>Is the math captcha accessible?<\/h3><\/dt>\n<dd><p>The captcha is a simple arithmetic question (e.g., \"3 + 7 = ?\") that appears above the chat input. It requires no external service, no cookies, and no images \u2014 just basic arithmetic. It is solved once per page load.<\/p><\/dd>\n<dt id=\"where%20can%20i%20get%20support%3F\"><h3>Where can I get support?<\/h3><\/dt>\n<dd><ul>\n<li>\ud83d\udcfa Video tutorials: <a href=\"https:\/\/www.youtube.com\/@easybdit\">youtube.com\/@easybdit<\/a><\/li>\n<li>\ud83d\udcac Facebook: <a href=\"https:\/\/www.facebook.com\/easybdit\">facebook.com\/easybdit<\/a><\/li>\n<li>\ud83c\udf10 Website: <a href=\"https:\/\/easyit.com.bd\">easyit.com.bd<\/a><\/li>\n<li>\ud83d\udce7 Email: support@easyit.com.bd<\/li>\n<li>\ud83d\udc1b Bug reports: WordPress.org support forum<\/li>\n<\/ul><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.1.1<\/h4>\n\n<ul>\n<li>Fix: Custom provider settings now save reliably (JSON decode fallback prevents silent data loss on save).<\/li>\n<li>Fix: Settings page stays on the active tab after saving (sessionStorage-based tab restore).<\/li>\n<li>Fix: Custom provider slugs (custom_1, custom_2 \u2026) are now accepted as the Default Provider.<\/li>\n<\/ul>\n\n<h4>2.1.0<\/h4>\n\n<ul>\n<li>New: Custom Providers \u2014 add any OpenAI-compatible API endpoint (LM Studio, custom gateway, Ollama proxy, etc.) via Settings \u2192 Custom tab. Use with <code>[eaic_chat provider=\"custom_1\"]<\/code>. Includes per-provider Test Connection button, Enable\/Disable toggle, configurable URL, API key, model, and timeout.<\/li>\n<\/ul>\n\n<h4>2.0.1<\/h4>\n\n<ul>\n<li>Bug fixes from code audit: fixed critical array key mismatch in feedback ownership check (feedback now correctly accepts\/rejects based on actual session owner), fixed missing closing div in AI Avatar settings card (cosmetic HTML issue), improved no-storage mode (no longer creates orphan session records in DB), made <code>frontend_i18n()<\/code> a static method, updated Anthropic default model, fixed <code>Tested up to<\/code> header (6.8), improved copy button error handling in Shortcode Builder.<\/li>\n<\/ul>\n\n<h4>2.0.0<\/h4>\n\n<ul>\n<li><strong>Major release \u2014 Security Suite.<\/strong> Eight new security features in Settings \u2192 Security:<\/li>\n<li><strong>Access Restriction<\/strong> \u2014 Allow everyone, logged-in users only, or specific user roles.<\/li>\n<li><strong>IP Blocklist<\/strong> \u2014 Block specific IP addresses from using the chat.<\/li>\n<li><strong>Word Filter<\/strong> \u2014 Block or warn when a message contains banned words\/phrases (case-insensitive, one per line).<\/li>\n<li><strong>Prompt Injection Detection<\/strong> \u2014 Detect and block common jailbreak\/injection patterns automatically.<\/li>\n<li><strong>No-Storage Mode<\/strong> \u2014 Opt out of saving conversations to the database entirely (GDPR-strict setups).<\/li>\n<li><strong>Anti-Bot Math Captcha<\/strong> \u2014 Simple arithmetic challenge before the first message. No external API required.<\/li>\n<li><strong>Abuse Alert Email<\/strong> \u2014 Get an email when the rate limit is exceeded. Configurable recipient.<\/li>\n<li><strong>Message Length Limit<\/strong> \u2014 Configure max characters per user message (50\u20134000, default 4000).<\/li>\n<\/ul>\n\n<h4>1.0.31<\/h4>\n\n<ul>\n<li>Added Webhook Support \u2014 configure a webhook URL in Settings \u2192 Webhook. After each AI response, the plugin sends a non-blocking POST to your URL with JSON payload: session_uuid, user_message, ai_response, provider, timestamp. Optional HMAC-SHA256 secret key adds an X-EAIC-Signature header for verification. Compatible with Zapier, Make (Integromat), n8n, and any HTTP endpoint.<\/li>\n<\/ul>\n\n<h4>1.0.30<\/h4>\n\n<ul>\n<li>Added Multiple Bot Profiles \u2014 create named configurations (slug, name, provider, title, system prompt) in Settings \u2192 Profiles. Load any profile with <code>[eaic_chat profile=\"your-slug\"]<\/code>. Profiles appear in the Shortcode Builder for one-click selection.<\/li>\n<\/ul>\n\n<h4>1.0.29<\/h4>\n\n<ul>\n<li>Added Shortcode Builder \u2014 a new admin page (EasyIT AI Chat \u2192 Shortcode Builder) lets you configure the chatbot visually. Choose provider, title, placeholder, height, and system prompt with dropdowns and inputs. The shortcode updates live and a Copy button puts it on your clipboard instantly. No typing required.<\/li>\n<\/ul>\n\n<h4>1.0.28<\/h4>\n\n<ul>\n<li>Added Context Length Control \u2014 a new \"Context Window (messages)\" setting (1\u201320, default 10) controls how many previous messages are sent to the AI with each request. Lower values reduce token cost; higher values give the AI more conversation memory. Find it in Settings \u2192 AI Behavior.<\/li>\n<\/ul>\n\n<h4>1.0.27<\/h4>\n\n<ul>\n<li>Added Read Aloud (TTS) \u2014 a speaker button appears on hover over any AI message. Click to have the browser read the message aloud using the Web Speech API (SpeechSynthesis). Click again to stop. No external service required \u2014 uses the built-in browser engine.<\/li>\n<\/ul>\n\n<h4>1.0.26<\/h4>\n\n<ul>\n<li>Added GDPR Consent Gate \u2014 optionally show a consent banner before the chat activates. Users must click an accept button before chatting. Consent is stored in a browser cookie (365 days). Configurable message text and button label. Enable in Settings \u2192 UI.<\/li>\n<\/ul>\n\n<h4>1.0.25<\/h4>\n\n<ul>\n<li>Added Fullscreen Mode \u2014 an expand button in the chat topbar switches the widget to full-screen overlay. Press Escape or click again to exit. Works on any page without layout changes.<\/li>\n<\/ul>\n\n<h4>1.0.24<\/h4>\n\n<ul>\n<li>Added Session Search \u2014 a search box in the chat sidebar lets users filter conversations by title in real time. No extra server requests \u2014 filtering is client-side.<\/li>\n<\/ul>\n\n<h4>1.0.23<\/h4>\n\n<ul>\n<li>Added Message Feedback \u2014 \ud83d\udc4d\/\ud83d\udc4e buttons appear below each AI response. Ratings are stored in your database and visible in the Analytics dashboard (Helpful \/ Not helpful counts). Feedback resets if you regenerate a response.<\/li>\n<\/ul>\n\n<h4>1.0.22<\/h4>\n\n<ul>\n<li>Added Copy Message \u2014 hover any AI response to reveal a copy button. Copies the plain text of the message to the clipboard. Shows a checkmark confirmation on success.<\/li>\n<\/ul>\n\n<h4>1.0.21<\/h4>\n\n<ul>\n<li>Added Message Timestamps \u2014 each chat message now shows the time it was sent (HH:MM format) next to the sender label. Timestamps are preserved when loading conversation history.<\/li>\n<\/ul>\n\n<h4>1.0.20<\/h4>\n\n<ul>\n<li>Added Stop &amp; Regenerate \u2014 the Send button turns into a red Stop button while the AI is responding. Click Stop to cancel the stream at any time. After a response completes, a Regenerate button appears below the last AI message to re-run the same query.<\/li>\n<\/ul>\n\n<h4>1.0.19<\/h4>\n\n<ul>\n<li>Improved Typing Indicator \u2014 replaced the hourglass thinking bubble with a smooth 3-dot animated typing indicator (classic messaging-app style). Dots use the configured accent color and animate with a staggered bounce. Timer appears after 5 seconds for slow responses.<\/li>\n<\/ul>\n\n<h4>1.0.18<\/h4>\n\n<ul>\n<li>Added Analytics Dashboard \u2014 new admin page (EasyIT AI Chat \u2192 Analytics) showing total conversations, total messages, messages today, active chats this week, most used provider, and a 7-day message bar chart. All data from your own database, zero external tracking.<\/li>\n<\/ul>\n\n<h4>1.0.17<\/h4>\n\n<ul>\n<li>Added Floating Chat Widget \u2014 a fixed launcher button that appears on every page. Click to open a slide-up chat panel. Configurable position (bottom-right \/ bottom-left), label, and uses your accent color. Enable in Settings \u2192 UI. No WooCommerce required.<\/li>\n<\/ul>\n\n<h4>1.0.16<\/h4>\n\n<ul>\n<li>Added Conversation Export \u2014 a download button in the chat topbar lets users save the current conversation as a .txt file. Enable in Settings \u2192 UI.<\/li>\n<\/ul>\n\n<h4>1.0.15<\/h4>\n\n<ul>\n<li>Added Voice Input \u2014 enable a microphone button in the input area. Uses the browser's Web Speech API (Chrome, Edge, Safari). Speech is transcribed directly into the text field. Enable in Settings \u2192 UI. Requires HTTPS.<\/li>\n<\/ul>\n\n<h4>1.0.14<\/h4>\n\n<ul>\n<li>Added Color Customization \u2014 set Accent, User message, and AI message bubble colors via color pickers in Settings \u2192 UI. Changes apply instantly with a reset-to-default button for each color.<\/li>\n<\/ul>\n\n<h4>1.0.13<\/h4>\n\n<ul>\n<li>Added Custom AI Avatar \u2014 upload any image from the WordPress Media Library to replace the default \ud83e\udd16 emoji in all AI message bubbles. Configurable in Settings \u2192 UI.<\/li>\n<\/ul>\n\n<h4>1.0.12<\/h4>\n\n<ul>\n<li>Added Suggested Questions \u2014 display clickable question chips below the welcome area. Clicking a chip sends it instantly. Up to 6 chips, one per line. Configurable in Settings \u2192 UI.<\/li>\n<\/ul>\n\n<h4>1.0.11<\/h4>\n\n<ul>\n<li>Added Welcome Message \u2014 enable a custom AI greeting bubble that appears when a new chat session starts. Configurable in Settings \u2192 UI. Supports markdown. Not stored or sent to the AI.<\/li>\n<\/ul>\n\n<h4>1.0.10<\/h4>\n\n<ul>\n<li>Added \"Upgrade to Pro \u2192\" link in the plugins list for easy access to the Pro version.<\/li>\n<\/ul>\n\n<h4>1.0.9<\/h4>\n\n<ul>\n<li>Fixed fatal error on activation \u2014 Freemius SDK vendor files now included in the plugin package.<\/li>\n<\/ul>\n\n<h4>1.0.8<\/h4>\n\n<ul>\n<li>Renamed Freemius helper function to eaic_fs() for consistency with plugin prefix.<\/li>\n<\/ul>\n\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>WooCommerce bots moved to EasyIT AI Chat Pro add-on.<\/li>\n<li>Updated default models: GPT-4o-mini (OpenAI), Claude 3.5 Haiku (Anthropic), Gemini 2.0 Flash (Gemini).<\/li>\n<li>Added newer model examples in settings: GPT-4.1, o3, o4-mini, Claude 3.7 Sonnet, Gemini 2.5 Pro\/Flash.<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Minor bug fixes and stability improvements.<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Minor bug fixes and stability improvements.<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Added Google Gemini provider (Gemini 1.5 Flash, Gemini 1.5 Pro, Gemini 2.0 Flash).<\/li>\n<li>Added auto-title generation \u2014 first message generates a meaningful session title via the active AI provider.<\/li>\n<li>Added data retention cron \u2014 sessions older than the configured number of days are purged automatically.<\/li>\n<li>Added per-IP rate limiting as a secondary hard cap alongside the existing per-user\/session limit.<\/li>\n<li>Added Lock System Prompt setting to prevent front-end prompt injection on public sites.<\/li>\n<li>Improved guest cookie security: SameSite=Lax attribute now set via PHP 8.0 array signature.<\/li>\n<li>Rate limit window and max values are now configurable in Settings \u2192 Security.<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Renamed shortcode from <code>[easyai]<\/code> to <code>[eaic_chat]<\/code> to use the plugin's <code>eaic<\/code> prefix (WordPress.org review feedback).<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Renamed plugin and folder to comply with WordPress.org trademark guidelines.<\/li>\n<li>All exception messages now escaped before being thrown.<\/li>\n<li>All direct database queries paired with object-cache reads\/writes.<\/li>\n<li>All AJAX handlers verify nonce before reading <code>$_POST<\/code>.<\/li>\n<li>Removed deprecated <code>load_plugin_textdomain()<\/code> call (handled automatically since WP 4.6+).<\/li>\n<li>All view-scoped variables prefixed to avoid global namespace collisions.<\/li>\n<li>Excluded development files from production zip.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Initial public release.<\/li>\n<\/ul>","raw_excerpt":"AI chatbot for WordPress \u2014 OpenAI, Claude, Gemini, DeepSeek &amp; Ollama via one shortcode. 30+ features. Bring your own API keys.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/312787","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=312787"}],"author":[{"embeddable":true,"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/muradbd"}],"wp:attachment":[{"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=312787"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=312787"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=312787"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=312787"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=312787"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/bal.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=312787"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}