Plagiaristično odkrivanje API: predložiti besedilo, anketa poročila.

Pesmo opazovanih točk, prinašatelj avtentikacije, pregledne kreditne cene. Zgrajena za agencije, uredniške cevovode in LMS-adjacent orodja.

Vaš API tipka

Prijava, da dobite ključ API. Ključi prihajajo z vsakim računom; API preverjanja so računovodski v kreditih.

Odjavi se

Končni točki

POST /api/v1/check/

Predloži besedilo za preverjanje. Vrne 202 s check_id. Tjelo: JSON z besedilnim poljem, izbirno globoko logično.

curl -X POST https://plagiarism.free/api/v1/check/ \
  -H "Authorization: Bearer YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"text": "The text you want to check..."}'

GET /api/v1/check/<check_id>/

Pregled stanja; ko je stanje opravljeno, je vključeno celotno poročilo: rezultat, tipi mečev na izjavo s samozavestjo in izlomki iz vira in viri.

curl https://plagiarism.free/api/v1/check/CHECK_ID/ \
  -H "Authorization: Bearer YOUR_KEY"

GET /api/v1/checks/

Naštejte svoje zadnje preglede, najprej. Izbirni parametri poizvedbe: meja (1- 100, privzeto 20) in status (narejeno, opravljeno, neuspešno...). Reconcile predložitve in nazaj lastno ploščo s pomočjo plošče brez shranjevanja vsakega check_id.

curl "https://plagiarism.free/api/v1/checks/?limit=20&status=done" \
  -H "Authorization: Bearer YOUR_KEY"

Primer Pythona

import time
import requests

API = "https://plagiarism.free/api/v1/check/"
HEADERS = {"Authorization": "Bearer YOUR_KEY"}

r = requests.post(API, json={"text": open("essay.txt").read()}, headers=HEADERS)
check_id = r.json()["check_id"]

while True:
    report = requests.get(f"{API}{check_id}/", headers=HEADERS).json()
    if report["status"] in ("done", "failed"):
        break
    time.sleep(3)

print(report["score_pct"], "% matched")
for source in report["sources"]:
    print(source["pct_of_document"], source["url"])

Primer za JavaScript

const API = "https://plagiarism.free/api/v1/check/";
const headers = { "Authorization": "Bearer YOUR_KEY", "Content-Type": "application/json" };

const { check_id } = await fetch(API, {
  method: "POST", headers, body: JSON.stringify({ text })
}).then(r => r.json());

let report;
do {
  await new Promise(res => setTimeout(res, 3000));
  report = await fetch(`${API}${check_id}/`, { headers }).then(r => r.json());
} while (!["done", "failed"].includes(report.status));

Cene

Identičen stran: 1 kredit = 1000 besed skeniranih, zaokrožen na ček; globoke kontrole stroški dvojno. Kreditni paketi so veljavni 365 dni; naročnine polnitev mesečno in vključuje API na vsaki ravni. Brez ločenih API stopenj, brez pristojbin za vsak sedež. Glejte načrte in pakiranja

Preverjanje teče asyncronoly (realno, omejeno spletno pridobivanje traja 20-45 sekund) - anketa opazovanja stanja opazovanega dogodka namesto, da bi držali povezavo odprto. HTTP 402 pomeni nezadostno kredite; odziv vključuje, koliko bi ček strošek.

Pogosta vprašanja

Two endpoints. POST /api/v1/check/ with your text returns a check_id; GET /api/v1/check/check_id/ returns status while the check runs and the full report JSON (score, matched sentences, sources) when done. Auth is a Bearer key from your account page. Code samples in curl, Python and JavaScript are below.

The same transparent unit as the site: 1 credit per 1,000 words scanned, rounded up per check. Credit packs start at $4.99 for 30 credits and are valid a full year; the $7.99/month Starter plan includes 60 credits and API access. No per-seat fees, no separate API pricing tier.

A check takes roughly 20-45 seconds because it performs real, rate-limited web retrieval and page comparison - the API is asynchronous for that reason. Submissions queue fairly; paid checks get priority. Poll the status endpoint every few seconds rather than holding the connection open.

Everything the web report shows: overall matched percentage, per-sentence match type (exact / near / none) with confidence, the matched source excerpt for each flagged sentence, and the source list with URLs and per-source match percentages. Enough to render your own report UI or gate a workflow.

Yes - that is what it is for: LMS-adjacent tools, editorial workflows, agency content pipelines. Volume is metered purely by credits, and the per-check word cap is 25000 words. If you need sustained high volume, contact us and we will provision for it rather than let queues degrade.