Vai al contenuto principale
Controlla metadati Comprimi PDF

Documentazione API

Integra l'analisi PDF nelle tue applicazioni con la nostra REST API

Gestisci token API

La tua prima analisi

Prova l’analisi di un PDF senza account. Aggiungi un token per usare i limiti del tuo account e salvare i risultati.

POST/api/v1/pdf/analyze
Esempio di richiesta
curl -X POST https://pdfcheck.online/api/v1/pdf/analyze \
  -H "Accept: application/json" \
  -F "file=@document.pdf"

Copia non riuscita. Seleziona il codice e copialo manualmente.

Autenticazione
Facoltativo
Limite di caricamento
50 MB
URL base
https://pdfcheck.online/api/v1

Autenticazione

Il token è facoltativo per analizzare un PDF. I dati dell’account, le analisi salvate e la gestione dei token richiedono un token Bearer.

Mantieni segreti i token. Usa una variabile d’ambiente e revoca i token inutilizzati dal tuo account. Gestisci token API

Esempio di richiesta
curl -X POST https://pdfcheck.online/api/v1/pdf/analyze \
  -H "Accept: application/json" \
  -H "Authorization: Bearer $PDFCHECK_API_TOKEN" \
  -F "file=@document.pdf"

Copia non riuscita. Seleziona il codice e copialo manualmente.

Utilizzo e limiti

Senza account: 10 analisi al giorno per indirizzo IP. Free: 100 al giorno. Pro e AI: nessun limite giornaliero. Gli endpoint di elaborazione hanno anche un limite di 30 richieste al minuto. Le risposte di analisi indicano i controlli rimanenti.

AccessoAnalisi giornaliereLimite di caricamento
Nessun token richiesto1050 MB
Free10050 MB
Pro / AINessun limite giornaliero100 MB

Gli endpoint di elaborazione accettano anche fino a 30 richieste al minuto. Una risposta 429 può indicare un limite giornaliero o al minuto.

POST/pdf/analyze

Carica e analizza un file PDF. Restituisce i metadati dettagliati estratti dal PDF.

NomeTipoDescrizione
filemultipart/form-dataObbligatorio. PDF da analizzare: fino a 50 MB senza account e con Free; 100 MB con Pro e AI.

Risposta di esempio; i valori dipendono dal documento.

Esempio di risposta
{
    "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
}

Copia non riuscita. Seleziona il codice e copialo manualmente.

L’analisi dei metadati dell’API usa una modalità leggera e limitata. L’analisi dettagliata di font, immagini e colori viene saltata; metadata.basic.partial_analysis è true.

I metadati e gli indicatori del software non dimostrano paternità, autenticità o conformità agli standard.

I dati del file caricato vengono eliminati dopo l’elaborazione; i risultati dell’analisi e i metadati possono essere conservati. Consulta l’informativa sulla privacy. Informativa sulla privacy

GET/user

Ottieni informazioni sull'utente autenticato inclusi i limiti di utilizzo giornalieri.

Token richiesto. Risposta di esempio; i valori dipendono dal documento.

Esempio di risposta
{
    "success": true,
    "data": {
        "name": "Example user",
        "email": "user@example.com",
        "daily_limit": 100,
        "remaining_checks": 99,
        "checks_used_today": 1
    }
}

Copia non riuscita. Seleziona il codice e copialo manualmente.

GET/pdf

Elenca tutte le analisi PDF per l'utente autenticato con paginazione.

Token richiesto

Parametri di queryPredefinitoDescrizione
per_page20Numero di risultati per pagina (1-100)
page1integer
Esempio di risposta
{
    "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
    }
}

Copia non riuscita. Seleziona il codice e copialo manualmente.

GET/pdf/{token}

Ottieni i risultati dettagliati dell'analisi tramite l'ID dell'analisi (token di condivisione).

Token richiesto

Esempio di richiesta
curl https://pdfcheck.online/api/v1/pdf/example-analysis-token \
  -H "Accept: application/json" \
  -H "Authorization: Bearer $PDFCHECK_API_TOKEN"

Copia non riuscita. Seleziona il codice e copialo manualmente.

Riferimento degli endpoint

POST/pdf/extract-text

Estrai testo da un PDF. Invia il file nel campo pdf; questo endpoint ha un limite di caricamento di 50 MB e restituisce data.pages.

Esempio di richiesta
curl -X POST https://pdfcheck.online/api/v1/pdf/extract-text \
  -H "Accept: application/json" \
  -F "pdf=@document.pdf"

Copia non riuscita. Seleziona il codice e copialo manualmente.

POST/pdf/to-markdown

Converti un PDF in Markdown. Invia il file nel campo pdf (limite di 50 MB). Quota separata: 10 conversioni al giorno senza account e con Free; 100 al giorno con Pro e AI. Le pagine scansionate possono usare OCR AI esterno. La risposta include remaining_conversions.

Esempio di richiesta
curl -X POST https://pdfcheck.online/api/v1/pdf/to-markdown \
  -H "Accept: application/json" \
  -F "pdf=@document.pdf"

Copia non riuscita. Seleziona il codice e copialo manualmente.

Gestione dei token

Per creare token tramite l’API serve un token esistente. Crea il tuo primo token dal tuo account. Gestisci token API

EndpointDescrizione
GET /tokensElenca tutti i token API per l'utente autenticato.
POST /tokensCrea un nuovo token API. Il token viene mostrato solo una volta nella risposta. name: string (max: 255)
DELETE /tokens/{tokenId}Revoca (elimina) un token API in modo permanente.
Esempio di richiesta
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"}'

Copia non riuscita. Seleziona il codice e copialo manualmente.

Codici di errore

Codice HTTPCodice di erroreDescrizione
401Unauthenticated.Token API non valido o mancante
404not_foundRisorsa non trovata o accesso negato
422message / errors
corrupted_pdf
password_protected
analysis_failed
Richiesta non valida o errore di elaborazione PDF, inclusi file non supportati, caricamenti troppo grandi, PDF danneggiati o protezione con password
429daily_limit_exceeded
message
Limite giornaliero o al minuto superato; riprova quando il limite pertinente viene reimpostato

Esempi di codice

Leggi il risultato da data.metadata.basic.pages. Tutti i frammenti di risposta sono illustrativi.

Node.js 20 o successivo; usa fetch, FormData e Blob nativi.

analyze-pdf.mjs
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);

Copia non riuscita. Seleziona il codice e copialo manualmente.

Python (requests)
Python
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'])

Copia non riuscita. Seleziona il codice e copialo manualmente.

PHP (cURL)
PHP
<?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'];

Copia non riuscita. Seleziona il codice e copialo manualmente.