API ஆவணம்

பாராஃப்ரேசிங், இலக்கணச் சரிபார்ப்பு, சுருக்கம், மொழிபெயர்ப்பு, கருத்துத் திருட்டுச் சோதனை ஆகியவை 56 மொழிகளில். எளிய REST, Cloudflare விளிம்பிலிருந்து வழங்கப்படுகிறது.

Same-origin
தற்போது API, adeptwrite.com தளத்திலிருந்து வரும் கோரிக்கைகளுக்கு மட்டுமே சேவை செய்கிறது (CORS தலைப்புகள் இல்லை). API விசைகளுடன் வெளி அணுகல் Pro திட்டத்துடன் திட்டமிடப்பட்டுள்ளது. ஒப்பந்தம் வெளிப்படையாக இருக்கவும் நீங்கள் முன்கூட்டியே தயாராகவும் இந்த ஆவணம் முன்கூட்டியே வெளியிடப்படுகிறது.
சுருக்கம்

AdeptWrite v1 API-யில் மூன்று இயங்கும் இறுதிப்புள்ளிகள் உள்ளன. POST /api/v1/run, task, mode, lang, text (6,000 எழுத்துக்கள் வரை) கொண்ட JSON-ஐப் பெற்று, அந்த மொழிக்காகத் தேர்ந்த Cloudflare Workers AI மாதிரியின் எளிய உரை முடிவைத் தருகிறது; POST /api/v1/plagiarism உங்கள் உரையைத் திறந்த மூலங்களுடன் ஒப்பிட்டு, தேடிய ஒவ்வொரு மூலத்தையும் பட்டியலிடுகிறது; GET /api/v1/health சேவை நிலையைத் தருகிறது. உரை சேமிக்கப்படுவதோ பதிவேட்டில் எழுதப்படுவதோ இல்லை; AI கோரிக்கைகள் ஒரு IP-க்கு நிமிடத்துக்கு 30 ஆக வரையறுக்கப்பட்டுள்ளன.

அடிப்படைகள்

  • அடிப்படை URL: https://adeptwrite.com/api/v1
  • வடிவம்: கோரிக்கைகளும் பதில்களும் JSON (Content-Type: application/json, UTF-8).
  • அங்கீகாரம்: இன்னும் இல்லை; கோரிக்கைகள் adeptwrite.com பக்கங்களிலிருந்தே (same-origin) வர வேண்டும். API விசைகள் Pro உடன் வரும்.
  • தனியுரிமை: text புலம் ஒருபோதும் சேமிக்கப்படுவதோ பதிவேட்டில் எழுதப்படுவதோ இல்லை; பதில்கள் Cache-Control: no-store கொண்டிருக்கும்.
  • பதிப்பு: /v1/ பாதை இணக்கமின்றி மாறாது; இணக்கத்தை உடைக்கும் மாற்றங்கள் /v2/ பயன்படுத்தும்.

POST/api/v1/run

ஒரு உரையில் ஒரு AI பணியை இயக்கி, முடிவை எளிய உரையாகத் தருகிறது (முன்னுரை இல்லை, Markdown வேலிகள் இல்லை).

கோரிக்கை

FieldTypeRequiredNotes
taskstring✓பணியின் பெயர்; கீழே உள்ள பணிப் பட்டியலைப் பார்க்கவும்.
textstring✓உள்ளீட்டு உரை, 1–6,000 எழுத்துக்கள்.
langstring✓முடிவின் மொழி: தளத்தின் 56 மொழிக் குறியீடுகளில் ஒன்று (ta, en, id, hi, pt-pt, zh-hant…; pt-BR போன்ற BCP 47 குறிச்சொற்கள் பொருத்தப்படும்) அல்லது "உள்ளீடு உள்ள அதே மொழி" என்பதற்கு auto.
modestring—அந்தக் கருவிக்கு உள்ள ஒரு முறை, எ.கா. Formal, Akademik, Ringkas, Poin-poin (முறைப் பெயர்கள் இந்தோனேசிய மொழியில் உள்ள பதிவேட்டுப் பெயர்கள்). முறைகள் இல்லாத பணிகளில் புறக்கணிக்கப்படும்.
optionsobject—பணிக்கேற்ற விருப்பங்கள்: translate-க்கு from / to (ஆதரிக்கப்படும் எந்த மொழியிலிருந்தும் எந்த மொழிக்கும்; from என்பது auto ஆகலாம்; sr-Cyrl செர்பிய மொழியை சிரில்லிக்கில் கேட்கும்), caption-க்கு platform (instagram / tiktok / linkedin), bio, coverletter, meta ஆகியவற்றுக்கு விருப்பமான பெயரிட்ட fields. பிற விசைகள் புறக்கணிக்கப்படும்.
POST /api/v1/run HTTP/1.1
Content-Type: application/json

{
  "task": "paraphrase",
  "mode": "Formal",
  "lang": "ta",
  "text": "மாணவர்களுக்கு நல்ல எழுத்துத் திறன் மிகவும் முக்கியம்.",
  "options": {}
}

பதில்

நிலை 200; ok: true, முடிவு output-இல், உண்மையில் பதிலளித்த மாதிரி model-இல் (மாற்று மாதிரி வந்தால் வேறுபடும்), செயலாக்க நேரம் மில்லிசெகண்டுகளில். பதில் நீள வரம்பையோ நேர வரம்பையோ எட்டி வெட்டப்பட்டால் truncated: true சேர்க்கப்படும்.

{
  "ok": true,
  "output": "மாணவர்களுக்கு எழுத்துத் திறன் இன்றியமையாதது.",
  "model": "@cf/qwen/qwen3-30b-a3b-fp8",
  "ms": 812
}

எடுத்துக்காட்டு: curl

curl -X POST https://adeptwrite.com/api/v1/run \
  -H "Content-Type: application/json" \
  -d '{"task":"grammar","lang":"ta","text":"நான் நாளை நூலகதிற்கு செல்கிறேன்."}'

எடுத்துக்காட்டு: JavaScript (fetch)

const res = await fetch('/api/v1/run', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({ task: 'summarize', mode: 'Poin-poin', lang: 'ta', text }),
});
const data = await res.json();
if (!data.ok) throw new Error(data.error.code + ': ' + data.error.message);
console.log(data.output);

POST/api/v1/plagiarism

உரையிலிருந்து 4–8 தனித்துவமான சொற்றொடர்களைத் தேர்ந்து, உரையின் மொழியில் உள்ள திறந்த மூலங்களில் (Wikipedia, Wikisource, Internet Archive முழு உரை, Europe PMC, DOAJ, arXiv; இணையத் தேடல் வழங்குநர் அமைக்கப்பட்டு கோரப்பட்டால் மட்டும்) தேடி, ஒத்திருக்கும் அளவை மதிப்பிடுகிறது. அந்தக் குறுகிய சொற்றொடர்கள் மட்டுமே சர்வரை விட்டு வெளியே செல்கின்றன.

கோரிக்கை

FieldTypeRequiredNotes
textstring✓குறைந்தது 30 சொற்கள், அதிகபட்சம் 6,000 எழுத்துக்கள்.
langstring✓தளத்தின் மொழிக் குறியீடு அல்லது auto.
optionsobject—இயக்குநர் இணையத் தேடல் வழங்குநரை அமைத்திருந்தால் web: true அதையும் வினவும்; அது உண்மையில் பதிலளித்ததா என்பதைப் பதிலில் உள்ள webSearched சொல்லும்.
POST /api/v1/plagiarism HTTP/1.1
Content-Type: application/json

{ "text": "…குறைந்தது 30 சொற்கள்…", "lang": "ta", "options": { "web": false } }

பதில்

நிலை 200; score (பொருந்திய சொற்கள் ÷ சொற்கள், 0–1), ஒவ்வொரு மூலத்துக்கும் matches மற்றும் சிறப்பிக்கப்பட்ட passages (உங்கள் உரையில் எழுத்து இடமாற்றங்கள்), sourcesSearched (முடிவில் பதில்கள் உள்ள மூலங்கள் மட்டும்), காரணத்துடன் sourcesSkipped, மற்றும் webSearched.

{
  "ok": true,
  "score": 0.42,
  "words": 52,
  "matchedWords": 22,
  "matches": [{ "source": "wikipedia", "title": "…", "url": "https://ta.wikipedia.org/wiki/…",
                "matchedWords": 22, "passages": [{ "start": 0, "end": 131, "text": "…" }] }],
  "sourcesSearched": ["wikipedia", "wikisource", "internet-archive-fts", "europepmc", "doaj"],
  "sourcesSkipped": [],
  "webSearched": false,
  "ms": 2310
}

எடுத்துக்காட்டு: curl

curl -X POST https://adeptwrite.com/api/v1/plagiarism \
  -H "Content-Type: application/json" \
  -d '{"lang":"ta","text":"…குறைந்தது 30 சொற்கள்…"}'

GET/api/v1/health

எந்தச் சேவைகள் இயக்கத்தில் உள்ளன என்பதைத் தெரிவிக்கிறது. உடல்பகுதி எதுவும் தேவையில்லை; ஒதுக்கீட்டில் கணக்கிடப்படுவதில்லை.

பதில்

நிலை 200. AI நிறுத்தும் சுவிட்ச் இயக்கத்தில் இருக்கும்போது ai என்பது false; plagiarism சோதனையாளர் வினவக்கூடிய மூலங்களைப் பட்டியலிடும்; aidetect என்பது AI டிடெக்டரின் சர்வர்-பக்க ஆழ்ந்த பகுப்பாய்வை விவரிக்கிறது; அது இன்னும் வரிசைப்படுத்தப்படவில்லை (POST /api/v1/aidetect 503 disabled எனப் பதிலளிக்கும்; தளத்தில் உள்ள டிடெக்டர் உங்கள் உலாவியில் இயங்குகிறது).

{
  "ok": true,
  "ai": true,
  "plagiarism": { "enabled": true, "sources": ["wikipedia", "wikisource", "internet-archive-fts", "europepmc", "doaj", "arxiv"], "web": false },
  "aidetect": { "enabled": false, "judge": false }
}

எடுத்துக்காட்டு: curl

curl https://adeptwrite.com/api/v1/health

Task list

taskWhat it does
paraphraseமறுவடிவம்; முறைகள்: Standar (இயல்பு), Formal, Santai, Akademik, Kreatif, Ringkas, Panjangkan.
grammarஇலக்கணம் மற்றும் எழுத்துப்பிழைத் திருத்தம்.
toneதொனி மாற்றம்; முறைகள்: Formal, Kantor (அலுவலகம்), Santai (இயல்பான பேச்சு).
rewriteசெயற்கையான அல்லது சிக்கலான வாக்கியங்களைத் திருத்தும்; முறைகள்: Standar, Formal.
resizeவாக்கியங்களைச் சுருக்கும் அல்லது விரிவாக்கும்; முறைகள்: Ringkas, Panjangkan.
essayகுறிப்புகளிலிருந்து பத்திகள் அல்லது கட்டுரையை உருவாக்கும்; முறைகள்: Akademik, Kreatif, Panjangkan.
summarizeசுருக்கம்; முறைகள்: Poin-poin (முக்கியக் குறிப்புகள்), Paragraf (பத்தி), Satu kalimat (ஒரு வாக்கியம்).
translateஆதரிக்கப்படும் எந்த இரு மொழிகளுக்கு இடையிலும் மொழிபெயர்ப்பு; options.from (அல்லது auto) மற்றும் options.to; முறைகள்: Alami (இயல்பான, இயல்புநிலை), Formal, Santai (இயல்பான பேச்சு).
thesisஆய்வுத் தலைப்பு யோசனைகளும் அத்தியாய வரைவும்.
abstractஆய்வுச் சுருக்கத்திலிருந்து கட்டமைக்கப்பட்ட ஆய்வுச் சுருக்கம்.
captionசமூக ஊடக கேப்ஷன்கள்; options.platform: instagram, tiktok, linkedin.
emailமின்னஞ்சல்களும் கடிதங்களும்; முறைகள்: Lamaran kerja (வேலை விண்ணப்பம்), Surat resmi (முறையான கடிதம்), Follow-up (தொடர் மின்னஞ்சல்).
headlineகட்டுரைத் தலைப்புகள்; முறைகள்: Kreatif, Ringkas.
productபொருள் விளக்கங்கள்; முறைகள்: Marketplace, Toko online (ஆன்லைன் கடை).
synonymஒரு சொல் அல்லது தொடருக்கான ஒத்த சொற்பட்டியல்.
humanizeசெயற்கையான, பொதுவான உரையை இயல்பாக ஒலிக்க வைக்கும்; முறைகள்: Alami, Pribadi (தனிப்பட்ட), Profesional (தொழில்முறை).
metaமூன்று மெட்டா தலைப்பு-விளக்க இணைகள்; முறைகள்: Artikel, Produk, Halaman (எந்த வலைப்பக்கமும்).
hashtagஒரு வரி ஹேஷ்டேக்குகள்; முறைகள்: Instagram, TikTok, LinkedIn, X.
bioமூன்று சுயவிவர பயோக்கள்; முறைகள்: Instagram, LinkedIn, X, TikTok.
outlineதுணைக் குறிப்புகளுடன் எண்ணிட்ட வரைவு; முறைகள்: Artikel, Esai, Skripsi (ஆய்வேடு), Presentasi (விளக்கக்காட்சி).
sloganபத்து முழக்கவரி யோசனைகள்; முறைகள்: Merek (பிராண்ட்), Kampanye (பிரச்சாரம்), Produk (பொருள்).
paragraphஒரு தலைப்பிலிருந்து ஒரு பத்தி; முறைகள்: Pembuka (முன்னுரை), Isi (உடல்), Penutup (முடிவுரை).
coverletterகவர் லெட்டர் வரைவு; முறைகள்: Fresh graduate (புதிய பட்டதாரி), Berpengalaman (அனுபவசாலி), Magang (பயிற்சி).
poemகுறுங்கவிதைகள்; முறைகள்: Bebas (புதுக்கவிதை), Berima (எதுகை மோனை), Akrostik, Haiku.

வரம்புகள்

உரை நீளம்
ஒரு கோரிக்கைக்கு அதிகபட்சம் 6,000 எழுத்துக்கள் (அதற்கு மேல் 413 too_long).
ஒரு IP முகவரிக்கு
நிமிடத்துக்கு 30 கோரிக்கைகள்.
ஒட்டுமொத்தம்
முழுச் சேவைக்கும் நிமிடத்துக்கு 100 கோரிக்கைகள், மேலும் AI அம்சங்களுக்கு ஒரு தினசரி உச்சவரம்பு.
கருத்துத் திருட்டுச் சோதனை
ஒரு IP-க்கு நிமிடத்துக்கு 5 சோதனைகள், முழுச் சேவைக்கும் நிமிடத்துக்கு 60; குறைந்தது 30 சொற்கள்.
வெளியீடு
ஒவ்வொரு பணிக்கும் ஒரு நீள வரம்பு, 2,048 டோக்கன்களுக்கு மேல் ஒருபோதும் இல்லை; வெட்டப்பட்ட பதில் truncated: true கொண்டிருக்கும்.
மாதிரி
மொழிக்கு ஏற்பத் தேர்வாகிறது: ஆங்கிலமும் இந்தோனேசிய மொழியும் @cf/aisingapore/gemma-sea-lion-v4-27b-it-இலும், மற்ற எல்லா மொழிகளும் (தமிழ் உட்பட) @cf/qwen/qwen3-30b-a3b-fp8-இலும் இயங்குகின்றன. ஒரு மாதிரி பரபரப்பாக இருந்தாலும், வீத வரம்பை எட்டினாலும், மெதுவாக இருந்தாலும், தோல்வியுற்றாலும், கோரிக்கை சங்கிலியில் அடுத்த மாதிரிக்குச் செல்லும் (Qwen3-30B, பிறகு @cf/google/gemma-4-26b-a4b-it, பிறகு @cf/meta/llama-3.3-70b-instruct-fp8-fast). பதிலளித்த மாதிரியையே model புலம் எப்போதும் குறிக்கும்.

பிழைக் குறியீடுகள்

நிலைகுறியீடுஎப்போது நிகழ்கிறது
400invalid_requestசெல்லாத JSON, தேவையான புலம் இல்லை, அல்லது அறியப்படாத task அல்லது lang.
413too_longtext 6,000 எழுத்துக்களைத் தாண்டியது.
403forbiddenகோரிக்கை adeptwrite.com பக்கத்திலிருந்து வரவில்லை.
429rate_limitedஒரு IP-க்கான அல்லது ஒட்டுமொத்த நிமிட வரம்பு மீறப்பட்டது. Retry-After-இல் உள்ள வினாடிகள் காத்திருக்கவும்.
429quota_exceededAI அம்சங்களுக்கான தினசரி உச்சவரம்பு தீர்ந்துவிட்டது. அடுத்த நாள் (UTC) மீண்டும் முயலவும்.
502upstreamசங்கிலியில் உள்ள எல்லா மாதிரிகளும் நேரத்துக்குள் பதிலளிக்கத் தவறின.
502empty_outputமாதிரிகள் பதிலளித்தன, ஆனால் முடிவு காலியாக இருந்தது.
503disabledஇயக்குநர் சேவையைத் தற்காலிகமாக நிறுத்தியுள்ளார், அல்லது (/api/v1/aidetect-க்கு) அது இன்னும் வரிசைப்படுத்தப்படவில்லை.

பிழை வடிவம்

ஒவ்வொரு பிழையும் பொருந்தும் HTTP நிலைக் குறியீட்டுடன், ஒரே வடிவ JSON ஆகத் திருப்பப்படும்:

{ "ok": false, "error": { "code": "rate_limited", "message": "Too many requests. Please try again shortly." } }

முதலில் ok-ஐப் பாருங்கள்; நிரலாக்கக் கையாளலுக்கு error.code-ஐப் படியுங்கள்; error.message-ஐப் பயனர்களுக்குக் காட்டுவது பாதுகாப்பானது.

பரிந்துரைக்கப்படும் நடைமுறை

  • ஒரு நீண்ட ஆவணத்தை அனுப்புவதை விட, உரையைப் பகுதிகளாக (எடுத்துக்காட்டாக பத்திக்குப் பத்தி) அனுப்புங்கள்; முடிவுகள் விரைவாக வரும், மதிப்பாய்வு செய்யவும் எளிது.
  • 429-ஐ உடனடி மறுமுயற்சிகளால் அல்ல, படிப்படியாக அதிகரிக்கும் காத்திருப்புடன் (exponential back-off) கையாளுங்கள்.
  • தேவையற்ற தனிப்பட்ட அல்லது ரகசியத் தரவை அனுப்ப வேண்டாம்; நாங்கள் சேமிப்பதில்லை என்றாலும் தரவுக் குறைப்பு கொள்கை பொருந்தும்.
  • AI முடிவு தவறாகவும் இருக்கலாம்; அதை இறுதி உண்மையாக அல்ல, மதிப்பாய்வு செய்ய வேண்டிய பரிந்துரையாக முன்வையுங்கள்.

அடிக்கடி கேட்கப்படும் கேள்விகள்

என் சொந்தப் பயன்பாட்டிலிருந்து அல்லது டொமைனிலிருந்து API-யை அழைக்கலாமா?

இன்னும் இல்லை. தற்போது Worker CORS தலைப்புகளை அனுப்புவதில்லை; adeptwrite.com பக்கங்களுக்கு மட்டுமே சேவை செய்கிறது. API விசைகளுடன் வெளி அணுகல் Pro திட்டத்துடன் திட்டமிடப்பட்டுள்ளது; அது கிடைக்கும்போது இந்த ஆவணம் புதுப்பிக்கப்படும்.

API-க்கு அனுப்பப்படும் உரை சேமிக்கப்படுகிறதா?

இல்லை. பதிலை உருவாக்க உரை மாதிரிக்கு அனுப்பப்பட்டு, பிறகு நிராகரிக்கப்படுகிறது. பதிவேடுகளில் மெட்டாடேட்டா மட்டுமே இருக்கும் (நிலைக் குறியீடு, பணி, கால அளவு). முழு விவரங்களுக்குத் தனியுரிமைக் கொள்கையைப் பாருங்கள்.

முடிவு ஏன் கட்டமைக்கப்பட்ட JSON அல்லாமல் எளிய உரையாக வருகிறது?

ஒவ்வொரு பணியும் முன்னுரை அல்லது Markdown வேலிகள் இல்லாத, நேரடியாக எடிட்டரில் காட்டத்தக்க ஒரே உரையைத் தருகிறது. கூடுதல் கட்டமைப்பு (எடுத்துக்காட்டாக மாற்றப் பட்டியல்) v1-ஐ மாற்றாமல் பிற்கால பதிப்பில் திட்டமிடப்பட்டுள்ளது.

API-க்கு எவ்வளவு செலவாகும்?

adeptwrite.com தளத்திலிருந்து இது இலவசம்; ஒரு IP-க்கு நிமிடத்துக்கு 30 AI கோரிக்கைகள் வரம்பு. வெளி அணுகலுக்கான விலை Pro திட்டத்துடன் அறிவிக்கப்படும்; அதுவரை எதுவும் வசூலிக்கப்படாது.

என் கோரிக்கைக்கு எந்த மாதிரி பதிலளிக்கிறது?

மொழியைப் பொறுத்தது: ஆங்கிலமும் இந்தோனேசிய மொழியும் SEA-LION-க்கும், மற்ற மொழிகள் (தமிழ் உட்பட) Qwen3-30B-க்கும் செல்கின்றன. அந்த மாதிரி பரபரப்பாக இருந்தாலோ தோல்வியுற்றாலோ, மாற்றுச் சங்கிலியில் அடுத்த மாதிரி பதிலளிக்கும்; பதிலளித்த மாதிரியைப் பதிலின் model புலம் குறிக்கும்.