Referencia de la API
Una API REST pequeña y estable para gestionar monitorizaciones y canales y consultar los cambios. La misma superficie que el panel de control.
URL base
Producción: https://api.pagedeltas.com. Todos los endpoints llevan el prefijo /api. Las respuestas correctas son JSON.
Autenticación
Cree una clave desde Settings → API keys (se requiere el rol de editor o administrador). La clave se muestra una sola vez en el momento de la creación — cópiela inmediatamente. Para revocar una clave, elimínela desde la misma página.
Authorization: Bearer pdt_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Las claves están limitadas al ámbito de la organización que las creó y actúan con acceso de nivel administrador dentro de esa organización, con independencia de cualquier usuario. No están vinculadas a un miembro, por lo que eliminar a un compañero no revoca las claves de la organización — elimine la propia clave para cortar el acceso.
Errores
Los errores devuelven un estado distinto de 2xx. Los errores de autenticación y de permisos se devuelven como un breve mensaje de texto plano (por ejemplo, unauthorized, forbidden); los errores de cuota y de límite de frecuencia devuelven un pequeño cuerpo JSON con un mensaje y las cifras relevantes. No analice un sobre de error fijo — ramifique según el código de estado HTTP:
400— solicitud mal formada (JSON incorrecto, URL no válida, campo ausente).401— credenciales ausentes o no válidas.403— autenticado, pero su rol carece de permiso para esta acción.404— recurso ausente o no perteneciente a su organización.409— conflicto (por ejemplo, la monitorización está en pausa debido a bloqueos repetidos).422— se superaría una cuota (por ejemplo, el límite de monitorizaciones de su plan). El cuerpo JSON incluyecurrentylimit.429— límite de frecuencia (comprobaciones manuales). Reduzca la frecuencia y reintente tras el retardo indicado enRetry-After.
Ejemplo de error de cuota (422):
{
"error": "plan_url_limit exceeded",
"current": 100,
"limit": 100,
"message": "Creating this monitor would exceed your plan's monitor limit (100)."
}Referencia de endpoints
| Método y ruta | Descripción |
|---|---|
GET /api/monitors | Enumera las monitorizaciones de su organización. |
POST /api/monitors | Crea una única monitorización. |
GET /api/monitors/{id} | Obtiene una única monitorización. |
PATCH /api/monitors/{id} | Actualiza url, nl_description, filter_prompt, css_selector, xpath_selector, status. |
DELETE /api/monitors/{id} | Elimina una monitorización y su historial. |
POST /api/monitors/{id}/check-now | Pone en cola una comprobación inmediata, omitiendo la programación (con límite de frecuencia, ver más abajo). |
GET /api/monitors/{id}/changes | Enumera los cambios detectados de una monitorización (admite ?limit=, máx. 100). |
POST /api/monitors/import | Importación masiva mediante carga de CSV multipart (campo file). |
POST /api/monitors/bulk-pause, bulk-resume, bulk-delete | Aplica una acción a una lista de id de monitorizaciones. |
GET|PUT /api/monitors/{id}/alert-channels | Lee o sustituye las anulaciones de canal de una monitorización. |
GET /api/alert-channels | Enumera los canales de notificación. |
POST /api/alert-channels | Crea un canal. |
PATCH|DELETE /api/alert-channels/{id} | Actualiza o elimina un canal. |
POST /api/alert-channels/{id}/test | Envía una carga útil de prueba para verificar la entrega. |
GET|POST /api/sitemap-monitors | Enumera o crea monitorizaciones de sitemap. |
POST /api/sitemap-monitors/import | Crea de forma masiva monitorizaciones de sitemap mediante carga de CSV multipart (campo file). |
GET|POST|DELETE /api/tokens | Enumera, crea y elimina claves de API. |
GET /api/billing/plan | El plan y los límites actuales de su organización. |
GET /api/plans | Público — enumera los planes disponibles (no requiere autenticación). |
Ejemplo — crear una monitorización
curl -X POST https://api.pagedeltas.com/api/monitors \
-H "Authorization: Bearer $PAGEDELTAS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"url": "https://example.com/pricing",
"nl_description": "Competitor pricing; alert on plan or price changes",
"filter_prompt": "Alert on plan or price changes; ignore copy tweaks",
"channel_ids": []
}'Campos opcionales: filter_prompt, css_selector, xpath_selector, is_pdf y channel_ids (anulaciones de canal por monitorización; omítalo para usar los valores predeterminados de la organización). No hay frequency — la programación es adaptativa.
Ejemplo — consultar los cambios
GET /api/monitors/01HW2X.../changes?limit=50 Authorization: Bearer $PAGEDELTAS_TOKEN
Devuelve primero los cambios más recientes (50 de forma predeterminada, máx. 100). No hay cursor — pagine ajustando limit y haciendo un seguimiento del último detected_at que ya haya visto.
{
"changes": [
{
"id": "01HW3...",
"detected_at": "2026-06-01T08:42:00Z",
"summary": "Pro plan increased from $29 to $39/month."
}
]
}Límites de frecuencia
Actualmente no hay límites de frecuencia por clave en los endpoints de lectura y escritura. La única excepción son las comprobaciones manuales:
- Comprobar ahora: 1 solicitud / minuto / monitorización.
Cuando alcance ese límite, la respuesta es 429 con un encabezado Retry-After en segundos. Aun así, modere usted mismo la frecuencia de forma sensata en los demás endpoints.
Versionado
Nuestro objetivo es mantener estable esta superficie. Pueden añadirse nuevos campos y endpoints sin previo aviso, así que programe clientes que ignoren los campos JSON desconocidos.