REST API v1.0 Developer Hub

Developer API

Base URL:
https://••••••••••••/v1 Requires Active API
Status: Public Docs
Credits: 0 Scans
Rate Limit: 60 req / min
Developer API Access

TurniScan REST Developer API

Normal Vendors: Buy 50, 100, or 200 Files Pack from the Shop to get instant auto-eligibility (activate API key with 1-click, no admin approval required).
High-Volume Bulk Users: Special bulk discounted credit packages (500, 1,000, or 2,000 slots) available below.

High-Volume Bulk API Packages Developer API Exclusive

Special Bulk API Plans (For High File Volume)

Specially discounted bulk packages for API users, portals, bots, and large-scale integrations with heavy file traffic. (Normal vendors can use the 50, 100, or 200 files plans above).

500 Slots Pack 14 Days
325 USDT
~$0.65 per Turnitin report
  • 500 Full Turnitin Reports
  • Plag + AI Detection Included
  • S1 (50k) & S2 (350k) Engines
  • 100% Non-Repository Safe
Buy 500 Slots (325 USDT)
Most Popular
1,000 Slots Pack 28 Days
600 USD / USDT
~$0.60 per report (Save 8%)
  • 1,000 Full Turnitin Reports
  • Priority Processing Queue
  • S1 & S2 Dual Engine Support
  • Webhooks & Multi-threading
Buy 1,000 Slots (600 USD)
2,000 Slots Pack 45 Days
1,000 USD / USDT
~$0.50 per Turnitin report
  • 2,000 Full Turnitin Reports
  • Plag + AI Detection Included
  • S1 (50k) & S2 (350k) Engines
  • 100% Non-Repository Safe
Buy 2,000 Slots (1,000 USD)
1

Submit Document

POST file (.docx/.pdf) to /v1/scan/submit to queue report.

2

Check Status

GET /v1/scan/status or receive instant Webhook callback.

3

Download PDF

GET /v1/scan/download to save official Turnitin report.

POST /v1/scan/submit
1 Credit / Scan

Submit a file or raw text to start Turnitin plagiarism and AI scanning.

Server 1 [S1] Limit
Up to 50,000 Words
Server 2 [S2] Limit
Up to 3,50,000 Words
Max File Size
50 MB
Supported Formats
PDF, DOCX, DOC, TXT, ODT
Min Document Size
40 Words
Parameters (multipart/form-data):
Field Type Required Description
server String No "s1" (Default, Server 1: up to 50,000 words) or "s2" (Server 2: up to 3,50,000 words)
file File Yes* Document file (.docx, .pdf, .txt, .odt). Limit: Max 50 MB • S1: up to 50,000 words • S2: up to 3,50,000 words. *Or supply text
text String No Raw document text content (Min 40 words • S1: up to 50,000 words • S2: up to 3,50,000 words) if not uploading a binary file.
service_type String No "Turnitin Plagiarism" (Default), "Turnitin AI", or "Both"
exclude_quotes 0 / 1 No Exclude direct quotes & quotation marks from plagiarism (Default: 0)
exclude_biblio 0 / 1 No Exclude references and bibliography section (Default: 0). Also accepts exclude_bibliography
exclude_citations 0 / 1 No Exclude in-text citations from similarity calculation (Default: 0)
exclude_small_matches 0 / 1 No Exclude small sources / word filter under the word threshold (Default: 0)
small_match_threshold Integer (8-250) No Word filter threshold (e.g. 8, 10, 14 words. Default: 8). Also accepts exclude_words
custom_id String No Your internal order/user ID (e.g. order_9812) returned in all callbacks
webhook_url URL No Optional per-request webhook endpoint
Response JSON (HTTP 200):
{
  "success": true,
  "file_id": "FL-6734a8e29bf1",
  "filename": "Research_Thesis.docx",
  "custom_id": "order_9812",
  "status": "Pending",
  "message": "File submitted successfully and queued for Turnitin scanning",
  "slots_remaining": 0}
GET /v1/scan/status?file_id={file_id}
Free

Retrieve processing state, similarity percentage, and AI score for a submitted file.

Response JSON (Completed State):
{
  "success": true,
  "file_id": "FL-6734a8e29bf1",
  "status": "Completed",
  "similarity_score": 14,
  "ai_score": 2,
  "word_count": 4850,
  "download_url": "https://turniscan.com/v1/scan/download?file_id=FL-6734a8e29bf1",
  "completed_at": 1727443320
}
GET /v1/scan/download?file_id={file_id}
Binary PDF Stream

Streams the original Turnitin generated PDF similarity report directly.

Header: Authorization: Bearer YOUR_API_KEY
Content-Type: application/pdf
Content-Disposition: attachment; filename="document_Report.pdf"
GET /v1/account/balance
Free

Check available scan credits and account status.

{
  "success": true,
  "status": "Active",
  "available_credits": 0,
  "total_credits": 0,
  "used_credits": 0}
POST / DELETE /v1/scan/delete
Instant Purge

Permanently deletes the submitted document and all generated PDF similarity/AI reports from server storage. Call this as soon as your system finishes downloading the report to free up storage.

{
  "success": true,
  "file_id": "FL-6734a8e29bf1",
  "filename": "thesis.docx",
  "status": "Deleted",
  "message": "File and generated reports permanently deleted from server storage.",
  "deleted_at": 1727443900
}

Automated 24-Hour Storage Purge Active

To safeguard student research privacy and prevent disk accumulation, TurniScan automatically deletes all completed API files and their PDF reports 24 hours after delivery. If your portal allows end-users to delete files earlier, your backend can call POST /v1/scan/delete to trigger an instant physical deletion from our storage immediately.

Webhook Realtime Delivery

When Turnitin completes scanning your document, TurniScan delivers an HTTP POST payload with header X-TurniScan-Event: scan.completed to your configured Webhook URL:

{
  "event": "scan.completed",
  "file_id": "FL-6734a8e29bf1",
  "custom_id": "order_9812",
  "status": "Completed",
  "similarity_score": 14,
  "ai_score": 2,
  "download_url": "https://turniscan.com/v1/scan/download?file_id=FL-6734a8e29bf1"
}
24/7 Dedicated Developer Support

If you face any issue, contact our Admin to help!

Whether you are setting up Webhooks, need custom rate limits, debugging API responses, or want technical guidance on your integration — our Admin is available to assist you personally.