Before you install
Create an institution and API token in ScholarScan Admin. Moodle will use that bearer token to submit files, poll scan status, and fetch reports.
Download the starter Moodle plagiarism plugin package, install it under Moodle's plagiarism plugins directory, then connect it to ScholarScan with an API token from the admin console.
Create an institution and API token in ScholarScan Admin. Moodle will use that bearer token to submit files, poll scan status, and fetch reports.
GET /api/health verifies the Moodle connection and API token.POST /api/submissions queues an assignment file for scanning.GET /api/submissions/{id}/status checks processing status.GET /api/reports/{id} returns the similarity report.POST /api/reference-documents uploads institutional or lecturer local references.Download plagiarism_scholarscan.zip and extract the scholarscan folder into Moodle's plagiarism/ directory. To add the dedicated assignment grading column with both plagiarism and AI writing indicators, also download assignsubmission_scholarscan.zip and extract its scholarscan folder into Moodle's mod/assign/submission/ directory.
Open Moodle site administration, complete the detected plugin upgrade, then enable plagiarism plugins if your Moodle site has them disabled.
Set the API base URL to https://apps-el.umt.edu.my/scholarscan/api, paste the API token generated in ScholarScan Admin, and enable the plugin.
Open an assignment's settings, expand ScholarScan plagiarism plugin settings, and configure exclusions, indexing, report timing, student access, and draft processing. Editing teachers need the plagiarism/scholarscan:enable capability.
Run Moodle cron or execute php admin/cli/scheduled_task.php --execute='\\plagiarism_scholarscan\\task\\backfill_submissions_task' to upload existing submitted files for enabled assignments.
Run Moodle cron so Sync ScholarScan report statuses can update similarity scores. Teachers can then open ScholarScan report links from assignment grading, the submitted file area, or the optional ScholarScan similarity grading column.
course_external_id, course_name, assignment_external_id, assignment_title, submission_external_id, and file.student_external_id, student_name, and submitted_at.scan_settings: report timing, student access, source categories, AI/online flags, and optional lecturer-file grade suggestions.Idempotency-Key header for retry-safe uploads.Authorization: Bearer YOUR_TOKEN on every API request.