Endpoint

Riferimento per gli endpoint di conversioni, push e webhook della REST API di Tapeto.

Tutti gli endpoint sottostanti si trovano sotto il percorso base https://api.tapeto.dev/api/v1. Ogni rotta richiede autenticazione — vedi Autenticazione.

Conversioni

Creare una conversione

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

builder è uno tra gutenberg, elementor, oxygen, divi — la disponibilità dipende dal tuo piano. Il progetto deve essere già stato analizzato (POST /projects/:id/parse) prima di poterlo convertire.

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

Possibili errori: 404 se il progetto non esiste o non è tuo, 422 se non è ancora stato analizzato, 403 se il builder non è disponibile sul tuo piano.

Elencare le conversioni

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 }
  }
}

Ottenere / ripetere / eliminare una conversione

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

Push verso WordPress

POST /conversions/:id/push

Richiede una connessione WordPress configurata (connection_id). Supportato solo per i builder gutenberg ed elementor.

Oxygen e Divi non sono ancora push-abili

Chiamare push per una conversione oxygen o divi restituisce 422 BUILDER_NOT_SUPPORTED. Usa invece l’esportazione — vedi Esportare i risultati.

{
  "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
  }
}

Download / esportazione

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

export?format=wxr restituisce un file WordPress eXtended RSS, importabile nativamente tramite Tools → Import su qualsiasi sito WordPress.

Webhook PRO

I webhook in uscita sono disponibili sul piano Studio. Fino a 10 endpoint per account, firmati con HMAC-SHA256.

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

Eventi supportati: conversion.completed, conversion.failed, project.created, export.ready, oppure * per iscriversi a tutti.

Disponibilità dei builder per piano

PianoBuilder disponibili via API
FreeGutenberg
StarterGutenberg, Elementor
ProGutenberg, Elementor, Oxygen
AgencyGutenberg, Elementor, Oxygen, Divi
StudioGutenberg, Elementor, Oxygen, Divi

Richiedere un builder che il tuo piano non include restituisce 403 BUILDER_NOT_ALLOWED.