Flipbooks publiceren automatiseren in CI/CD met de FlipLink CLI
Automatiseer het publiceren van flipbooks in elke CI/CD-pijplijn met de FlipLink CLI — maak aan, publiceer, leg de URL vast en faal snel op exitcodes.
Gepubliceerd op 21 juni 2026 · 6 min read
Als er een PDF in je repo staat — een deck met releasenotes, een productcatalogus, een kwartaalrapport — dan zou het publiceren van de flipbookversie ervan onderdeel moeten zijn van dezelfde build die de PDF produceert. Geen dashboard, geen handmatige upload, geen "heeft iemand eraan gedacht om de flipbook bij te werken?" De FlipLink CLI is precies hiervoor gemaakt: hij draait headless, authenticeert vanuit een omgevingsvariabele en geeft schone exitcodes terug waarop een pijplijn kan vertakken.
Deze gids laat een minimale, platformneutrale CI/CD-pijplijn zien die een PDF bouwt, de flipbook aanmaakt, deze publiceert en de live URL vastlegt.
Waarom publiceren in CI draaien
Het dashboard is prima voor eenmalige uploads. Een pijplijn is beter als het werk herhaalbaar is:
- Herhaalbaar en controleerbaar — dezelfde stappen draaien elke keer, gelogd in je CI-geschiedenis.
- Geen dashboard, geen menselijke stap — niemand hoeft eraan te denken om na een release te uploaden.
- Eén bron van waarheid — de PDF in de repo is wat eruit gaat, dus de flipbook wijkt nooit af van het document.
- Faal luid — als een publicatie misgaat, gaat de build op rood in plaats van stilletjes een verouderde flipbook te versturen.
Dit is automatisering in de simpelste zin: de CLI is dezelfde engine als de API, dus alles wat je met de hand kunt doen, kun je scripten.
Stap 1: Bewaar de API-sleutel als een CI-secret
De CLI leest je sleutel uit de omgevingsvariabele FLIPLINK_API_KEY in CI (de volgorde van resolutie is omgevingsvariabele → configbestand → standaard). Een sleutel krijg je door in te loggen op go.fliplink.me en de Subscription-pagina te openen.
Voeg hem als secret toe bij je CI-provider — commit hem nooit, echo hem nooit in logs. Stel hem vervolgens beschikbaar aan de job als een omgevingsvariabele:
# Provided by your CI's secret store, not hard-coded
export FLIPLINK_API_KEY="$CI_SECRET_FLIPLINK_API_KEY"
Een snelle controle of de authenticatie werkt voordat je echt werk gaat doen:
fliplink whoami
Als de sleutel ontbreekt of fout is, eindigt dit met een niet-nul exitcode en stopt je pijplijn vroeg — precies wat je wilt.
Stap 2: Een minimale pijplijn
Hier is een generieke, platformneutrale pijplijn (pseudo-YAML — map de sleutels op welke CI je ook gebruikt). Voor een release-getriggerde GitHub Actions-versie specifiek: zie de uitleg GitHub Actions bij release.
pipeline:
publish-flipbook:
image: node:20
secrets:
- FLIPLINK_API_KEY # injected from the CI secret store
steps:
- name: Install the CLI
run: npm install -g fliplink-cli
- name: Build the PDF
run: ./scripts/build-report.sh # your build that emits ./dist/report.pdf
- name: Verify auth
run: fliplink whoami
- name: Create the flipbook
run: |
ID=$(fliplink flipbook create ./dist/report.pdf \
--title "Quarterly Report" --name quarterly \
--json | jq -r '.ID')
echo "FLIPBOOK_ID=$ID" >> "$PIPELINE_ENV"
- name: Publish the flipbook
run: fliplink flipbook publish "$FLIPBOOK_ID"
- name: Capture the share URL
run: |
URL=$(fliplink flipbook share-link "$FLIPBOOK_ID" \
--json | jq -r '.URL')
echo "Published: $URL"
De flow bestaat uit vier echte commando's: bouw de PDF, fliplink flipbook create, fliplink flipbook publish, en dan fliplink flipbook share-link. Al het andere is leidingwerk dat je CI-provider levert.
Stap 3: Leg het flipbook-ID en de URL vast
De sleuteltruc is --json. Elk FlipLink CLI-commando accepteert het en print ruwe JSON, die je doorpipet naar jq om precies het veld eruit te trekken dat je nodig hebt:
# Create and grab the new flipbook's ID
ID=$(fliplink flipbook create ./dist/report.pdf \
--title "Quarterly Report" --name quarterly \
--json | jq -r '.ID')
# Publish it
fliplink flipbook publish "$ID"
# Grab the public share URL to post in Slack, an email, or a release note
URL=$(fliplink flipbook share-link "$ID" --json | jq -r '.URL')
Geef $ID door tussen stappen op de manier waarop jouw CI status deelt — een outputvariabele, een env-bestand of een weggeschreven artefact. Voor meer jq-patronen — lijsten filteren, geneste velden eruit trekken, tabellen bouwen — zie de CLI scripten met jq.
Probeer FlipLink Gratis
Converteer je PDF in seconden. Geen registratie, geen creditcard — gewoon uploaden en starten.
Drop your PDF here or click to browse
Max. 40MB
Met een betaald abonnement vanaf $39 verhoog je dit naar 150 MB.
Stap 4: Faal snel op exitcodes
Een pijplijn is niet beter dan zijn foutafhandeling. De CLI geeft je drie exitcodes om op te vertakken:
0— succes1— request- of HTTP-fout (slecht netwerk,401authenticatiefout, te grote upload)2— applicatiefout (de API gafResult: ERRORterug, bijvoorbeeld een validatieprobleem)
De meeste CI-runners stoppen een stap automatisch bij elke niet-nul exit, wat meestal is wat je wilt. Als je per code anders wilt reageren, vertak dan expliciet:
set -euo pipefail
if fliplink flipbook publish "$ID" --json; then
echo "Published OK"
else
code=$?
if [ "$code" -eq 2 ]; then
echo "FlipLink rejected the request (application error)" >&2
else
echo "Request/HTTP error talking to FlipLink" >&2
fi
exit "$code"
fi
Houd er rekening mee dat de FlipLink API zakelijke fouten teruggeeft als HTTP 200 met Result: ERROR in de body — de CLI vertaalt dat al voor je naar exitcode 2, dus een schone exitcodecontrole is genoeg. Je hoeft statuscodes niet met de hand te parsen.
Stap 5: Geef bij succes een melding
Zodra je de URL hebt vastgelegd, is de laatste stap simpelweg iemand inlichten. De URL is een gewone string, dus elke notifier werkt:
URL=$(fliplink flipbook share-link "$ID" --json | jq -r '.URL')
curl -X POST "$SLACK_WEBHOOK_URL" \
-H 'Content-Type: application/json' \
-d "{\"text\": \"New flipbook published: $URL\"}"
Verruil de curl-aanroep voor een e-mail, een GitHub-reactie of een schrijfactie naar je changelog — het patroon is hetzelfde. Omdat elke stap snel faalt, gaat deze melding alleen af als de publicatie ook echt is gelukt.
Tot slot
Dat is het hele patroon: bewaar de sleutel als secret, installeer de CLI, bouw de PDF, en dan create → publish → leg de URL vast met --json | jq, met exitcodes die elke stap bewaken. Het is klein genoeg om in elke pijplijn te droppen en betrouwbaar genoeg om te vergeten — en dat is het hele punt van automatisering en integraties.
Nieuw met de CLI? Begin met aan de slag met de FlipLink CLI en kom dan terug om hem in je build te knopen.
Verder lezen
Klaar om je eerste flipbook te maken?
Zet je PDF's om in interactieve flipbooks en documenten. Begin met de Lifetime Deal van FlipLink — levenslange toegang vanaf slechts $39.
Betaal eenmalig, gebruik voor altijd
10, 50 of 100 flipbooks · Alle 35 functies · Onbeperkte domeinen
Geen niveaus. Geen functiebeperkingen. Elke LTD-code ontgrendelt alles.
- Elke functie ontgrendeld — geen grenzen
- Stapelbaar — koop extra codes wanneer je wilt
- Vervangbaar — wissel oud voor nieuw
- Onbeperkt eigen domeinen (CNAME)
- Geen terugkerende kosten, nooit
Gerelateerde artikelen
GitHub Actions: genereer automatisch een flipbook bij elke release
Genereer met GitHub Actions automatisch een FlipLink-flipbook bij elke release. Bouw de PDF, draai de CLI en plaats de live-URL terug.
Een map met pdf's in bulk omzetten naar flipbooks
Zet een hele map pdf's in bulk om naar flipbooks met één shell-loop via de FlipLink-CLI — leg URL's vast in een CSV en sla foute bestanden over.
FlipLink CLI vs. API vs. MCP: welke integratie moet je gebruiken?
CLI, API of MCP voor FlipLink? Vergelijk moeite, doelgroep en gebruik, en zie hetzelfde flipbook op drie manieren gemaakt. Kies de juiste integratie.