Sekcje dokumentacji

API

Content API dla Reacta, Next.js i własnych stron

Content API to serwerowe pobieranie zatwierdzonych elementów, dzięki któremu strony poza WordPressem mogą używać tego samego materiału w swoim procesie wdrożenia.

Aktualizacja
2026-04-19
Dostępność
Paid plans, token per project

Pobieraj zatwierdzone elementy z serwera

Użyj endpointu listy do synchronizacji wielu elementów albo endpointu szczegółów dla pojedynczego elementu. Każde żądanie używa tokenu projektu, a odpowiedź powinna być zapisywana w pamięci podręcznej po stronie Twojej aplikacji.

GET /api/v1/projects/:projectId/content

Zwraca zatwierdzone albo opublikowane elementy treści, które mogą trafić do własnego procesu publikacji.

Headers

  • Authorization: Bearer <token>

Query

  • state=approved|published, default approved
  • operation=create|update|all, default all
  • per_page=number, default 20, max 50

Responses

  • 200 data + meta
  • 401 INVALID_TOKEN
  • 403 PROJECT_NOT_ENTITLED
  • 429 RATE_LIMITED

Next.js App Router, React, SvelteKit i Astro

Najbezpieczniejsza integracja działa po stronie serwera: route handler w Next.js App Router, loader serwerowy w SvelteKit, endpoint Astro albo backend używany przez aplikację React.

ts
const response = await fetch(`${NELAVIO_API_BASE}/api/v1/projects/${projectId}/content`, {
  headers: {
    Authorization: `Bearer ${NELAVIO_CONTENT_API_TOKEN}`,
  },
});

const payload = await response.json();
  • Next.js App Router: pobieraj dane w route handlerze albo komponencie serwerowym.
  • SvelteKit: użyj server load albo własnego endpointu.
  • Astro: pobieraj dane w endpointzie albo podczas statycznego builda.
  • React bez frameworka serwerowego: dodaj własny backend zamiast pobierać dane tokenem w przeglądarce.

Statyczne strony i własne CMS-y

Statyczny build może pobrać JSON w CI i zapisać wynik w artefakcie strony. Własny CMS może zsynchronizować zatwierdzone tytuły, opisy, bloki treści i metadane do swojej bazy przed publikacją.

GitHub Action dla statycznych stron

Repozytoria Astro, SvelteKit, Next.js export i React/Vite mogą uruchamiać workflow raz dziennie albo ręcznie. Action pobiera zatwierdzone elementy, zapisuje markdown w src/content/blog i otwiera pull request do review.

yaml
name: Pull Nelavio content

on:
  workflow_dispatch:
  schedule:
    - cron: "17 5 * * *"

jobs:
  sync:
    runs-on: ubuntu-latest
    permissions:
      contents: write
      pull-requests: write
    steps:
      - uses: actions/checkout@v4
      - uses: actions/setup-node@v4
        with:
          node-version: 20
      - run: node scripts/pull-nelavio-content.mjs
        env:
          NELAVIO_API_BASE: https://app.nelavio.com
          NELAVIO_PROJECT_ID: ${{ secrets.NELAVIO_PROJECT_ID }}
          NELAVIO_CONTENT_API_TOKEN: ${{ secrets.NELAVIO_CONTENT_API_TOKEN }}
          NELAVIO_CONTENT_DIR: src/content/blog
      - run: |
          git diff --quiet && exit 0
          git switch -c nelavio/content-sync
          git add src/content/blog
          git commit -m "Sync Nelavio content"
          gh pr create --fill --title "Sync Nelavio content"
        env:
          GH_TOKEN: ${{ github.token }}

Skonfiguruj pobieranie z Content API

Wygeneruj token w ustawieniach dostarczania projektu i podłącz zatwierdzone elementy do własnego procesu publikacji.

Uruchom darmowy skan