Плагиат аниқлаш API: матнни юбориш, ҳисоботни сўровга қўйиш.
Бир неча охирги нуқталар, соҳибнинг гувоҳномаси, очиқ кредит нархлари. Агентликлар, нашриётлар ва LMS-га яқин асбоблар учун яратилган.
Сизнинг API калитингиз
API калитингизни олиш учун киришингиз керак. Калитлар ҳар бир ҳисоб билан келади; API текширувлари кредитлар билан ҳисобланади.
Ройхатдан ўтишОхири
POST /api/v1/check/
Текшириш учун матнни юборинг. Check_id билан 202 қайтарилади. Бўлим: матн майдони билан JSON, ихтиёрий чуқур буле.
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>/
Ҳолат учун сўров; ҳолат тугаганида тўлиқ ҳисобот киритилади: натижа, ҳар бир жумла учун ишончли ва манбадан олинган ажратмалар билан мослик турлари ва манба рўйхати.
curl https://plagiarism.free/api/v1/check/CHECK_ID/ \ -H "Authorization: Bearer YOUR_KEY"
GET /api/v1/checks/
Сўнгги текширувларни янгисидан аввал кўрсатинг. Ижобий савол параметрлари: чегара (1-100, стандарт 20) ва ҳолат (навбатда, бажарилган, муваффақиятсиз...). Ҳар бир check_id сақланмасдан топширишларни мувофиқлаштириш ва ўз панелингизни сақлаш.
curl "https://plagiarism.free/api/v1/checks/?limit=20&status=done" \ -H "Authorization: Bearer YOUR_KEY"
Python мисоли
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 мисоли
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));
Нархлар
Сайтга ўхшаш: 1 кредит = 1000 сўз текширилган, ҳар бир текширув учун қирқилган; чуқур текширишлар икки баробарга арзон. Кредит пакетлари 365 кунгача амал қилади; обуна ҳар ой тўлдирилади ва ҳар бир даражада API'ни ўз ичига олади. Айрим API даражаси йўқ, ҳар бир ўрин учун тўлов йўқ. Планлар ва пакетларни кўриш
Текширувлар асинхрон равишда амалга оширилади (асосий, тезлик билан чекланган веб-қайд қилиш 20-45 сонияни олади) - алоқани очиқ тутиш ўрнига ҳолат охирини сўровга киритинг. HTTP 402 етарли кредитлар йўқлигидан далолат беради; жавоб текшириш қанча сарфланишини кўрсатади.