Experience API for LearnPress by GrassBlade Security & Risk Analysis

wordpress.org/plugins/grassblade-xapi-learnpress

This plugin enables the Experience API (xAPI / Tin Can), cmi5 , SCORM 1.2, SCORM 2004 and SCORM Dispatch on the LearnPress LMS by integrating with Gra …

200 active installs v5.5 PHP 5.6+ WP 4.0+ Updated Sep 25, 2025
experience-apigrassbladelearnpresstin-canxapi
100
A · Safe
CVEs total0
Unpatched0
Last CVENever
Safety Verdict

Is Experience API for LearnPress by GrassBlade Safe to Use in 2026?

Generally Safe

Score 100/100

Experience API for LearnPress by GrassBlade has no known CVEs and is actively maintained. It's a solid choice for most WordPress installations.

No known CVEs Updated 6mo ago
Risk Assessment

The grassblade-xapi-learnpress plugin version 5.5 exhibits a generally strong security posture based on the provided static analysis. The absence of any recorded vulnerabilities, including CVEs, is a significant positive indicator. The code demonstrates good practices with 100% of SQL queries using prepared statements, which effectively mitigates SQL injection risks. Furthermore, the lack of dangerous functions, file operations, and external HTTP requests (though one is present, it's not flagged as a specific risk) reduces potential attack vectors. The limited attack surface, with zero entry points found to be unprotected, is also a commendable aspect.

Key Concerns

  • Low output escaping coverage
  • No nonce checks found
  • Limited capability checks
Vulnerabilities
None known

Experience API for LearnPress by GrassBlade Security Vulnerabilities

No known vulnerabilities — this is a good sign.
Code Analysis
Analyzed Mar 16, 2026

Experience API for LearnPress by GrassBlade Code Analysis

Dangerous Functions
0
Raw SQL Queries
0
9 prepared
Unescaped Output
18
7 escaped
Nonce Checks
0
Capability Checks
2
File Operations
0
External Requests
1
Bundled Libraries
0

SQL Query Safety

100% prepared9 total queries

Output Escaping

28% escaped25 total outputs
Attack Surface

Experience API for LearnPress by GrassBlade Attack Surface

Entry Points0
Unprotected0
WordPress Hooks 31
actionadmin_menuaddon_plugins\functions.php:19
filterlearn-press/admin-default-scriptsaddon_plugins\functions.php:25
filterpre_http_requestaddon_plugins\functions.php:28
filterplugin_install_action_linksaddon_plugins\functions.php:204
filterplugin_install_action_linksaddon_plugins\functions.php:205
filterplugin_install_action_linksaddon_plugins\functions.php:314
actionadmin_menufunctions.php:22
actionplugins_loadedfunctions.php:23
actionadmin_noticesfunctions.php:35
actionlearn-press/after-content-item-summary/lp_lessonfunctions.php:40
actiongrassblade_completedfunctions.php:41
filtergrassblade_content_postfunctions.php:42
filtergrassblade_lms_mark_complete_button_idfunctions.php:43
filtergrassblade_lms_next_linkfunctions.php:44
actionlearn-press/user-enrolled-coursefunctions.php:45
filtergrassblade_add_to_content_postfunctions.php:48
actionlearnpress/user/course-enrolledfunctions.php:49
actionlearn-press/before-content-item-summary/lp_quizfunctions.php:50
actionwp_headfunctions.php:51
actiongrassblade_course_startedfunctions.php:52
actionlearn-press/user-course-finishedfunctions.php:53
actionlearn-press/user-completed-lessonfunctions.php:54
actionlearn-press/user/quiz-finishedfunctions.php:55
filtergrassblade_get_coursesfunctions.php:60
filtergrassblade_get_course_content_idsfunctions.php:61
filtergrassblade_get_coursefunctions.php:62
actiongrassblade_edit_extra_messagefunctions.php:67
filtergb_block_datafunctions.php:68
filteresc_htmlfunctions.php:419
filtergrassblade/reports/progress_snapshot/datareports_progress_snapshot_report\functions.php:6
filtergrassblade/reports/progress_snapshot/detailsreports_progress_snapshot_report\functions.php:7
Maintenance & Trust

Experience API for LearnPress by GrassBlade Maintenance & Trust

Maintenance Signals

WordPress version tested6.8.5
Last updatedSep 25, 2025
PHP min version5.6
Downloads13K

Community Trust

Rating100/100
Number of ratings1
Active installs200
Developer Profile

Experience API for LearnPress by GrassBlade Developer Profile

Pankaj Agrawal

21 plugins · 5K total installs

94
trust score
Avg Security Score
100/100
Avg Patch Time
30 days
View full developer profile
Detection Fingerprints

How We Detect Experience API for LearnPress by GrassBlade

Patterns used to identify this plugin on WordPress sites during automated security audits and web crawling.

Asset Fingerprints

Asset Paths
/wp-content/plugins/grassblade-xapi-learnpress/js/grassblade-learnpress-admin.js/wp-content/plugins/grassblade-xapi-learnpress/css/grassblade-learnpress-admin.css/wp-content/plugins/grassblade-xapi-learnpress/reports_progress_snapshot_report/css/reports-progress-snapshot.css/wp-content/plugins/grassblade-xapi-learnpress/reports_progress_snapshot_report/js/reports-progress-snapshot.js/wp-content/plugins/grassblade-xapi-learnpress/img/check.png
Script Paths
/wp-content/plugins/grassblade-xapi-learnpress/js/grassblade-learnpress-admin.js/wp-content/plugins/grassblade-xapi-learnpress/reports_progress_snapshot_report/js/reports-progress-snapshot.js
Version Parameters
grassblade-xapi-learnpress/js/grassblade-learnpress-admin.js?ver=grassblade-xapi-learnpress/css/grassblade-learnpress-admin.css?ver=grassblade-xapi-learnpress/reports_progress_snapshot_report/css/reports-progress-snapshot.css?ver=grassblade-xapi-learnpress/reports_progress_snapshot_report/js/reports-progress-snapshot.js?ver=

HTML / DOM Fingerprints

CSS Classes
gb_meta_box_extra_messagebuy-btn
JS Globals
grassblade_lp_activate_plugin
FAQ

Frequently Asked Questions about Experience API for LearnPress by GrassBlade