Referencia API

Obtenga HTML de blog y metadatos SEO en su stack. Ruta base: `/api/v1`.

Descargar especificación OpenAPI 3.0 →

Contenido que ya está en tu sitio

Los webhooks solo se disparan cuando GrowthDailySeo crea un borrador nuevo. El contenido que ya tienes en el CMS no se envía automáticamente.

  1. Importa una vez paginando `GET /posts` con `status=published` (y `status=draft` si importas borradores).
  2. Guarda `updatedAt` y consulta con `updatedAfter` para cambios sin volver a descargar todo el catálogo.
  3. Usa `If-None-Match` con el `ETag` de la respuesta para omitir páginas sin cambios.
GET/api/v1/sites/:siteId/posts

Artículos paginados para sincronización con CMS. Devuelve borrador y publicado por defecto (los borradores nuevos se pueden importar de inmediato).

Parámetros de consulta

  • page — Número de página (predeterminado 1)
  • pageSize — Elementos por página, máx. 50 (predeterminado 12)
  • search — Filtro de título sin distinción de mayúsculas
  • status — Filtro: `draft`, `published` o `all` (predeterminado — borrador + publicado, recomendado para sincronizar el CMS)
  • language — Código ISO (p. ej. `en`, `tr`) — coincide con `language` de cada entrada
  • updatedAfter — Marca ISO 8601 — solo entradas actualizadas después de ese momento
Respuesta 200
{
  "items": [{
    "id": "...",
    "slug": "my-post",
    "title": "...",
    "contentHtml": "<article>...</article>",
    "status": "draft",
    "seo": {
      "metaDescription": "...",
      "ogTitle": "...",
      "ogDescription": "...",
      "keywords": ["..."]
    },
    "faqJsonLd": { "@type": "FAQPage", ... }
  }],
  "page": 1,
  "pageSize": 12,
  "total": 42,
  "totalPages": 4
}
GET/api/v1/sites/:siteId/posts/:slug

Payload completo del artículo: contentHtml, excerpt, seo, faqJsonLd. Funciona para slugs en borrador y publicados.

GET/api/v1/sites/:siteId/guides/:slug

Devuelve una guía publicada individual por slug.

Respuesta 200 (JSON camelCase)
{
  "id": "...",
  "slug": "my-guide",
  "title": "...",
  "contentHtml": "<article>...</article>",
  "status": "published",
  "publishedAt": "2026-07-21T12:00:00.000Z",
  "updatedAt": "2026-07-21T12:00:00.000Z"
}
GET/api/v1/sites/:siteId/sitemap.xml

Sitemap XML de entradas y guías publicadas. Auth con Bearer o `?token=` para rastreadores.

GET/api/v1/sites/:siteId/training/export

Transmite filas de entrenamiento con opt-in como NDJSON (máx. 500). Content-Type: application/x-ndjson.

POST/api/v1/webhooks/test

Envía un payload de prueba a su URL de webhook configurada. Devuelve 400 si no hay URL configurada.