Sunflare exposes a public REST API so you can hand your AI agents, scripts, or integrations a key and let them manage your CMS directly — SEO at scale, image alt text, translations, and publish-to-live.
Base URL:https://sc-api.sunflare.appCurrent version:v1Machine-readable spec:/.well-known/openapi.json
1. Create an API key
Go to Dashboard → Settings → Developer → API Keys, click Create key, choose a label and the scopes you need, then copy the full key that appears once. The key looks like:
sk_live_{keyId}_{secret}
Store the key immediately — the full value is shown once. If you lose it, revoke and create a new one.
| Scope | What it grants |
|-------|----------------|
| cms:read | All GET endpoints |
| cms:write | SEO, alt text, translations, manual snapshots |
| cms:publish | Restore a previous version, publish draft to live |
The API key implies the account — you never pass an accountId argument. Using a key minted for account A against account B's resources returns 404.
4. What you can do
SEO at scale — List pages, patch single or bulk SEO fields (title, description, keywords, robots).
Image alt text — Filter photos missing alt, write individually or in batches.
Versioning — List history, inspect any version, take manual snapshots, restore, publish.
Translations — Read/write per-language page overlays against the latest site version.
5. Safety (server-enforced)
The server automatically snapshots before your first write in any 15-minute window. The response includes X-Sunflare-Snapshot-Version: <n> so you always know the restore point.
Publish and restore create their own checkpoints before applying.
Bulk endpoints accept an optional Idempotency-Key header — safe to retry on timeouts.
6. Errors
All error responses use RFC 7807application/problem+json:
It's indexed in the discovery manifest at /.well-known/agent-skills/index.json with a sha256 digest so the agent can verify integrity.
The full machine contract is the OpenAPI 3.1 spec linked at the top of this page.
8. Quick reference
# Read
GET /v1/whoami
GET /v1/pages ?cursor=&limit=
GET /v1/pages/{path} # URL-encode slashes: %2F
GET /v1/images ?missingAlt=true
GET /v1/images/{imageId}
GET /v1/versions
GET /v1/versions/{n}
GET /v1/locales
GET /v1/translations ?language=es
GET /v1/translations/{language}/{path}
# Write (cms:write)
PATCH /v1/pages/{path}/seo {seoTitle?, seoDescription?, keywords?, robots?}
POST /v1/pages/bulk-seo {items: [...]}
PATCH /v1/images/{imageId}/alt {alt}
POST /v1/images/bulk-alt {items: [...]}
PATCH /v1/translations/{lang}/{path} {overlay, staleness?}
POST /v1/versions/snapshot {label?, changesSummary?}
# Publish (cms:publish)
POST /v1/versions/publish {versionNumber?} # omit to publish latest draft
POST /v1/versions/{n}/restore
See the OpenAPI spec for full request and response schemas.
title: "API pública"
lastUpdated: 2026-04-20
API pública de Sunflare
Sunflare expone una API REST pública para que puedas dar a tus agentes de IA, scripts o integraciones una clave y dejarles gestionar tu CMS directamente — SEO a escala, texto alternativo de imágenes, traducciones y publicación en vivo.
URL base:https://sc-api.sunflare.appVersión actual:v1Especificación legible por máquina:/.well-known/openapi.json
1. Crea una clave de API
Ve a Panel → Ajustes → Desarrollador → Claves de API, haz clic en Crear clave, elige una etiqueta y los ámbitos que necesites, y copia la clave completa que aparece una sola vez. La clave tiene este aspecto:
sk_live_{keyId}_{secret}
Guarda la clave inmediatamente — el valor completo solo se muestra una vez. Si la pierdes, revócala y crea una nueva.
2. Autentícate
Envía la clave en cada solicitud como token tipo bearer:
| Ámbito | Qué permite |
|--------|-------------|
| cms:read | Todos los endpoints GET |
| cms:write | SEO, texto alternativo, traducciones y snapshots manuales |
| cms:publish | Restaurar una versión anterior, publicar el borrador en vivo |
La clave de API ya implica la cuenta — nunca tienes que pasar un argumento accountId. Usar una clave emitida para la cuenta A contra recursos de la cuenta B devuelve 404.
4. Qué puedes hacer
SEO a escala — Lista páginas, edita campos SEO individualmente o en lotes (título, descripción, palabras clave, robots).
Texto alternativo de imágenes — Filtra fotos sin alt, escríbelo individualmente o en lotes.
Versionado — Lista el historial, inspecciona cualquier versión, crea snapshots manuales, restaura, publica.
Traducciones — Lee y escribe superposiciones de página por idioma contra la versión más reciente del sitio.
5. Seguridad (aplicada por el servidor)
El servidor crea automáticamente un snapshot antes de tu primera escritura dentro de cualquier ventana de 15 minutos. La respuesta incluye X-Sunflare-Snapshot-Version: <n> para que siempre conozcas el punto de restauración.
Publicar y restaurar crean sus propios puntos de control antes de aplicar los cambios.
Los endpoints en lote aceptan una cabecera opcional Idempotency-Key — seguro para reintentar ante timeouts.
6. Errores
Todas las respuestas de error usan RFC 7807application/problem+json:
Está indexado en el manifiesto de descubrimiento en /.well-known/agent-skills/index.json con un digest sha256 para que el agente pueda verificar la integridad.
El contrato completo para máquinas es la especificación OpenAPI 3.1 enlazada al principio de esta página.
8. Referencia rápida
# Lectura
GET /v1/whoami
GET /v1/pages ?cursor=&limit=
GET /v1/pages/{path} # codifica las barras: %2F
GET /v1/images ?missingAlt=true
GET /v1/images/{imageId}
GET /v1/versions
GET /v1/versions/{n}
GET /v1/locales
GET /v1/translations ?language=es
GET /v1/translations/{language}/{path}
# Escritura (cms:write)
PATCH /v1/pages/{path}/seo {seoTitle?, seoDescription?, keywords?, robots?}
POST /v1/pages/bulk-seo {items: [...]}
PATCH /v1/images/{imageId}/alt {alt}
POST /v1/images/bulk-alt {items: [...]}
PATCH /v1/translations/{lang}/{path} {overlay, staleness?}
POST /v1/versions/snapshot {label?, changesSummary?}
# Publicación (cms:publish)
POST /v1/versions/publish {versionNumber?} # omítelo para publicar el último borrador
POST /v1/versions/{n}/restore
Consulta la especificación OpenAPI para los esquemas completos de solicitud y respuesta.
title: "API pública"
lastUpdated: 2026-04-20
API pública de Sunflare
Sunflare exposa una API REST pública perquè puguis donar a les teves agents d'IA, scripts o integracions una clau i deixar-los gestionar directament el teu CMS — SEO a escala, text alternatiu d'imatges, traduccions i publicació en viu.
URL base:https://sc-api.sunflare.appVersió actual:v1Especificació llegible per màquines:/.well-known/openapi.json
1. Crea una clau d'API
Ves a Tauler → Configuració → Desenvolupador → Claus d'API, fes clic a Crea clau, tria una etiqueta i els àmbits que necessites, i copia la clau completa que apareix una sola vegada. La clau té aquest aspecte:
sk_live_{keyId}_{secret}
Guarda la clau immediatament — el valor complet només es mostra una vegada. Si la perds, revoca-la i crea'n una de nova.
2. Autentica't
Envia la clau a cada sol·licitud com a token de tipus bearer:
| Àmbit | Què permet |
|-------|------------|
| cms:read | Tots els endpoints GET |
| cms:write | SEO, text alternatiu, traduccions i snapshots manuals |
| cms:publish | Restaurar una versió anterior, publicar l'esborrany en viu |
La clau d'API ja implica el compte — mai no has de passar un argument accountId. Utilitzar una clau generada per al compte A contra recursos del compte B retorna 404.
4. Què pots fer
SEO a escala — Llista pàgines, edita camps SEO individualment o en lots (títol, descripció, paraules clau, robots).
Text alternatiu d'imatges — Filtra fotos sense alt, escriu-lo individualment o en lots.
Traduccions — Llegeix i escriu superposicions de pàgina per idioma contra la versió més recent del lloc.
5. Seguretat (aplicada pel servidor)
El servidor crea automàticament un snapshot abans de la teva primera escriptura dins de qualsevol finestra de 15 minuts. La resposta inclou X-Sunflare-Snapshot-Version: <n> perquè sempre sàpigues el punt de restauració.
Publicar i restaurar creen els seus propis punts de control abans d'aplicar els canvis.
Els endpoints de lot accepten una capçalera opcional Idempotency-Key — segur per reintentar en cas de temps d'espera.
6. Errors
Totes les respostes d'error fan servir RFC 7807application/problem+json:
Està indexat al manifest de descobriment a /.well-known/agent-skills/index.json amb un digest sha256 perquè l'agent pugui verificar-ne la integritat.
El contracte màquina complet és l'especificació OpenAPI 3.1 enllaçada al començament d'aquesta pàgina.
8. Referència ràpida
# Lectura
GET /v1/whoami
GET /v1/pages ?cursor=&limit=
GET /v1/pages/{path} # codifica les barres: %2F
GET /v1/images ?missingAlt=true
GET /v1/images/{imageId}
GET /v1/versions
GET /v1/versions/{n}
GET /v1/locales
GET /v1/translations ?language=es
GET /v1/translations/{language}/{path}
# Escriptura (cms:write)
PATCH /v1/pages/{path}/seo {seoTitle?, seoDescription?, keywords?, robots?}
POST /v1/pages/bulk-seo {items: [...]}
PATCH /v1/images/{imageId}/alt {alt}
POST /v1/images/bulk-alt {items: [...]}
PATCH /v1/translations/{lang}/{path} {overlay, staleness?}
POST /v1/versions/snapshot {label?, changesSummary?}
# Publicació (cms:publish)
POST /v1/versions/publish {versionNumber?} # omet-ho per publicar l'últim esborrany
POST /v1/versions/{n}/restore
Consulta l'especificació OpenAPI per a l'esquema complet de sol·licituds i respostes.