Pirmoji analizė
Išbandykite PDF analizę be paskyros. Pridėkite žetoną, kad būtų taikomi jūsų paskyros limitai ir išsaugomi rezultatai.
/api/v1/pdf/analyzecurl -X POST https://pdfcheck.online/api/v1/pdf/analyze \
-H "Accept: application/json" \
-F "file=@document.pdf"
Nukopijuoti nepavyko. Pažymėkite kodą ir nukopijuokite jį rankiniu būdu.
- Autentifikacija
- Neprivaloma
- Įkėlimo limitas
- 50 MB
- Bazinis URL
- https://pdfcheck.online/api/v1
Autentifikacija
PDF analizei žetonas neprivalomas. Paskyros informacijai, išsaugotoms analizėms ir žetonų valdymui reikalingas Bearer žetonas.
Žetonus laikykite paslaptyje. Naudokite aplinkos kintamąjį, o nenaudojamus žetonus atšaukite paskyroje. Valdyti API žetonus
curl -X POST https://pdfcheck.online/api/v1/pdf/analyze \
-H "Accept: application/json" \
-H "Authorization: Bearer $PDFCHECK_API_TOKEN" \
-F "file=@document.pdf"
Nukopijuoti nepavyko. Pažymėkite kodą ir nukopijuokite jį rankiniu būdu.
Naudojimas ir limitai
Be paskyros: 10 analizių per dieną iš vieno IP adreso. Free: 100 per dieną. Pro ir AI: dienos limito nėra. Apdorojimo galiniams taškams taip pat taikomas 30 užklausų per minutę limitas. Analizės atsakymuose pateikiamas likusių patikrų skaičius.
| Prieiga | Analizės per dieną | Įkėlimo limitas |
|---|---|---|
| Žetono nereikia | 10 | 50 MB |
| Free | 100 | 50 MB |
| Pro / AI | Dienos limito nėra | 100 MB |
Apdorojimo galiniai taškai taip pat priima iki 30 užklausų per minutę. Atsakymas 429 gali reikšti viršytą dienos arba minutės limitą.
POST/pdf/analyze
Įkelkite ir analizuokite PDF failą. Grąžina išsamius iš PDF ištrauktus metaduomenis.
| Pavadinimas | Tipas | Aprašymas |
|---|---|---|
file | multipart/form-data | Privalomas. PDF failas analizei: be paskyros ir su Free planu – iki 50 MB; su Pro ir AI – iki 100 MB. |
Atsakymo pavyzdys; reikšmės priklauso nuo dokumento.
{
"success": true,
"data": {
"id": "example-analysis-token",
"view_key": "example-view-key",
"filename": "document.pdf",
"file_size": 1048576,
"file_size_formatted": "1.00 MB",
"metadata": {
"basic": {
"pages": 10,
"pdf_version": "1.7",
"analysis_mode": "lightweight",
"partial_analysis": true
},
"document": {
"title": "Example document",
"author": "Example author",
"creator": "Microsoft Word",
"producer": "Adobe PDF Library"
}
},
"analyzed_at": "2026-09-29T12:00:00+00:00"
},
"remaining_checks": 9
}
Nukopijuoti nepavyko. Pažymėkite kodą ir nukopijuokite jį rankiniu būdu.
API metaduomenų analizė veikia ribotu, lengvuoju režimu. Išsami šriftų, vaizdų ir spalvų analizė praleidžiama; metadata.basic.partial_analysis reikšmė yra true.
Metaduomenys ir programinės įrangos požymiai neįrodo autorystės, autentiškumo ar atitikties standartams.
Įkelto failo duomenys po apdorojimo ištrinami; analizės rezultatai ir metaduomenys gali būti saugomi. Žr. privatumo politiką. Privatumo politika
GET/user
Gaukite informaciją apie autentifikuotą naudotoją, įskaitant dienos naudojimo limitus.
Žetonas privalomas. Atsakymo pavyzdys; reikšmės priklauso nuo dokumento.
{
"success": true,
"data": {
"name": "Example user",
"email": "user@example.com",
"daily_limit": 100,
"remaining_checks": 99,
"checks_used_today": 1
}
}
Nukopijuoti nepavyko. Pažymėkite kodą ir nukopijuokite jį rankiniu būdu.
GET/pdf
Visų autentifikuoto naudotojo PDF analizių sąrašas su puslapiavimu.
Žetonas privalomas
| Užklausos parametrai | Numatytoji reikšmė | Aprašymas |
|---|---|---|
per_page | 20 | Rezultatų skaičius puslapyje (1–100) |
page | 1 | integer |
{
"success": true,
"data": [
{
"id": "example-analysis-token",
"filename": "document.pdf",
"file_size": 1048576,
"file_size_formatted": "1.00 MB",
"analyzed_at": "2026-09-29T12:00:00+00:00"
}
],
"meta": {
"current_page": 1,
"last_page": 1,
"per_page": 20,
"total": 1
}
}
Nukopijuoti nepavyko. Pažymėkite kodą ir nukopijuokite jį rankiniu būdu.
GET/pdf/{token}
Gaukite išsamius analizės rezultatus pagal analizės ID (bendrinimo žetoną).
Žetonas privalomas
curl https://pdfcheck.online/api/v1/pdf/example-analysis-token \
-H "Accept: application/json" \
-H "Authorization: Bearer $PDFCHECK_API_TOKEN"
Nukopijuoti nepavyko. Pažymėkite kodą ir nukopijuokite jį rankiniu būdu.
Galinių taškų žinynas
POST/pdf/extract-text
Ištraukite tekstą iš PDF. Failą siųskite lauke pdf; šiam galiniam taškui taikomas 50 MB įkėlimo limitas, o rezultatas grąžinamas data.pages.
curl -X POST https://pdfcheck.online/api/v1/pdf/extract-text \
-H "Accept: application/json" \
-F "pdf=@document.pdf"
Nukopijuoti nepavyko. Pažymėkite kodą ir nukopijuokite jį rankiniu būdu.
POST/pdf/to-markdown
Konvertuokite PDF į Markdown. Failą siųskite lauke pdf (50 MB limitas). Atskira kvota: be paskyros ir su Free planu – 10 konvertavimų per dieną; su Pro ir AI – 100. Nuskenuotiems puslapiams gali būti naudojamas išorinis AI OCR. Atsakyme pateikiamas remaining_conversions.
curl -X POST https://pdfcheck.online/api/v1/pdf/to-markdown \
-H "Accept: application/json" \
-F "pdf=@document.pdf"
Nukopijuoti nepavyko. Pažymėkite kodą ir nukopijuokite jį rankiniu būdu.
Žetonų valdymas
Žetonams kurti per API reikia jau turimo žetono. Pirmąjį žetoną sukurkite savo paskyroje. Valdyti API žetonus
| Galiniai taškai | Aprašymas |
|---|---|
GET /tokens | Visų autentifikuoto naudotojo API žetonų sąrašas. |
POST /tokens | Sukurkite naują API žetoną. Žetonas rodomas tik vieną kartą atsakyme. name: string (max: 255) |
DELETE /tokens/{tokenId} | Atšaukite (ištrinkite) API žetoną visam laikui. |
curl -X POST https://pdfcheck.online/api/v1/tokens \
-H "Accept: application/json" \
-H "Authorization: Bearer $PDFCHECK_API_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name":"My integration"}'
Nukopijuoti nepavyko. Pažymėkite kodą ir nukopijuokite jį rankiniu būdu.
Klaidų kodai
| HTTP kodas | Klaidos kodas | Aprašymas |
|---|---|---|
| 401 | Unauthenticated. | Neteisingas arba nepateiktas API žetonas |
| 404 | not_found | Išteklius nerastas arba prieiga draudžiama |
| 422 | message / errorscorrupted_pdfpassword_protectedanalysis_failed | Netinkama užklausa arba PDF apdorojimo klaida, įskaitant nepalaikomą failą, per didelį įkėlimą, pažeistą PDF ar apsaugą slaptažodžiu |
| 429 | daily_limit_exceededmessage | Viršytas dienos arba minutės limitas; bandykite dar kartą, kai atitinkamas limitas atsinaujins |
Kodo pavyzdžiai
Rezultatą skaitykite iš data.metadata.basic.pages. Visi atsakymų fragmentai yra pavyzdžiai.
Node.js 20 arba naujesnė versija; naudojamos integruotos fetch, FormData ir Blob funkcijos.
import { readFile } from 'node:fs/promises';
const form = new FormData();
form.append('file', new Blob([await readFile('document.pdf')], {
type: 'application/pdf'
}), 'document.pdf');
const headers = { Accept: 'application/json' };
if (process.env.PDFCHECK_API_TOKEN) {
headers.Authorization = `Bearer ${process.env.PDFCHECK_API_TOKEN}`;
}
const response = await fetch('https://pdfcheck.online/api/v1/pdf/analyze', {
method: 'POST', headers, body: form
});
const result = await response.json();
if (!response.ok || !result.success) throw new Error(JSON.stringify(result));
console.log(result.data.metadata.basic.pages);
console.log(result.remaining_checks);
Nukopijuoti nepavyko. Pažymėkite kodą ir nukopijuokite jį rankiniu būdu.
Python (requests)
import os
import requests
headers = {'Accept': 'application/json'}
if os.getenv('PDFCHECK_API_TOKEN'):
headers['Authorization'] = f"Bearer {os.environ['PDFCHECK_API_TOKEN']}"
with open('document.pdf', 'rb') as pdf:
response = requests.post(
'https://pdfcheck.online/api/v1/pdf/analyze',
headers=headers,
files={'file': ('document.pdf', pdf, 'application/pdf')},
timeout=120,
)
response.raise_for_status()
result = response.json()
print(result['data']['metadata']['basic']['pages'])
print(result['remaining_checks'])
Nukopijuoti nepavyko. Pažymėkite kodą ir nukopijuokite jį rankiniu būdu.
PHP (cURL)
<?php
$headers = ['Accept: application/json'];
if ($token = getenv('PDFCHECK_API_TOKEN')) {
$headers[] = 'Authorization: Bearer ' . $token;
}
$curl = curl_init('https://pdfcheck.online/api/v1/pdf/analyze');
curl_setopt_array($curl, [
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => $headers,
CURLOPT_POSTFIELDS => ['file' => new CURLFile('document.pdf', 'application/pdf')],
]);
$body = curl_exec($curl);
if ($body === false) throw new RuntimeException(curl_error($curl));
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
$result = json_decode($body, true, flags: JSON_THROW_ON_ERROR);
if ($status >= 400 || !($result['success'] ?? false)) {
throw new RuntimeException($body);
}
echo $result['data']['metadata']['basic']['pages'];
Nukopijuoti nepavyko. Pažymėkite kodą ir nukopijuokite jį rankiniu būdu.