PPT to Images API Guide
Convert PPT and PPTX slides into ordered PNG images for presentation previews and document review, with file uploads, public links and adjustable image dimensions.
Convert PowerPoint slides into PNG images
Turn a PPT or PPTX presentation into ordered static PNG images for previews, catalogs and review workflows. Upload a file or provide a public link. Each slide has its own image URL.
View API details or try the Demo.
Send a presentation
Use POST https://api.gugudata.io/v1/imagerecognition/ppt-to-images with AppKey in the query string and multipart fields. Send exactly one of file and file_url.
curl 'https://api.gugudata.io/v1/imagerecognition/ppt-to-images?appkey=YOUR_APPKEY' \
-F 'file=@presentation.pptx' \
-F 'scale_factor=1'
For URL input, replace the file field with file_url=https://gugudata.io/assets/demo/ppt2images-demo.pptx. Download the four-slide sample.
| Parameter | Meaning |
|---|---|
file |
PPT/PPTX upload, at most 20 MiB and 50 slides. |
file_url |
Public HTTP(S) URL, at most 2048 characters. Use instead of file. |
scale_factor |
Integer, default 1. Values below 1 use 1; above 4 use 4. |
Increasing scale increases dimensions and file size. Each image is limited to 8192 pixels per side and 32 million pixels; total output is limited to 100 MiB. Oversized output is rejected, not silently downscaled.
Read the image URLs
The success envelope contains dataStatus and data: string[]. There is no nested images field. URLs follow source slide order, including hidden and blank slides.
This example illustrates the shape; use the real URLs returned by your request:
{
"dataStatus": {
"requestParameter": "source=url&scale_factor=1&bytes=33355&slides=2",
"statusCode": 200,
"statusDescription": "successfully",
"responseDateTime": "2026-09-07 00:00:00+0000",
"dataTotalCount": 2
},
"data": [
"https://storage.gugudata.io/ppt/example/slide_1.png",
"https://storage.gugudata.io/ppt/example/slide_2.png"
]
}
Download the returned URLs as PNG files. Links are public; save output you need to keep. Permanent hosting is not guaranteed. Use this workflow only when public output is appropriate.
Static images, not animated playback
Text, shapes and supported embedded images become static images. Fonts may be substituted, so exact layout matching is not guaranteed. Animations, transitions and video playback are not preserved. Encrypted, damaged or unsupported presentations are rejected; slides are not silently truncated. This API does not perform OCR.
Try the Demo
The Demo converts the four-slide sample at scale 3 and caches real output for 15 minutes. X-GuGuData-Demo-Mode is live or cached; X-GuGuData-Generated-At identifies generation time. The audit parameter includes the input sample URL.
Handle errors
| HTTP status | Meaning |
|---|---|
| 400 | Missing/conflicting input, invalid URL or non-integer scale. |
| 401 / 403 | Authentication or access is not permitted. |
| 413 | File exceeds 20 MiB or presentation exceeds 50 slides. |
| 422 | Invalid/encrypted presentation or output exceeds supported limits. |
| 429 | Request limit reached. |
| 502 | Download or conversion failed or timed out. |
| 503 | Conversion is temporarily unavailable. |
Inspect HTTP status and dataStatus.statusCode. Parameter errors use business code 400; conversion failures use 500. Do not treat failed output as a partial set of images.
See PPT to PDF for PDF output or PDF OCR to Word for scanned documents.