Integrar con tu servicio

En el paso anterior creaste los datos de las publicaciones. Ahora es momento de mostrarlos a usuarios reales. WEEGLOO se encarga de almacenar y gestionar los datos, así que cómo los muestres a través de tu servicio depende por completo de quien lo crea. Puedes hacerlo como una aplicación web, ampliarlo a una aplicación móvil o tener ambas a la vez. La clave es que puedes obtener los datos mediante la RESTful API que ofrece WEEGLOO y usarlos en el formato que quieras.

En este ejemplo vas a crear el Tech Blog como un sitio web. Harás que los visitantes puedan ver las publicaciones desde su navegador, y tú compondrás esa pantalla (Front-end). Los archivos web estáticos que crees así se pueden desplegar con la función Web Hosting de WEEGLOO.

Una aplicación móvil se conecta al mismo backend sin cambios. Guardar los datos, dar de alta a los usuarios y mostrar a cada persona solo lo suyo funciona igual tanto en la web como en la app. Puedes ver de principio a fin un ejemplo completo en el que una app y la web comparten un único backend en el Servicio de registro de carreras.

Emitir un token de solo lectura

Para llamar a la API de WEEGLOO necesitas un Access Token de autenticación. En este ejemplo usas un Delivery Access Token, un token de solo lectura cuyo propósito es mostrar las publicaciones a los visitantes, y la CDA (Content Delivery API), la API que entrega el contenido publicado.

Antes de crear el token, primero debes definir con un SpaceRole a qué datos puede acceder ese token. Por seguridad, crea un SpaceRole que conceda permiso de lectura únicamente sobre el Content Type Article que creaste antes. Así el token no podrá hacer nada más que leer las publicaciones.

  1. En el menú de la izquierda, pulsa Roles & Permissions.
  2. Pulsa Create e introduce el nombre del rol. Por ejemplo: Article Read-Only.
  3. Permite solo Read en Content y Content Type de Article. No actives ningún otro permiso.
  4. Guarda con Save.

Pantalla de configuración del SpaceRole con solo permiso de lectura sobre Article

Encontrarás más detalles sobre la configuración del SpaceRole en Roles y permisos.

Ahora crea un Delivery Access Token con este SpaceRole.

  1. En el menú de la izquierda, pulsa Delivery Access Tokens.
  2. Pulsa Create en la parte superior derecha de la lista. Se abre la pantalla Create Delivery Access Token.
  3. En el campo Name, escribe Tech Blog Web.
  4. En SpaceRole, elige el Article Read-Only que creaste antes.
  5. En Allowed referrers, deja el valor inicial, No restriction, tal cual. Si anotas direcciones en la lista, solo pasan las solicitudes que vienen de esas direcciones, así que cuando más adelante quede decidida la dirección del sitio del Tech Blog podrás acotar este token para que solo se use en ese sitio.
  6. Pulsa el botón Create de la parte superior derecha de la pantalla para emitirlo.

Pantalla Create Delivery Access Token. En el campo Name se ha escrito "Tech Blog Web", en SpaceRole se ha elegido "Article Read-Only", Allowed referrers está en "No restriction" y arriba a la derecha hay un botón Create

Cuando terminas la emisión, pasas a la pantalla de detalle de ese token. El campo Token de Basic information contiene el valor del token y, si pulsas el botón de copiar que hay a la izquierda del campo, se copia el valor. Si vuelves a entrar en esta pantalla, puedes volver a copiar el valor cuando quieras. Eso sí, como este valor es secreto, guárdalo en un lugar seguro. Este valor puede quedar expuesto hasta en el navegador del visitante, así que es importante acotar su alcance con un SpaceRole de solo lectura, como se ha hecho arriba.

Encontrarás más detalles sobre el Delivery Access Token y la configuración de Allowed referrers en Tokens.

Obtener los datos de las publicaciones

Ahora vas a llamar de verdad a la API que obtiene las publicaciones. La autenticación se hace en la cabecera Authorization mediante el esquema Bearer, poniendo el valor del Delivery Access Token que creaste antes.

Authorization: Bearer <Delivery Access Token>
APIMethodPathParams
CDAGET/v1/spaces/{spaceId}/content-types/{contentTypeId}/contents?order=-sys.createdAt,sys.id

Esta API obtiene la lista de Content Article dentro de un Space concreto. Con la opción order se aplicó la ordenación de más reciente a más antiguo, y con la opción include puedes obtener también los datos enlazados.

En la primera llamada es posible que no aparezca ningún dato. Esto se debe a que el Content que creaste todavía no está publicado (Publish). WEEGLOO establece un paso de publicación para distinguir los datos que están en edición de los que se mostrarán a los visitantes. Después de publicar el Content, al volver a llamar se obtienen las publicaciones.

{
    "sys": { "type": "TotalPageResponse" },
    "limit": 15,
    "totalCount": 1,
    "items": [
        {
            "sys": {
                "id": "3trmXRkRjC1x4J9h2om4Qh41o7sejd",
                "type": "Content",
                "space": { "sys": { "id": "ep8f7qJY", "type": "Refer", "targetType": "Space" } },
                "contentType": { "sys": { "id": "3trmXRkRjC1x4J9h2om4QZv0jC58Nv", "type": "Refer", "targetType": "ContentType" } },
                "createdAt": "2026-06-21T15:38:22.630Z",
                "updatedAt": "2026-06-21T15:38:22.630Z",
                "revision": 1
            },
            "fields": {
                "title": "Building a Headless Blog with WEEGLOO",
                "body": "WEEGLOO lets you define your content structure once and deliver it anywhere through a REST API. In this post we model an Article, write our first entry, and fetch it from a web app, with no backend server to build or maintain.",
                "category": "Web"
            }
        }
    ],
    "links": {
        "self": "/v1/spaces/ep8f7qJY/content-types/3trmXRkRjC1x4J9h2om4QZv0jC58Nv/contents?order=-sys.createdAt,sys.id"
    }
}

El uso detallado de la API y sus opciones se tratan en la referencia de la API.

Soporte multilingüe

Da un paso más y ofrece las publicaciones en varios idiomas. WEEGLOO ofrece la función Locale para gestionar un mismo contenido en varios idiomas.

Primero añade un nuevo idioma en la configuración de Locale. Aquí se añade Korean y se fija English como idioma de Fallback, que se mostrará cuando no haya valor. El Fallback es el idioma que se muestra en lugar de otro cuando ese idioma no tiene valor.

Después, al ir al Content que creaste antes, verás que en cada Field ha aparecido una casilla para introducir el valor de cada idioma. Así gestionas por separado el contenido de una misma publicación según el idioma. Eso sí, para usar esta función debes haber activado de antemano la opción multilingüe de ese Field en el Content Type.

Un Field de la publicación con las casillas de inglés (en-US) y coreano (ko-KR) mostradas juntas

Encontrarás más detalles sobre el soporte multilingüe en Gestión multilingüe.

Así puedes crear un servicio web que admite varios idiomas con una única estructura de datos. Una vez completadas la consulta básica de contenido y el tratamiento multilingüe, en el siguiente paso verás las funciones de colaboración para que varias personas redacten y gestionen el contenido en conjunto.

  • Colaborar: invita a varias personas a tu Space y reparte roles para gestionar el contenido en conjunto.