Documentación de la API
Integra el análisis de PDF en tus aplicaciones con nuestra API REST
Inicio rápido
Crear una cuenta
Regístrate para obtener una cuenta gratuita de PDFCheck.
Generar un token API
Ve a Tokens API y crea un nuevo token.
Realizar tu primera solicitud
Usa tu token para autenticar las solicitudes API.
Autenticación
Todas las solicitudes API requieren autenticación usando un token Bearer en el encabezado Authorization.
Authorization: Bearer YOUR_API_TOKEN
URL base
https://pdf.businesspress.io/api/v1
Límites de velocidad
Las cuentas gratuitas están limitadas a 50 análisis PDF por día. Los checks restantes se incluyen en cada respuesta API.
Endpoints
/user
Obtener información del usuario autenticado incluyendo límites de uso diario.
Ejemplo de respuesta
{
"success": true,
"data": {
"name": "John Doe",
"email": "john@example.com",
"daily_limit": 50,
"remaining_checks": 47,
"checks_used_today": 3
}
}
/pdf/analyze
Subir y analizar un archivo PDF. Devuelve metadatos detallados extraídos del PDF.
Cuerpo de solicitud
| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
| file | file | Requerido | Archivo PDF para analizar (máx. 100 MB) |
Ejemplo de solicitud
curl -X POST https://pdf.businesspress.io/api/v1/pdf/analyze \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-F "file=@document.pdf"
Ejemplo de respuesta
{
"success": true,
"data": {
"id": "abc123xyz789",
"filename": "document.pdf",
"file_size": 1048576,
"file_size_formatted": "1.00 MB",
"metadata": {
"title": "My Document",
"author": "John Doe",
"creator": "Microsoft Word",
"producer": "Adobe PDF Library",
"page_count": 10,
"pdf_version": "1.7",
"dates": {
"created": "2025-01-15T10:30:00Z",
"modified": "2025-01-16T14:22:00Z",
"was_modified": true
}
},
"analyzed_at": "2025-01-17T18:00:00Z"
},
"remaining_checks": 46
}
/pdf
Listar todos los análisis PDF del usuario autenticado con paginación.
Parámetros de consulta
| Nombre | Tipo | Predeterminado | Descripción |
|---|---|---|---|
| per_page | integer | 20 | Número de resultados por página (1-100) |
Ejemplo de respuesta
{
"success": true,
"data": [
{
"id": "abc123xyz789",
"filename": "document.pdf",
"file_size": 1048576,
"file_size_formatted": "1.00 MB",
"analyzed_at": "2025-01-17T18:00:00Z"
}
],
"meta": {
"current_page": 1,
"last_page": 1,
"per_page": 20,
"total": 1
}
}
/pdf/{id}
Obtener resultados detallados del análisis por ID de análisis (token de compartir).
Ejemplo de solicitud
curl https://pdf.businesspress.io/api/v1/pdf/abc123xyz789 \
-H "Authorization: Bearer YOUR_API_TOKEN"
Gestión de tokens
/tokens
Listar todos los tokens API del usuario autenticado.
/tokens
Crear un nuevo token API. El token solo se muestra una vez en la respuesta.
Cuerpo de solicitud
| Nombre | Tipo | Requerido | Descripción |
|---|---|---|---|
| name | string | Requerido | Un nombre descriptivo para el token |
/tokens/{id}
Revocar (eliminar) un token API permanentemente.
Códigos de error
| Código HTTP | Código de error | Descripción |
|---|---|---|
| 401 | unauthenticated | Token API inválido o faltante |
| 404 | not_found | Recurso no encontrado o acceso denegado |
| 422 | analysis_failed | El PDF no pudo ser procesado (archivo inválido o corrupto) |
| 429 | daily_limit_exceeded | Límite diario excedido, intenta de nuevo mañana |
Ejemplos de código
cURL
# Analyze a PDF
curl -X POST https://pdf.businesspress.io/api/v1/pdf/analyze \
-H "Authorization: Bearer YOUR_API_TOKEN" \
-F "file=@/path/to/document.pdf"
# Get analysis result
curl https://pdf.businesspress.io/api/v1/pdf/abc123xyz789 \
-H "Authorization: Bearer YOUR_API_TOKEN"
# List all analyses
curl https://pdf.businesspress.io/api/v1/pdf \
-H "Authorization: Bearer YOUR_API_TOKEN"
PHP
<?php
$apiToken = 'YOUR_API_TOKEN';
$filePath = '/path/to/document.pdf';
// Analyze PDF
$ch = curl_init();
curl_setopt_array($ch, [
CURLOPT_URL => 'https://pdf.businesspress.io/api/v1/pdf/analyze',
CURLOPT_POST => true,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . $apiToken,
],
CURLOPT_POSTFIELDS => [
'file' => new CURLFile($filePath, 'application/pdf'),
],
]);
$response = curl_exec($ch);
$result = json_decode($response, true);
if ($result['success']) {
echo "Analysis ID: " . $result['data']['id'] . "\n";
echo "Pages: " . $result['data']['metadata']['page_count'] . "\n";
echo "Remaining checks: " . $result['remaining_checks'] . "\n";
}
curl_close($ch);
Python
import requests
API_TOKEN = 'YOUR_API_TOKEN'
BASE_URL = 'https://pdf.businesspress.io/api/v1'
headers = {
'Authorization': f'Bearer {API_TOKEN}'
}
# Analyze PDF
with open('/path/to/document.pdf', 'rb') as f:
response = requests.post(
f'{BASE_URL}/pdf/analyze',
headers=headers,
files={'file': ('document.pdf', f, 'application/pdf')}
)
result = response.json()
if result['success']:
print(f"Analysis ID: {result['data']['id']}")
print(f"Pages: {result['data']['metadata']['page_count']}")
print(f"Remaining checks: {result['remaining_checks']}")
# Get analysis by ID
response = requests.get(
f"{BASE_URL}/pdf/{result['data']['id']}",
headers=headers
)
print(response.json())
JavaScript (Node.js)
const fs = require('fs');
const FormData = require('form-data');
const API_TOKEN = 'YOUR_API_TOKEN';
const BASE_URL = 'https://pdf.businesspress.io/api/v1';
async function analyzePdf(filePath) {
const form = new FormData();
form.append('file', fs.createReadStream(filePath));
const response = await fetch(`${BASE_URL}/pdf/analyze`, {
method: 'POST',
headers: {
'Authorization': `Bearer ${API_TOKEN}`,
},
body: form
});
const result = await response.json();
if (result.success) {
console.log(`Analysis ID: ${result.data.id}`);
console.log(`Pages: ${result.data.metadata.page_count}`);
console.log(`Remaining checks: ${result.remaining_checks}`);
}
return result;
}
// Usage
analyzePdf('/path/to/document.pdf');
¿Listo para comenzar?
Crea una cuenta gratuita y genera tu primer token API para comenzar la integración.