{"id":308037,"date":"2026-05-02T17:34:39","date_gmt":"2026-05-02T17:34:39","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/talking-monkey-insights\/"},"modified":"2026-05-02T17:32:21","modified_gmt":"2026-05-02T17:32:21","slug":"tm-insights","status":"publish","type":"plugin","link":"https:\/\/wordpress.org\/plugins\/tm-insights\/","author":23492735,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.0.0","stable_tag":"1.0.0","tested":"6.9.4","requires":"5.6","requires_php":"7.4","requires_plugins":null,"header_name":"Talking Monkey Insights","header_author":"Talking Monkey","header_description":"Site health snapshot and REST monitoring API for WordPress. Auto-detects WordFence\/Defender (security) and UpdraftPlus\/Snapshot (backups). Built for agencies and freelancers who want unified site health across multiple sites via their own dashboard.","assets_banners_color":"25221c","last_updated":"2026-05-02 17:32:21","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/tm-insights\/","header_author_uri":"https:\/\/talkingmonkeymedia.com","rating":0,"author_block_rating":0,"active_installs":60,"downloads":112,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"talkingmonkeymedia","date":"2026-05-02 17:32:21"}},"upgrade_notice":{"1.0.0":"<p>First public release.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3521048,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3521048,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3521048,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3521048,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3521048,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3521048,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3521048,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3521048,"resolution":"4","location":"assets","locale":""},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3521048,"resolution":"5","location":"assets","locale":""}},"screenshots":{"1":"Site Overview, Updates, Security, and Backups sections \u2014 multi-ecosystem detection in action.","2":"SSL section + REST API settings (enable toggle, refresh interval, endpoint URL, masked API key, regenerate).","3":"About + Privacy disclosures + brand footer.","4":"REST API section close-up \u2014 toggle, API key, regenerate.","5":"REST API endpoint response example (curl from terminal, JSON formatted)."},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[5590,5603,441,23853,151481],"plugin_category":[51,54],"plugin_contributors":[261675],"plugin_business_model":[],"class_list":["post-308037","plugin","type-plugin","status-publish","hentry","plugin_tags-agency","plugin_tags-monitoring","plugin_tags-multisite","plugin_tags-rest-api","plugin_tags-site-health","plugin_category-multisite","plugin_category-security-and-spam-protection","plugin_contributors-talkingmonkeymedia","plugin_committers-talkingmonkeymedia"],"banners":{"banner":"https:\/\/ps.w.org\/tm-insights\/assets\/banner-772x250.png?rev=3521048","banner_2x":"https:\/\/ps.w.org\/tm-insights\/assets\/banner-1544x500.png?rev=3521048","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/tm-insights\/assets\/icon-128x128.png?rev=3521048","icon_2x":"https:\/\/ps.w.org\/tm-insights\/assets\/icon-256x256.png?rev=3521048","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/tm-insights\/assets\/screenshot-1.png?rev=3521048","caption":"Site Overview, Updates, Security, and Backups sections \u2014 multi-ecosystem detection in action."},{"src":"https:\/\/ps.w.org\/tm-insights\/assets\/screenshot-2.png?rev=3521048","caption":"SSL section + REST API settings (enable toggle, refresh interval, endpoint URL, masked API key, regenerate)."},{"src":"https:\/\/ps.w.org\/tm-insights\/assets\/screenshot-3.png?rev=3521048","caption":"About + Privacy disclosures + brand footer."},{"src":"https:\/\/ps.w.org\/tm-insights\/assets\/screenshot-4.png?rev=3521048","caption":"REST API section close-up \u2014 toggle, API key, regenerate."},{"src":"https:\/\/ps.w.org\/tm-insights\/assets\/screenshot-5.png?rev=3521048","caption":"REST API endpoint response example (curl from terminal, JSON formatted)."}],"raw_content":"<!--section=description-->\n<p><strong>Talking Monkey Insights<\/strong> gives you a site health snapshot in your WordPress admin \u2014 and exposes the same data via a secure REST API so you can monitor multiple sites from your own dashboard.<\/p>\n\n<h4>What you see in WP Admin<\/h4>\n\n<ul>\n<li><strong>Updates<\/strong> \u2014 count + list of plugins needing updates, theme update count, core update status<\/li>\n<li><strong>Security<\/strong> \u2014 threats blocked, login attempts blocked, last scan results (auto-detected from WordFence or Defender)<\/li>\n<li><strong>Backups<\/strong> \u2014 last backup time, backup count, next scheduled backup (auto-detected from UpdraftPlus or Snapshot)<\/li>\n<li><strong>SSL<\/strong> \u2014 days until expiry with color-coded status<\/li>\n<li><strong>REST API<\/strong> \u2014 endpoint URL + your API key + enable\/disable toggle<\/li>\n<\/ul>\n\n<h4>Why the REST API matters<\/h4>\n\n<p>If you manage multiple WordPress sites \u2014 agency, freelance portfolio, internal IT \u2014 built-in WP Site Health is shallow and ManageWP\/MainWP require connecting to their proprietary dashboards. This plugin gives you a clean, secure REST endpoint at <code>\/wp-json\/tm\/v1\/stats<\/code> that you can hit from your own dashboard, BI tool, Slack bot, or whatever you already use.<\/p>\n\n<p>The endpoint requires an API key (auto-generated on activation; regeneratable). No other authentication.<\/p>\n\n<h4>Multi-ecosystem detection<\/h4>\n\n<p>Most site monitoring plugins lock you into one ecosystem. This one auto-detects whichever security and backup plugin you have installed:<\/p>\n\n<ul>\n<li><strong>Security:<\/strong> WordFence or Defender<\/li>\n<li><strong>Backups:<\/strong> UpdraftPlus or Snapshot<\/li>\n<\/ul>\n\n<p>Don't have either installed? The corresponding section shows a neutral \"no supported plugin detected\" state. No upsells, no recommendations to install anything.<\/p>\n\n<h4>Privacy<\/h4>\n\n<p>This plugin does not send any data outside of your WordPress site without your explicit configuration. No telemetry. No analytics. No phone-home.<\/p>\n\n<p>The REST API endpoint is enabled by default but can be disabled in settings. When enabled, access requires an API key. The plugin only responds to authenticated requests; it never proactively contacts external services.<\/p>\n\n<h4>Built by an agency that uses it<\/h4>\n\n<p>Talking Monkey hosts WordPress sites for our own clients. We built this plugin to monitor them from our internal dashboard \u2014 and made it free + open source so other agencies and site owners can do the same. We need it to be trustworthy because we install it on every site we host.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload <code>tm-insights<\/code> to the <code>\/wp-content\/plugins\/<\/code> directory (or install via WP Admin \u2192 Plugins \u2192 Add New \u2192 Search \"Talking Monkey Insights\").<\/li>\n<li>Activate the plugin through the <strong>Plugins<\/strong> screen in WordPress.<\/li>\n<li>Visit <strong>TM Insights<\/strong> in the WP Admin sidebar to see your site health.<\/li>\n<li>Visit the <strong>REST API<\/strong> section to copy your API key for external dashboards.<\/li>\n<\/ol>\n\n<p>That's it. No setup wizard, no account required, no signup.<\/p>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20send%20data%20anywhere%3F\"><h3>Does this plugin send data anywhere?<\/h3><\/dt>\n<dd><p>No. The plugin reads data from your WordPress install (plugin updates, SSL certificate, security\/backup plugin status) and either displays it in your WP Admin or returns it through an authenticated REST endpoint when an external dashboard requests it. It never proactively contacts any external service.<\/p><\/dd>\n<dt id=\"where%20is%20the%20rest%20endpoint%3F\"><h3>Where is the REST endpoint?<\/h3><\/dt>\n<dd><p>\/wp-json\/tm\/v1\/stats \u2014 relative to your site's URL. Send a GET request with the <code>X-TM-Key<\/code> header set to your API key (visible in <strong>TM Insights<\/strong> \u2192 <strong>REST API<\/strong> in WP Admin).<\/p><\/dd>\n<dt id=\"can%20i%20disable%20the%20rest%20api%3F\"><h3>Can I disable the REST API?<\/h3><\/dt>\n<dd><p>Yes. <strong>TM Insights<\/strong> \u2192 <strong>REST API<\/strong> \u2192 uncheck \"Enable REST API endpoint\" \u2192 Save.<\/p><\/dd>\n<dt id=\"what%20security%20plugins%20does%20this%20work%20with%3F\"><h3>What security plugins does this work with?<\/h3><\/dt>\n<dd><p>Phase 1 supports WordFence and Defender. We're planning to add Solid Security and Sucuri in future releases based on user demand.<\/p><\/dd>\n<dt id=\"what%20backup%20plugins%20does%20this%20work%20with%3F\"><h3>What backup plugins does this work with?<\/h3><\/dt>\n<dd><p>Phase 1 supports UpdraftPlus and Snapshot. Solid Backups, BlogVault, and Duplicator are candidates for future releases.<\/p><\/dd>\n<dt id=\"my%20security%2Fbackup%20plugin%20isn%27t%20supported%20%E2%80%94%20what%20do%20i%20do%3F\"><h3>My security\/backup plugin isn't supported \u2014 what do I do?<\/h3><\/dt>\n<dd><p>Open a <a href=\"https:\/\/wordpress.org\/support\/plugin\/tm-insights\/\">support thread<\/a> and tell us which plugin you'd like to see supported. We'll prioritize based on user demand.<\/p><\/dd>\n<dt id=\"is%20this%20plugin%20gpl%3F\"><h3>Is this plugin GPL?<\/h3><\/dt>\n<dd><p>Yes. Licensed under GPL v2 or later \u2014 you can fork, modify, and redistribute freely.<\/p><\/dd>\n<dt id=\"who%20built%20this%3F\"><h3>Who built this?<\/h3><\/dt>\n<dd><p><a href=\"https:\/\/talkingmonkeymedia.com\">Talking Monkey<\/a> \u2014 a WordPress-focused agency that uses this plugin internally to monitor every site we host. We made it public because every agency and freelancer in our space could use the same tool.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release on wp.org.<\/li>\n<li>Site Overview, Updates, Security, Backups, SSL, and REST API sections in WP Admin.<\/li>\n<li>Multi-ecosystem integration: WordFence + Defender (security), UpdraftPlus + Snapshot (backups).<\/li>\n<li>Auto-generated API key on activation, regeneratable from settings.<\/li>\n<li>Configurable auto-refresh interval (off \/ 5 \/ 15 \/ 60 minutes; default 60).<\/li>\n<li>Privacy-respecting: no telemetry, no phone-home, REST endpoint opt-in-able.<\/li>\n<\/ul>","raw_excerpt":"Site health snapshot and REST monitoring API. Auto-detects WordFence\/Defender, UpdraftPlus\/Snapshot. Built for agencies running multiple sites.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/308037","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=308037"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/talkingmonkeymedia"}],"wp:attachment":[{"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=308037"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=308037"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=308037"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=308037"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=308037"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=308037"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}