Endpoints

Referencia de los endpoints de conversiones, push y webhooks de la REST API de Tapeto.

Todos los endpoints siguientes están bajo la ruta base https://api.tapeto.dev/api/v1. Cada ruta requiere autenticación — consulta Autenticación.

Conversiones

Crear una conversión

POST /conversions
{
  "project_id": "uuid",
  "builder": "gutenberg",
  "metadata": { "custom": "data" }
}

builder es uno de gutenberg, elementor, oxygen, divi — la disponibilidad depende de tu plan. El proyecto debe estar previamente analizado (POST /projects/:id/parse) antes de poder convertirlo.

{
  "ok": true,
  "data": { "conversion": { "id": "uuid", "status": "queued", "...": "..." } },
  "message": "Conversion queued successfully. Check status with GET /conversions/:id"
}

Errores posibles: 404 si el proyecto no existe o no es tuyo, 422 si todavía no se ha analizado, 403 si el builder no está disponible en tu plan.

Listar conversiones

GET /conversions?page=1&project_id=uuid&builder=gutenberg&status=completed
{
  "ok": true,
  "data": {
    "conversions": [
      {
        "id": "uuid",
        "project_id": "uuid",
        "builder": "elementor",
        "status": "completed",
        "progress": 100,
        "fidelity_score": 87,
        "output_data": { "...": "..." },
        "created_at": "...",
        "updated_at": "..."
      }
    ],
    "meta": { "page": 1, "pageSize": 20, "total": 150, "totalPages": 8 }
  }
}

Obtener / reintentar / eliminar una conversión

GET    /conversions/:id
PATCH  /conversions/:id
DELETE /conversions/:id
POST   /conversions/:id/retry

Push a WordPress

POST /conversions/:id/push

Requiere una conexión de WordPress configurada (connection_id). Solo soportado para los builders gutenberg y elementor.

Oxygen y Divi todavía no admiten push

Llamar a push para una conversión oxygen o divi devuelve 422 BUILDER_NOT_SUPPORTED. Usa exportación en su lugar — consulta Exportar resultados.

{
  "ok": true,
  "data": {
    "page_id": 123,
    "page_title": "Home",
    "page_url": "https://example.com/home",
    "edit_url": "https://example.com/wp-admin/post.php?post=123&action=edit",
    "preview_url": "https://example.com/home",
    "elementor_injected": true
  }
}

Descargar / exportar

GET /conversions/:id/download
GET /conversions/:id/file?part=page|header|footer|sidebar
GET /conversions/:id/export?format=wxr

export?format=wxr devuelve un archivo WordPress eXtended RSS, importable de forma nativa a través de Tools → Import en cualquier sitio WordPress.

Webhooks PRO

Los webhooks salientes están disponibles en el plan Studio. Hasta 10 endpoints por cuenta, firmados con HMAC-SHA256.

GET    /webhooks
POST   /webhooks
GET    /webhooks/:id
PATCH  /webhooks/:id
DELETE /webhooks/:id
GET    /webhooks/:id/deliveries
POST   /webhooks/:id/test

Eventos soportados: conversion.completed, conversion.failed, project.created, export.ready, o * para suscribirte a todos ellos.

Disponibilidad de builders por plan

PlanBuilders disponibles vía la API
FreeGutenberg
StarterGutenberg, Elementor
ProGutenberg, Elementor, Oxygen
AgencyGutenberg, Elementor, Oxygen, Divi
StudioGutenberg, Elementor, Oxygen, Divi

Solicitar un builder que tu plan no incluye devuelve 403 BUILDER_NOT_ALLOWED.