ORGANIZE API

Read Bookmarks

Extract a PDF outline as structured JSON.

POST/v1/pdf/bookmarks/readFREE+
Scope: pdf:read
Maximum 25 MB per file.
API usagePOST /api/pdf/v1/pdf/bookmarks/read ยท x-api-key authentication
curl --request POST \
  --url /api/pdf/v1/pdf/bookmarks/read \
  --header "x-api-key: $PDF_API_KEY" \
  --header "content-type: application/json" \
  --data '{"files": "..."}'
JavaScript / Node.js
const response = await fetch("/api/pdf/v1/pdf/bookmarks/read", { method: "POST", headers: { "x-api-key": process.env.PDF_API_KEY, "content-type": "application/json" }, body: JSON.stringify({ "files": "..." }) });
Python
import requests
requests.post("/api/pdf/v1/pdf/bookmarks/read", headers={"x-api-key": API_KEY}, json={"files": "..."})
PHP
$ch = curl_init("/api/pdf/v1/pdf/bookmarks/read");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-api-key: " . getenv("PDF_API_KEY"), "content-type: application/json"]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(["files" => "..."]));
Go
req, _ := http.NewRequest("POST", "/api/pdf/v1/pdf/bookmarks/read", bytes.NewBufferString(`{"files":"..."}`))
req.Header.Set("x-api-key", os.Getenv("PDF_API_KEY"))
Playground requests use your selected key and count against the workspace quota.
Developer guide

API usage

Use your API key in the x-api-key header.

POSThttps://api.pdfapi.eu/v1/pdf/bookmarks/readDirect response
curl --request POST \
  --url https://api.pdfapi.eu/v1/pdf/bookmarks/read \
  --header "x-api-key: $PDF_API_KEY" \
  --header "content-type: application/json" \
  --data '{ "input": "..." }'
Responseapplication/json