Kort antwoord
Hoe converteer ik een webpagina naar Markdown vanaf de command line?
Voer curl -sG https://webreaderapi.com/api/v1/read --data-urlencode "url=…" uit met je sleutel in een Authorization: Bearer header en pipe het antwoord naar jq -r .markdown. WebReaderAPI geeft de hoofdinhoud van de pagina terug als Markdown met de metadata. Eén gewone pagina gebruikt 1 credit, vanaf US$ 0,07/1K pagina's per oktober 2026. Zonder KYC; betalen met crypto.
Hoe stel ik de terminal in?
Installeer curl en jq, die de meeste Linux- en macOS-systemen al hebben, en exporteer je sleutel één keer per sessie. Elk recept hieronder leest hem uit $WEBREADER_API_KEY, zodat de sleutel nooit als onderdeel van een commando in je shell-geschiedenis verschijnt.
Gebruik -G met --data-urlencode voor GET-requests: curl codeert het pagina-adres dan voor je, wat belangrijk is omdat adressen hun eigen ?, & en = bevatten.
export WEBREADER_API_KEY="your-key"
curl -sG "https://webreaderapi.com/api/v1/read" \
-H "Authorization: Bearer $WEBREADER_API_KEY" \
--data-urlencode "url=https://example.com/guides/compost" \
| jq -r '.markdown' > compost.mdHoe zie ik wat een call heeft teruggegeven en gekost?
Vraag jq om de metadata in plaats van de inhoud. final_url laat zien waar redirects naartoe gingen, rendered vertelt je of er een browser is gebruikt, en credits_used is wat de call kostte. Als het antwoord een fout is, print dezelfde filter null-velden; print .error om de code en het bericht te lezen.
curl -sG "https://webreaderapi.com/api/v1/read" \
-H "Authorization: Bearer $WEBREADER_API_KEY" \
--data-urlencode "url=https://example.com/guides/compost" \
| jq '.error // {title, final_url, rendered, credits_used, word_count}'Hoe list ik de links van een pagina op?
Voeg include_links=true toe en zet de links-lijst om in regels gescheiden door tabs. Dat geeft je een snelle kaart van de uitgaande links van een pagina, die je kunt sorteren, filteren met grep of kunt doorgeven aan een batch-job.
curl -sG "https://webreaderapi.com/api/v1/read" \
-H "Authorization: Bearer $WEBREADER_API_KEY" \
--data-urlencode "url=https://example.com/docs/" \
-d include_links=true \
| jq -r '.links[] | "\(.text)\t\(.url)"' | sort -uHoe lees ik een JavaScript-pagina of een PDF?
Voeg -d render=true toe voor een pagina die zijn inhoud met JavaScript opbouwt; die kost dan 2 credits. Een PDF heeft niets speciaals nodig: stuur de URL en de tekst komt terug in markdown. PDF-bestanden tot 20 MB en 100 pagina's worden omgezet naar Markdown, voor 1 credit per begonnen blok van 10 pagina's.
curl -sG "https://webreaderapi.com/api/v1/read" -H "Authorization: Bearer $WEBREADER_API_KEY" \
--data-urlencode "url=https://example.com/app/changelog" -d render=true \
| jq -r '.markdown' > changelog.md
curl -sG "https://webreaderapi.com/api/v1/read" -H "Authorization: Bearer $WEBREADER_API_KEY" \
--data-urlencode "url=https://example.com/files/annual-report.pdf" \
| jq -r '.markdown' > annual-report.mdHoe draai ik een batch-job vanuit de shell?
Post een JSON-body met je URL's naar /batch, bewaar de job_id en lees dan de job. Een kleine loop wacht tot de job done is en print de titel of foutcode van elke pagina. Volg voor lange jobs next_cursor zoals getoond op de batch- en crawl-pagina.
JOB=$(curl -s "https://webreaderapi.com/api/v1/batch" \
-H "Authorization: Bearer $WEBREADER_API_KEY" \
-H "Content-Type: application/json" \
-d '{"urls": ["https://example.com/a", "https://example.com/b", "https://example.com/c"]}' \
| jq -r '.job_id')
until [ "$(curl -s "https://webreaderapi.com/api/v1/jobs/$JOB" -H "Authorization: Bearer $WEBREADER_API_KEY" | jq -r '.status')" = "done" ]; do
sleep 5
done
curl -s "https://webreaderapi.com/api/v1/jobs/$JOB" -H "Authorization: Bearer $WEBREADER_API_KEY" \
| jq -r '.results[] | "\(.url)\t\(.title // .error.code)"'Hoe controleer ik mijn credits?
Roep /credits aan; dat is gratis. Het retourneert credits_remaining, credits_used_today en je concurrency_limit. Prepaid credits verlopen nooit: ongebruikte pagina's blijven op je account staan tot je ze gebruikt.
curl -s "https://webreaderapi.com/api/v1/credits" -H "Authorization: Bearer $WEBREADER_API_KEY" | jq '.credits_remaining'Wat is de PowerShell-versie op Windows?
Invoke-RestMethod parseert de JSON voor je, dus je hebt geen jq nodig. Bouw de query met [uri]::EscapeDataString om het pagina-adres te coderen, en geef de sleutel door in een headers-tabel.
$headers = @{ Authorization = "Bearer $env:WEBREADER_API_KEY" }
$target = [uri]::EscapeDataString('https://example.com/guides/compost')
$page = Invoke-RestMethod -Uri "https://webreaderapi.com/api/v1/read?url=$target" -Headers $headers
$page.markdown | Out-File -Encoding utf8 compost.md
"$($page.title): $($page.word_count) words, $($page.credits_used) credit(s)"curl: veelgestelde vragen
Waarom mislukt mijn URL met & erin?
Omdat de shell of curl hem splitst. Zet het hele url=…-argument tussen quotes en geef het door met --data-urlencode, zoals in de recepten hierboven; curl codeert dan &, ? en = binnen het pagina-adres.
Hoe zie ik de HTTP-status van een fout?
Voeg -w '\n%{http_code}\n' toe om hem na de body te printen, of -i om alle headers te zien. De error.code van de body is de stabiele waarde om in scripts te testen.
Wordt een mislukte call gefactureerd?
Nee. 1 credit = 1 pagina lezen zonder browser; 2 credits wanneer de pagina een browser nodig heeft om JavaScript te renderen. Een verzoek dat mislukt, of dat de robots.txt van een site weigert, wordt niet in rekening gebracht.