API de Page2Doc SOLO PRO

Acceso programático a la conversión de páginas web mediante API REST

⚠️ Se requiere suscripción Pro
El acceso a la API solo está disponible para suscriptores Pro. Genera tu clave API desde la ventana emergente de la extensión (sección Acceso a API).

Autenticación

Todas las solicitudes de API deben incluir tu clave API en el encabezado X-API-Key:

X-API-Key: p2d_api_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxxxxxx
🔐 Mejores prácticas de seguridad
Nunca confirmes claves API en el control de versiones. Utiliza variables de entorno o sistemas de gestión de secretos seguros.

Puntos finales

Convertir URL a documento

POST
https://page2doc.com/api/v1/convert

Convierte una URL de página web a formato PDF, Word (DOCX) o Excel (XLSX).

Cuerpo de solicitud (JSON)

Parámetro Tipo Requerido Descripción
url string URL completa de la página a convertir (debe comenzar con http:// o https://)
format string Formato de salida: pdf, docx o xlsx
mode string No Modo de extracción: full (predeterminado), article o tables
clean boolean No Elimina anuncios y ventanas emergentes (predeterminado: true)
wait number No Tiempo de espera en milisegundos antes de captura (predeterminado: 2000, máximo: 10000)

Ejemplo de solicitud (cURL)

curl -X POST https://page2doc.com/api/v1/convert \
  -H "Content-Type: application/json" \
  -H "X-API-Key: p2d_api_your_key_here" \
  -d '{
    "url": "https://example.com/article",
    "format": "pdf",
    "mode": "article",
    "clean": true
  }' \
  --output document.pdf

Ejemplo de solicitud (JavaScript/Node.js)

const response = await fetch('https://page2doc.com/api/v1/convert', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-API-Key': 'YOUR_API_KEY_HERE'
  },
  body: JSON.stringify({
    url: 'https://example.com/article',
    format: 'docx',
    mode: 'article',
    clean: true
  })
});

const blob = await response.blob();
const buffer = Buffer.from(await blob.arrayBuffer());
fs.writeFileSync('output.docx', buffer);

Ejemplo de solicitud (Python)

import requests
import os

response = requests.post(
    'https://page2doc.com/api/v1/convert',
    headers={
        'Content-Type': 'application/json',
        'X-API-Key': os.environ['PAGE2DOC_API_KEY']
    },
    json={
        'url': 'https://example.com/article',
        'format': 'pdf',
        'mode': 'article',
        'clean': True
    }
)

with open('output.pdf', 'wb') as f:
    f.write(response.content)

Respuesta exitosa

Estado: 200 OK
Content-Type: application/pdf, application/vnd.openxmlformats-officedocument.wordprocessingml.document o application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

El cuerpo de la respuesta contiene el archivo de documento binario.

Respuestas de error

Estado Error Descripción
401 No autorizado Clave API inválida o faltante
403 Prohibido La suscripción Pro ha expirado o la clave API ha sido revocada
413 Carga útil demasiado grande El contenido de la página excede el límite de tamaño (10MB para Pro)
422 Entidad no procesable URL inválida o formato no compatible
429 Demasiadas solicitudes Límite de velocidad excedido (500 solicitudes/día para Pro)
500 Error interno del servidor Error de conversión o error del servidor

Verificar estado de clave API

GET
https://page2doc.com/api/v1/status

Verifica tu clave API y consulta las estadísticas de uso.

Ejemplo de solicitud

curl https://page2doc.com/api/v1/status \
  -H "X-API-Key: p2d_api_your_key_here"

Respuesta exitosa

{
  "valid": true,
  "plan": "pro",
  "usage": {
    "today": 12,
    "month": 347,
    "limit": 500
  },
  "createdAt": "2025-02-15T10:30:00Z"
}

Límites de velocidad

Los encabezados de límite de velocidad se incluyen en todas las respuestas:

X-RateLimit-Limit: 500
X-RateLimit-Remaining: 487
X-RateLimit-Reset: 1708041600

Mejores prácticas

Soporte

Para soporte de API, aumentos de límite de velocidad o integraciones personalizadas, contáctanos en api@page2doc.com