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.

Sumit Ghugharwal
Sumit Ghugharwal

Gepubliceerd op 21 juni 2026 · 6 min read

Deel dit artikel:

Je hebt een map. Vijftig product-pdf's staan erin. Elke pdf moet een flipbook worden met een logische titel, en je hebt de deellinks aan het eind van de dag in een spreadsheet nodig. Dat met de hand doen — uploaden, een naam geven, wachten, de link kopiëren, plakken, herhalen — is het soort klus dat een hele middag en je geduld opvreet.

In deze gids laten we je zien hoe je een hele map in bulk omzet naar flipbooks met één enkele shell-loop, elke resulterende URL in een CSV verzamelt en gewoon doorgaat, zelfs als één bestand stuk is. We gaan ervan uit dat je de FlipLink-CLI al hebt geïnstalleerd en bent ingelogd. Zo niet, begin dan eerst met Aan de slag met de FlipLink-CLI — dat kost zo'n twee minuten.

De bouwsteen: één bestand tegelijk

Voordat je over vijftig bestanden loopt, krijg eerst één bestand goed voor elkaar. Het CLI-commando dat een pdf omzet in een flipbook is:

fliplink flipbook create ./deck.pdf --title "Q3 Report" --name q3

--title is wat lezers zien; --name is het interne label. Voeg --json toe en het commando print de ruwe API-respons in plaats van een vriendelijke samenvatting — uit die JSON halen we later de deellink:

fliplink flipbook create ./deck.pdf --title "Q3 Report" --json

Die ene respons bevat alles wat je nodig hebt: de ID van het nieuwe flipbook en de publieke URL ervan. Nu hoeven we het alleen nog één keer per bestand uit te voeren.

De loop: zet elke pdf in een map om

Hier is de kern ervan. Zet je pdf's in een map, ga er met cd naartoe en draai een bash-loop over *.pdf. We leiden een schone titel af uit elke bestandsnaam — haal de extensie .pdf eraf en vervang streepjes/underscores door spaties:

#!/usr/bin/env bash
for f in *.pdf; do
  # Turn "spring-product-catalog.pdf" into "spring product catalog"
  name="$(basename "$f" .pdf | tr '_-' '  ')"
  echo "Converting: $f  ->  \"$name\""
  fliplink flipbook create "$f" --title "$name" --json
done

Dit loopt door de map, zet elke pdf om en print voor elke pdf het JSON-resultaat. Het werkt, maar de uitvoer is een muur van JSON en één fout bestand zou de rest gewoon laten doorlopen. Laten we allebei oplossen — eerst de uitvoer, dan de foutafhandeling.

De resultaten in een CSV verzamelen

Wat je uiteindelijk echt wilt, is een spreadsheet: één regel per flipbook, met de ID en de deellink ervan. Stuur elk --json-resultaat door jq om alleen die twee velden eruit te halen en een CSV-regel toe te voegen.

De create-respons bevat de ID en een URL van het flipbook. We halen ze allebei eruit, vallen terug op een placeholder als een veld ontbreekt, en schrijven bovenaan eenmalig een kopregel:

#!/usr/bin/env bash
out="flipbooks.csv"
echo "file,id,url" > "$out"           # write the CSV header once

for f in *.pdf; do
  name="$(basename "$f" .pdf | tr '_-' '  ')"
  echo "Converting: $f"

  json="$(fliplink flipbook create "$f" --title "$name" --json)"

  # Pull ID + URL from the JSON; '// "?"' supplies a fallback if absent
  row="$(printf '%s' "$json" | jq -r '[.ID, .URL] | @csv' 2>/dev/null)"

  printf '%s,%s\n' "$f" "$row" >> "$out"
done

echo "Done. Results in $out"

jq -r '[.ID, .URL] | @csv' bouwt een correct aangehaald CSV-fragment uit de twee velden, en @csv verwerkt eventuele komma's of aanhalingstekens binnen de waarden voor je. Open flipbooks.csv in een willekeurige spreadsheet en je hebt je distributielijst.

Wil je de canonieke deellink liever apart ophalen, dan heeft de CLI daar een speciaal commando voor — fliplink flipbook share-link <flipbookId> — dat je kunt aanroepen met de ID die je net hebt vastgelegd.

🚀

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.

Laat één fout bestand de batch niet om zeep helpen

Mappen zijn rommelig. Eén pdf kan beschadigd zijn, te groot, of je over je abonnementslimiet duwen. De standaardloop zou de fout vrolijk als een regel rapporteren en doorgaan — maar dan weet je niet welke daadwerkelijk zijn gelukt.

De CLI geeft je een duidelijk signaal via de exit-codes:

  • 0 — geslaagd
  • 1 — een request- of HTTP-fout (netwerk, te grote upload, authenticatie)
  • 2 — een applicatiefout (de API gaf Result: ERROR terug, bijv. limiet overschreden)

Controleer na elke aanroep de exit-code. Log de winnaars naar je CSV, de mislukkingen naar een aparte lijst, en houd de batch hoe dan ook draaiend:

#!/usr/bin/env bash
out="flipbooks.csv"
fail="failed.txt"
echo "file,id,url" > "$out"
: > "$fail"                            # truncate the failure log

ok=0; bad=0
for f in *.pdf; do
  name="$(basename "$f" .pdf | tr '_-' '  ')"
  echo "Converting: $f"

  if json="$(fliplink flipbook create "$f" --title "$name" --json)"; then
    row="$(printf '%s' "$json" | jq -r '[.ID, .URL] | @csv' 2>/dev/null)"
    printf '%s,%s\n' "$f" "$row" >> "$out"
    ok=$((ok + 1))
  else
    code=$?                            # 1 = request error, 2 = application error
    echo "$f (exit $code)" >> "$fail"
    bad=$((bad + 1))
  fi
done

echo "Converted $ok, failed $bad. See $out and $fail."

Omdat de CLI bij een mislukking een waarde anders dan nul teruggeeft, draait de if-tak alleen bij een echt succes, zodat je CSV nooit volloopt met lege regels. Aan het eind krijg je een telling en een failed.txt die precies aangeeft welke bestanden je moet onderzoeken — draai alleen die opnieuw zodra je ze hebt gerepareerd.

Een opmerking over mappen toewijzen

Een veelgestelde vervolgvraag: “Kan de loop alles in een specifieke FlipLink-map droppen?” Er is geen --folder-vlag op fliplink flipbook create — grijp er niet naar, hij bestaat niet.

Een paar dingen om te weten over hoe FlipLink-mappen werken: ze worden op aanvraag aangemaakt en verdwijnen weer zodra ze leeg zijn, dus er valt niets vooraf aan te maken. Om een flipbook in een map te zetten, gebruik je de nooduitgang van de CLI — het api-commando — dat elk endpoint kan bereiken, ook die zonder een eigen subcommando:

fliplink api PUT /api/assign-to-folder/<flipbookId> --data '{"Folder":"Marketing/Q2"}'

Schuif die aanroep in de succes-tak van de loop en geef de ID mee die je uit de create-respons hebt vastgelegd. Twijfel je over de precieze veldnamen voor een endpoint, raadpleeg dan de live API-referentie in plaats van te gokken — elke parameter is daar gedocumenteerd met een Try-It-console.

Tot slot

Een map met pdf's, één shell-loop en aan het eind een CSV met deellinks die op je wacht — dat is de hele klus. Hetzelfde patroon schaalt van vijf bestanden naar vijfhonderd, en de exit-code-check zorgt ervoor dat één fout bestand de run nooit laat ontsporen. Voor meer over de scriptbare workflows van FlipLink behandelt de CLI-documentatie elk commando, en Bulkbewerkingen legt uit hoe dit past in een grotere publicatiepijplijn — perfect om productcatalogi in batches up-to-date te houden.

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.

#cli#bulk#automatisering#pdf#bulkbewerkingen
Lifetime Deal

Betaal eenmalig, gebruik voor altijd

10, 50 of 100 flipbooks · Alle 35 functies · Onbeperkte domeinen

$39
10 Flipbooks
$89
50 Flipbooks
Populairst
$129
100 Flipbooks

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

Tutorials5 min read

Aan de slag met de FlipLink CLI

Installeer de FlipLink CLI, log in en zet een PDF in een paar commando's om in een gepubliceerde, deelbare flipbook vanuit je terminal.

Sumit Ghugharwal