Plagioa detektatzeko APIa: testua bidali, txostena galdekatu.
Amaierako puntu ugari, erabiltzailearen autentifikazioa, kreditu-prezio gardenak. Agentzientzat, editore-kanaletarako eta LMS-ren inguruko tresnetarako eraikia.
Zure API gakoa
Saioa hasi API gakoa lortzeko. Gakoak kontu guztietan daude; API egiaztapenak kredituetan fakturatzen dira.
Izena emanAmaierako puntuak
POST /api/v1/check/
Bidali testu bat egiaztatzeko. 202 itzultzen du check_id batekin. Gorputza: JSON testu-eremu batekin, boolear sakoneko aukerakoa.
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>/
Estatistika-metodoen bidez, datuen sailkapena egiten da: datu-multzoa, datu-multzo
curl https://plagiarism.free/api/v1/check/CHECK_ID/ \ -H "Authorization: Bearer YOUR_KEY"
GET /api/v1/checks/
Zerrendatu azken egiaztapenak, berrienak lehenik. Aukerazko kontsulta-parametroak: muga (1-100, lehenetsia 20) eta egoera (ilaran, eginda, huts eginda...). Konponketa-bidalketak eta zure dashboard-aren babeskopia check_id guztiak gorde gabe.
curl "https://plagiarism.free/api/v1/checks/?limit=20&status=done" \ -H "Authorization: Bearer YOUR_KEY"
Python adibidea
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"])
JavaScript adibidea
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));
Prezioa
Gunearen berdina: kreditu 1 = 1.000 hitz eskaneatu, egiaztapen bakoitzeko gora biribilduta; egiaztapen sakonetarako kostua bikoitza da. Kreditu-paketek 365 egun balio dute; harpidetzak hilean behin berritzen dira eta API maila guztietan barne hartzen dute. Ez dago API maila bereizirik, ez dago eserleku bakoitzeko kosturik. Ikusi planak eta paketeak
Egiaztapenak asinkrono exekutatzen dira (web-erabiltzaileek 20-45 segundo behar dituzte web-erabiltzaileen datu-basea eskuratzeko) - egoeraren amaierako puntua galdetu konexioa irekita mantentzearen ordez. HTTP 402-k kreditu nahikoak ez daudela esan nahi du; erantzunak egiaztapenaren kostua barne hartzen du.