Plaģiarisma atklāšana API: iesniedz tekstu, aptauj ziņojumu.
Neliela daļa galapunktu, nestājējs auth, pārredzamas kredīta cenas. Izbūvēta aģentūrām, redakcionālajiem cauruļvadiem un LMS palīginstrumentiem.
Jūsu API atslēga
Pierakstīties, lai saņemtu API atslēgu. Atslēgas nāk ar katru kontu; API pārbaudes tiek veiktas kredītos.
PierakstītiesMērķa punkti
POST /api/v1/check/
Iesniegt tekstu pārbaudei. Atgriež 202 ar check_id. Korporācija: JSON ar teksta lauku, pēc izvēles dziļu booleānu.
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>/
Aploks par statusu; kad statuss tiek darīts, pilns ziņojums ir iekļauts: punktu skaits, per-entence sērkociņus ar uzticību un avota fragmenti, un avotu sarakstu.
curl https://plagiarism.free/api/v1/check/CHECK_ID/ \ -H "Authorization: Bearer YOUR_KEY"
GET /api/v1/checks/
Uzskaitiet savas pēdējās pārbaudes, vispirms jaunāko. Neobligātās vaicājumu params: limits (1- 100, noklusētais 20) un statuss (aizpildīts, izdarīts, neizdevies...). Sakārtot iesūtīšanas un atpakaļ jūsu paneļa paneli, neuzglabājot katru check_ id.
curl "https://plagiarism.free/api/v1/checks/?limit=20&status=done" \ -H "Authorization: Bearer YOUR_KEY"
Python piemērs
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 piemērs
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));
Cena
Identiski uz vietas: 1 kredīts = 1000 vārdi skenēti, noapaļoti uz vienu pārbaudi; dziļas pārbaudes izmaksas divkāršo. Kredīta pakas ir derīgas 365 dienas; abonementi uzpilda katru mēnesi un ietver API katrā līmenī. Nav atsevišķa API līmenis, nav vienas vietas maksa. Skatīt plānus un paketes
Pārbaudes darbojas asinhroni (reāls, ātruma ierobežots tīmekļa retriveral aizņem 20-45 sekundes) - aptauja statusa mērķa kritērijs, nevis turot savienojumu atvērts. HTTP 402 nozīmē nepietiekamu kredītu; atbilde ietver to, ko pārbaude izmaksās.