Skip to content
pdfconversionapi

ODP to WebP API

POST /v2/convert/odp/to/webp turns each visible slide of an OpenDocument presentation into a lossless WebP. At ImageResolution=96 our composting workshop came back as four 1,058 × 595 images totaling 195,520 bytes.

Endpoint
POST /v2/convert/odp/to/webp
Accepts
odp
Sample timing
0.791 s median of 5 runsHow we measure
Request size
Up to 10 MB on the Free plan or 100 MB on paid plans, all files together

Request and response

Every sample below ran against the API before this page was published. Set PDFCONVERSIONAPI_KEY to your key and run it as is.

curl -sS -X POST \
  https://api.pdfconversionapi.com/v2/convert/odp/to/webp \
  -H "Authorization: Bearer $PDFCONVERSIONAPI_KEY" \
  -F File=@compost-workshop.odp \
  --form-string ImageResolution=96 \
  -o response.json

# FileData is base64. Save the first file in converted/,
# or print the JSON error.
if jq -e '.Files' response.json > /dev/null; then
  mkdir -p converted
  name=$(jq -r '.Files[0].FileName' response.json)
  jq -r '.Files[0].FileData' response.json \
    | base64 --decode > "converted/$name"
else
  cat response.json
fi
200 OK0.791 s median4 files, 191 KB
{
  "ConversionCost": 1,
  "ConversionTime": 0.791,
  "Files": [
    {
      "FileName": "compost-workshop-1.webp",
      "FileExt": "webp",
      "FileSize": 44338,
      "FileData": "UklGRiqtAABXRUJQVlA4TB2t…"
    },
    {
      "FileName": "compost-workshop-2.webp",
      "FileExt": "webp",
      "FileSize": 65784,
      "FileData": "UklGRvAAAQBXRUJQVlA4TOQA…"
    },
    {
      "FileName": "compost-workshop-3.webp",
      "FileExt": "webp",
      "FileSize": 32870,
      "FileData": "UklGRl6AAABXRUJQVlA4TFKA…"
    },
    … 1 more files
  ]
}

Response from our test run on 2026-11-03. ConversionTime shows the median of 5 runs. FileData is shortened here; the real response carries the whole file as base64.

The sample, converted

The same file the code sends. Download the input and the output and compare them yourself.

First page of compost-workshop-1.webp, rendered by the API
Input
compost-workshop.odp (40 KB)
Output
compost-workshop-1.webp (43 KB)compost-workshop-2.webp (64 KB)compost-workshop-3.webp (32 KB)compost-workshop-4.webp (51 KB)
Source
Five OpenDocument slides for a composting workshop at a fictional community garden, with a table, a diagram drawn from shapes and one hidden slide. We made them for this page. (CC0-1.0). How it was made
Made by
2026-11-04, API build 9eeeb0640aba

Parameters

Send these as form fields next to the file. Names are case-insensitive. If you set one of the documented options below that we don't support yet, the request fails with a 400 that names it instead of returning a file made without it.

ParameterWhat it does
ImageResolutioninteger, default 150Pixel density: 1,653 × 930 at the default, 1,058 × 595 at 96. WebP keeps no DPI, so only the size changes.Values: 36–600
ImageWidthintegerExact width, height following the 16:9 slide.Values: 1–20,000
ImageHeightintegerExact height, width following.Values: 1–20,000
PageRangestringSlides to convert, hidden ones not counted: 1,3 for the title and the diagram.Values: e.g. 1,3
ConvertHiddenSlidesboolean, default falseAlso convert the hidden facilitator slide.
TransparentColorstringTurns one exact color transparent, for example white.
PasswordstringOpens a password-protected .odp.
FileNamestringBase of the names, numbered -1.webp onward.

Not supported yet

Setting one of these to anything but its default returns 400.

OptionWhat to do instead
ConvertSpeakerNotesNotes are not drawn. Values other than Disabled return 400.
PageSizeImages take the slide's shape; size them with ImageWidth or ImageHeight instead.

What carries over, and what doesn't

Kept

  • Lossless pixels: the same image the PNG route draws
  • The diagram's soft shadows and the cream title background
  • Three color channels and no alpha, until TransparentColor adds one
  • Liberation Sans text exactly as laid out in the file

Lost or not yet supported

  • Lossy savings: there is no quality setting.
  • A DPI value, which WebP has no field for.
  • The diagram slide's note and, by default, the hidden checklist.

Limits

  • 2,000 images per request at most.
  • 16,000 pixels per side and 100 million pixels per image.
  • 10 MB on the Free plan or 100 MB on paid plans per request; 120 seconds per conversion.

Where teams use it

Event pages for a talk or workshop

Put every slide of the session on the event page. The four lossless images at 96 DPI total 195,520 bytes and keep the table text crisp.

Previews in a shared drive or CMS

Show a picture of each .odp a group uploads, so members can find the right deck without opening an office suite.

Questions

Does ImageQuality make the files smaller?

No. ODP to WebP always writes lossless files, and ImageQuality=60 came back byte for byte the same as the default. Since ConvertAPI doesn't list the option for this pair, the API ignores it instead of refusing it. For lossy images use /v2/convert/odp/to/jpg.

How big are the images at the default resolution?

At 1,653 × 930 the four slides are 53,114 to 106,142 bytes; the table slide is the largest. At 96 DPI they shrink to 32,870 to 65,784 bytes.

Which slides are included?

Only slides that are shown in a presentation: 4 of the 5 here. The facilitator checklist is hidden in the file and needs ConvertHiddenSlides=true.

Convert your first ODP file in a minute.