{"id":286556,"date":"2026-03-24T09:24:30","date_gmt":"2026-03-24T09:24:30","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/inqyra\/"},"modified":"2026-03-26T16:04:44","modified_gmt":"2026-03-26T16:04:44","slug":"inqyra","status":"publish","type":"plugin","link":"https:\/\/jv.wordpress.org\/plugins\/inqyra\/","author":23460447,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.1.5","stable_tag":"1.1.5","tested":"6.9.4","requires":"6.2","requires_php":"8.1","requires_plugins":null,"header_name":"Inqyra","header_author":"Ipportunities B.V.","header_description":"AI-powered chatbot with RAG (Retrieval-Augmented Generation) for your WordPress site. Uses your own AI API key.","assets_banners_color":"4c6dec","last_updated":"2026-03-26 16:04:44","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/inqyra.com","header_author_uri":"https:\/\/ippo.nl","rating":0,"author_block_rating":0,"active_installs":0,"downloads":209,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.4":{"tag":"1.1.4","author":"ipportunities","date":"2026-03-24 09:38:16"},"1.1.5":{"tag":"1.1.5","author":"ipportunities","date":"2026-03-26 16:04:44"}},"upgrade_notice":[],"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3489775,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3489775,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3489775,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3489775,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.4","1.1.5"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3489775,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3489775,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3489775,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3489775,"resolution":"4","location":"assets","locale":""},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3489775,"resolution":"5","location":"assets","locale":""}},"screenshots":{"1":"Chat widget on a live website","2":"Setup wizard \u2014 choose your AI provider","3":"Dashboard with conversation statistics","4":"Knowledge base management","5":"Widget customization settings","6":"Conversation history detail view"},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[191735,2364,2379,194533,70446],"plugin_category":[],"plugin_contributors":[258505],"plugin_business_model":[],"class_list":["post-286556","plugin","type-plugin","status-publish","hentry","plugin_tags-ai-chatbot","plugin_tags-chatbot","plugin_tags-live-chat","plugin_tags-openai","plugin_tags-rag","plugin_contributors-ipportunities","plugin_committers-ipportunities"],"banners":{"banner":"https:\/\/ps.w.org\/inqyra\/assets\/banner-772x250.png?rev=3489775","banner_2x":"https:\/\/ps.w.org\/inqyra\/assets\/banner-1544x500.png?rev=3489775","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/inqyra\/assets\/icon-128x128.png?rev=3489775","icon_2x":"https:\/\/ps.w.org\/inqyra\/assets\/icon-256x256.png?rev=3489775","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/inqyra\/assets\/screenshot-1.png?rev=3489775","caption":"Chat widget on a live website"},{"src":"https:\/\/ps.w.org\/inqyra\/assets\/screenshot-2.png?rev=3489775","caption":"Setup wizard \u2014 choose your AI provider"},{"src":"https:\/\/ps.w.org\/inqyra\/assets\/screenshot-3.png?rev=3489775","caption":"Dashboard with conversation statistics"},{"src":"https:\/\/ps.w.org\/inqyra\/assets\/screenshot-4.png?rev=3489775","caption":"Knowledge base management"},{"src":"https:\/\/ps.w.org\/inqyra\/assets\/screenshot-5.png?rev=3489775","caption":"Widget customization settings"}],"raw_content":"<!--section=description-->\n<p>Inqyra adds an intelligent chatbot to your WordPress site that answers visitor questions based on your pages, posts, and documents. Connect your own AI provider, keep your data on your server, and pay only what the AI actually costs.<\/p>\n\n<p><strong>Bring Your Own Key (BYOK)<\/strong> \u2014 You connect directly to your AI provider. No middleman, no markup. A typical conversation costs ~$0.003 with GPT-4o-mini.<\/p>\n\n<h4>5 AI Providers<\/h4>\n\n<p>Choose from OpenAI, Google Gemini, Anthropic (Claude), Mistral, or DeepSeek. Switch providers or models at any time \u2014 your content stays indexed.<\/p>\n\n<h4>How It Works<\/h4>\n\n<p>Inqyra uses Retrieval-Augmented Generation (RAG) to ground every answer in your actual content:<\/p>\n\n<ol>\n<li><strong>Crawl<\/strong> \u2014 Inqyra indexes your pages, posts, and custom post types<\/li>\n<li><strong>Embed<\/strong> \u2014 Content is converted to vector embeddings entirely in your browser (your content never leaves your server)<\/li>\n<li><strong>Search<\/strong> \u2014 When a visitor asks a question, Inqyra finds the most relevant content using vector similarity, keyword matching, and title\/path boosting<\/li>\n<li><strong>Answer<\/strong> \u2014 The relevant context is sent to your chosen AI provider, which generates a grounded response<\/li>\n<\/ol>\n\n<h4>Key Features<\/h4>\n\n<ul>\n<li><strong>5 AI providers<\/strong> \u2014 OpenAI, Gemini, Claude, Mistral, DeepSeek<\/li>\n<li><strong>Browser-based embeddings<\/strong> \u2014 Content never leaves your server for indexing<\/li>\n<li><strong>29 languages<\/strong> \u2014 Dutch, English, German, French, Spanish, Italian, Portuguese, and 22 more<\/li>\n<li><strong>Customizable widget<\/strong> \u2014 Colors, position, greeting, header, powered-by text<\/li>\n<li><strong>Auto-recrawl<\/strong> \u2014 Content re-indexes automatically when you update a post<\/li>\n<li><strong>Cost &amp; token tracking<\/strong> \u2014 Monitor API usage and set budget limits<\/li>\n<li><strong>Rate limiting<\/strong> \u2014 Built-in IP-based rate limiting (20\/min, 200\/hr)<\/li>\n<li><strong>API key encryption<\/strong> \u2014 Keys encrypted at rest with AES-256-CBC<\/li>\n<li><strong>No cookies<\/strong> \u2014 The plugin does not set any cookies<\/li>\n<li><strong>Lightweight<\/strong> \u2014 Loads asynchronously with minimal impact on Core Web Vitals<\/li>\n<li><strong>Setup wizard<\/strong> \u2014 Live in under 5 minutes with the guided setup<\/li>\n<\/ul>\n\n<h4>Free Features<\/h4>\n\n<ul>\n<li>Floating chat widget with full customization<\/li>\n<li>Unlimited pages indexed (post type: pages)<\/li>\n<li>All 5 AI providers (BYOK)<\/li>\n<li>Browser-based embeddings<\/li>\n<li>RAG-powered answers<\/li>\n<li>Conversation tracking (last 30 days)<\/li>\n<li>Auto-recrawl on content changes<\/li>\n<li>Cost &amp; token tracking with budget limits<\/li>\n<li>Query rewriting (LLM-powered query expansion)<\/li>\n<li>29-language support<\/li>\n<\/ul>\n\n<h4>Premium Features<\/h4>\n\n<ul>\n<li>Index posts, products &amp; custom post types<\/li>\n<li>Document upload (PDF, DOCX)<\/li>\n<li>Synonym management for improved search matching<\/li>\n<li>Webhooks (Zapier, Make, CRM integration)<\/li>\n<li>Lead extraction (email, phone, name, company)<\/li>\n<li>Advanced analytics &amp; statistics export<\/li>\n<li>Page targeting (show widget on specific pages)<\/li>\n<li>Extended conversation history &amp; analytics<\/li>\n<li>Escalation &amp; appointment request detection<\/li>\n<li>Email support<\/li>\n<\/ul>\n\n<h4>Works With Any Theme<\/h4>\n\n<p>Compatible with all modern WordPress themes and page builders including Elementor, Divi, Gutenberg, and WPBakery.<\/p>\n\n<h4>Privacy First<\/h4>\n\n<ul>\n<li>Embeddings are generated entirely in the browser \u2014 your content never leaves your server during indexing<\/li>\n<li>Only when a visitor asks a question does relevant context go to the AI provider, through your own API key<\/li>\n<li>No cookies are set by the plugin<\/li>\n<li>GDPR-friendly architecture<\/li>\n<li>Built in the Netherlands by Ipportunities B.V.<\/li>\n<\/ul>\n\n<h3>External services<\/h3>\n\n<p>This plugin connects to external third-party services to provide AI chatbot functionality. All connections require the site administrator to explicitly configure an API key before any data is sent. No data is transmitted without the administrator's action.<\/p>\n\n<h4>AI Chat Providers<\/h4>\n\n<p>When a visitor sends a message through the chat widget, the visitor's message along with relevant content from your website (retrieved via RAG search) and the system prompt configured by the administrator are sent to the chosen AI provider. The administrator selects which provider to use and provides their own API key. Only one provider is active at a time.<\/p>\n\n<p><strong>Anthropic (Claude)<\/strong>\nAPI endpoint: https:\/\/api.anthropic.com\/v1\/messages\nUsed for: Generating chat responses based on your website content.\n<a href=\"https:\/\/www.anthropic.com\/terms\">Terms of Service<\/a> | <a href=\"https:\/\/www.anthropic.com\/privacy\">Privacy Policy<\/a><\/p>\n\n<p><strong>OpenAI<\/strong>\nAPI endpoint: https:\/\/api.openai.com\/v1\/chat\/completions\nUsed for: Generating chat responses based on your website content.\n<a href=\"https:\/\/openai.com\/terms\">Terms of Use<\/a> | <a href=\"https:\/\/openai.com\/privacy\">Privacy Policy<\/a><\/p>\n\n<p><strong>Google Gemini<\/strong>\nAPI endpoint: https:\/\/generativelanguage.googleapis.com\/v1beta\/models\/\nUsed for: Generating chat responses based on your website content.\n<a href=\"https:\/\/policies.google.com\/terms\">Terms of Service<\/a> | <a href=\"https:\/\/policies.google.com\/privacy\">Privacy Policy<\/a><\/p>\n\n<p><strong>Mistral AI<\/strong>\nAPI endpoint: https:\/\/api.mistral.ai\/v1\/chat\/completions\nUsed for: Generating chat responses based on your website content.\n<a href=\"https:\/\/mistral.ai\/terms-of-service\">Terms of Service<\/a> | <a href=\"https:\/\/mistral.ai\/privacy-policy\">Privacy Policy<\/a><\/p>\n\n<p><strong>DeepSeek<\/strong>\nAPI endpoint: https:\/\/api.deepseek.com\/v1\/chat\/completions\nUsed for: Generating chat responses based on your website content.\n<a href=\"https:\/\/platform.deepseek.com\/terms\">Terms of Service<\/a> | <a href=\"https:\/\/platform.deepseek.com\/privacy\">Privacy Policy<\/a><\/p>\n\n<h4>HuggingFace Transformers.js (ML Inference Service)<\/h4>\n\n<p>This plugin uses the Transformers.js library to perform machine learning inference entirely in the browser for generating vector embeddings. The JavaScript library itself (~850 KB) is bundled locally within the plugin at <code>assets\/js\/vendor\/transformers.min.js<\/code>.<\/p>\n\n<p>When the administrator triggers content indexing, the library downloads the ML model files (~50 MB) and WebAssembly runtime from HuggingFace CDN to the user's browser. This is a service \u2014 the model files cannot be bundled locally in the plugin due to their size.<\/p>\n\n<p>No website content or user data is sent to HuggingFace \u2014 the model runs locally in the browser after download. The CDN only serves the model files.<\/p>\n\n<p>Library: @huggingface\/transformers v3.4.1 (bundled locally)\nModel: Xenova\/paraphrase-multilingual-MiniLM-L12-v2 (loaded from huggingface.co at runtime)\n<a href=\"https:\/\/huggingface.co\/terms-of-service\">HuggingFace Terms<\/a> | <a href=\"https:\/\/huggingface.co\/privacy\">HuggingFace Privacy<\/a><\/p>\n\n<h4>Freemius<\/h4>\n\n<p>This plugin uses Freemius for license management, plugin updates, and optional usage analytics. When the plugin is activated, Freemius may communicate with its servers to validate licenses, deliver updates, and collect anonymous usage data (if the user opts in). Users are prompted for consent before any analytics data is collected.<\/p>\n\n<p><a href=\"https:\/\/freemius.com\/terms\">Terms of Service<\/a> | <a href=\"https:\/\/freemius.com\/privacy\">Privacy Policy<\/a><\/p>\n\n<!--section=installation-->\n<ol>\n<li>Go to <strong>Plugins &gt; Add New<\/strong> in your WordPress admin<\/li>\n<li>Search for \"Inqyra\" and click <strong>Install Now<\/strong><\/li>\n<li>Click <strong>Activate<\/strong> \u2014 the setup wizard starts automatically<\/li>\n<li>Choose your AI provider and paste your API key<\/li>\n<li>Select which content to index and click <strong>Index Now<\/strong><\/li>\n<li>Customize the chat widget appearance<\/li>\n<li>Done \u2014 the chatbot is live on your site<\/li>\n<\/ol>\n\n<p>Or upload the plugin ZIP via <strong>Plugins &gt; Add New &gt; Upload Plugin<\/strong>.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20programming%20knowledge%3F\"><h3>Do I need programming knowledge?<\/h3><\/dt>\n<dd><p>No. Inqyra is fully no-code. Install the plugin, add your API key, and configure everything through the visual interface and setup wizard.<\/p><\/dd>\n<dt id=\"do%20i%20need%20my%20own%20ai%20account%3F\"><h3>Do I need my own AI account?<\/h3><\/dt>\n<dd><p>Yes. You need an API key from at least one supported provider: OpenAI, Google (Gemini), Anthropic (Claude), Mistral, or DeepSeek. This gives you full control over costs and data.<\/p><\/dd>\n<dt id=\"what%20does%20a%20conversation%20cost%3F\"><h3>What does a conversation cost?<\/h3><\/dt>\n<dd><p>With GPT-4o-mini, approximately $0.003 per conversation. With GPT-4o, roughly $0.01\u2013$0.03. With Gemini Flash, as low as $0.001. You pay the AI provider directly \u2014 Inqyra adds zero markup.<\/p><\/dd>\n<dt id=\"how%20is%20this%20different%20from%20other%20ai%20chat%20plugins%3F\"><h3>How is this different from other AI chat plugins?<\/h3><\/dt>\n<dd><p>Most plugins charge per message or mark up API costs. With Inqyra, you pay the AI provider directly at their published rates. Browser-based embeddings mean your content never leaves your server during indexing. You can switch AI providers at any time without re-indexing.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20woocommerce%3F\"><h3>Does it work with WooCommerce?<\/h3><\/dt>\n<dd><p>Yes. With Inqyra Premium, you can index WooCommerce products and any other custom post type. The free version indexes pages.<\/p><\/dd>\n<dt id=\"is%20it%20gdpr%20compliant%3F\"><h3>Is it GDPR compliant?<\/h3><\/dt>\n<dd><p>Inqyra is designed with privacy in mind. Embeddings are generated in the browser (no third-party processing during indexing), no cookies are set, and the plugin is built in the Netherlands. When a visitor chats, only the relevant context is sent to your chosen AI provider through your own API key.<\/p><\/dd>\n<dt id=\"what%20happens%20when%20i%20hit%20my%20budget%20limit%3F\"><h3>What happens when I hit my budget limit?<\/h3><\/dt>\n<dd><p>The chat widget stops responding for the rest of the day. Limits reset at midnight (server time). You can configure daily token limits, hourly request limits, and cost limits per agent.<\/p><\/dd>\n<dt id=\"can%20visitors%20chat%20in%20different%20languages%3F\"><h3>Can visitors chat in different languages?<\/h3><\/dt>\n<dd><p>Yes. Inqyra supports 29 languages. The chatbot responds in the language configured for your agent. The multilingual embedding model handles content in any supported language.<\/p><\/dd>\n<dt id=\"what%20file%20formats%20can%20i%20upload%3F\"><h3>What file formats can I upload?<\/h3><\/dt>\n<dd><p>With Inqyra Premium, you can upload PDF and DOCX files (up to 10 MB each). These are chunked and indexed alongside your website content.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.5<\/h4>\n\n<ul>\n<li>Improved query rewriting: switched from query expansion to keyword-based rewriting strategy with conversation context for better follow-up question handling<\/li>\n<li>Added temperature control (0.3) for more consistent query rewrites<\/li>\n<li>All AI providers now support the temperature option<\/li>\n<li>Input placeholder text now available in all 29 supported languages<\/li>\n<li>Added customizable input placeholder field in widget settings (with option to hide)<\/li>\n<li>Replaced EULA acceptance with data processing consent in setup wizard<\/li>\n<li>Added link to Privacy Policy in readme<\/li>\n<li><a href=\"https:\/\/inqyra.com\/privacy-policy\/\">Privacy Policy<\/a><\/li>\n<\/ul>\n\n<h4>1.1.3<\/h4>\n\n<ul>\n<li>Bundled Transformers.js library locally (removed external CDN dependency)<\/li>\n<li>Updated smalot\/pdfparser to 2.12.4<\/li>\n<li>Improved file upload sanitization (sanitize_mime_type, absint for all $_FILES fields)<\/li>\n<li>Improved inline documentation for json_decode sanitization flows<\/li>\n<li>Escaped SQL identifiers in ALTER TABLE migrations with esc_sql()<\/li>\n<li>Removed license_key from default settings<\/li>\n<li>Wrapped Freemius sync cron in premium-only guard<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Simplified to two tiers: Free and Premium (removed Business tier, renamed Pro to Premium)<\/li>\n<li>Free version now indexes unlimited pages (post type: pages only)<\/li>\n<li>Premium adds posts, products, custom post types, documents, synonyms, webhooks, analytics, lead extraction<\/li>\n<li>Page targeting (show widget on specific pages) is now a Premium feature<\/li>\n<li>Conversation history: Free shows last 30 days, Premium unlimited<\/li>\n<li>Full WordPress.org plugin directory compliance<\/li>\n<li>External services fully documented in readme.txt<\/li>\n<\/ul>\n\n<h4>1.1.2<\/h4>\n\n<ul>\n<li>Fixed all WordPress Plugin Check errors and warnings<\/li>\n<li>Resolved double $wpdb-&gt;prepare() pattern in vector store and RAG engine<\/li>\n<li>Added phpcs:ignore\/disable annotations for all direct database queries on custom tables<\/li>\n<li>Renamed inq_fs to inqyra_fs for WordPress naming convention compliance<\/li>\n<\/ul>\n\n<h4>1.1.1<\/h4>\n\n<ul>\n<li>Updated Freemius SDK integration settings<\/li>\n<li>Added plan tier detection helpers for tier-aware feature gating<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Full WordPress Plugin Check compliance \u2014 resolved all PHPCS errors<\/li>\n<li>Added proper output escaping across all admin templates and service classes<\/li>\n<li>Added translators comments for all internationalized strings with placeholders<\/li>\n<li>Ordered all i18n placeholders per WordPress standards<\/li>\n<li>Replaced inline script with proper wp_enqueue_script for embeddings module<\/li>\n<li>Added direct file access protection at plugin entry point<\/li>\n<\/ul>\n\n<h4>1.0.9<\/h4>\n\n<ul>\n<li>Updated plugin and author metadata for WordPress.org submission<\/li>\n<\/ul>\n\n<h4>1.0.8<\/h4>\n\n<ul>\n<li>Fixed prompt builder showing model ID instead of AI question (updated deprecated Claude model)<\/li>\n<li>Added Claude Haiku 4.5 to available models and pricing<\/li>\n<li>WordPress Plugin Check compliance: resolved all PHPCS errors<\/li>\n<li>Improved input sanitization and nonce verification across admin<\/li>\n<li>Gated debug logging behind WP_DEBUG to follow WordPress best practices<\/li>\n<li>Moved uninstall logic to Freemius after_uninstall hook for proper cleanup<\/li>\n<li>Used WordPress Filesystem API (wp_delete_file, WP_Filesystem) throughout<\/li>\n<\/ul>\n\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li>5 AI providers: OpenAI, Gemini, Claude, Mistral, DeepSeek<\/li>\n<li>RAG-powered search with vector, keyword, and title\/path matching<\/li>\n<li>Browser-based embeddings via Transformers.js<\/li>\n<li>29-language support with default system prompts<\/li>\n<li>Customizable floating chat widget<\/li>\n<li>Auto-recrawl on content changes<\/li>\n<li>Cost and token tracking with budget limits<\/li>\n<li>Setup wizard for guided configuration<\/li>\n<li>Pro: Document upload (PDF, DOCX), synonyms, webhooks, lead extraction, advanced analytics<\/li>\n<\/ul>","raw_excerpt":"AI-powered chatbot that answers visitor questions based on your own WordPress content. Bring your own API key \u2014 zero markup.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/286556","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=286556"}],"author":[{"embeddable":true,"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/ipportunities"}],"wp:attachment":[{"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=286556"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=286556"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=286556"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=286556"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=286556"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/jv.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=286556"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}