Endpoints

Referência para os endpoints de conversões, envio (push) e webhooks da API REST do Tapeto.

Todos os endpoints abaixo estão sob o caminho base https://api.tapeto.dev/api/v1. Todas as rotas requerem autenticação — veja Autenticação.

Conversões

Criar uma conversão

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

builder é um de gutenberg, elementor, oxygen, divi — a disponibilidade depende do seu plano. O projeto já deve ter sido analisado (POST /projects/:id/parse) antes de o poder converter.

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

Erros possíveis: 404 se o projeto não existir ou não for seu, 422 se ainda não tiver sido analisado, 403 se o construtor não estiver disponível no seu plano.

Listar conversões

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

Obter / repetir / eliminar uma conversão

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

Enviar para o WordPress

POST /conversions/:id/push

Requer uma conexão WordPress configurada (connection_id). Suportado apenas para os construtores gutenberg e elementor.

Oxygen e Divi ainda não são enviáveis

Chamar push para uma conversão oxygen ou divi devolve 422 BUILDER_NOT_SUPPORTED. Use a exportação em alternativa — veja 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
  }
}

Download / exportação

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

export?format=wxr devolve um ficheiro WordPress eXtended RSS, importável nativamente através de Tools → Import em qualquer site WordPress.

Webhooks PRO

Os webhooks de saída estão disponíveis no plano Studio. Até 10 endpoints por conta, assinados com HMAC-SHA256.

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

Eventos suportados: conversion.completed, conversion.failed, project.created, export.ready, ou * para subscrever todos eles.

Disponibilidade de construtores por plano

PlanoConstrutores disponíveis via API
FreeGutenberg
StarterGutenberg, Elementor
ProGutenberg, Elementor, Oxygen
AgencyGutenberg, Elementor, Oxygen, Divi
StudioGutenberg, Elementor, Oxygen, Divi

Solicitar um construtor que o seu plano não inclui devolve 403 BUILDER_NOT_ALLOWED.