Skip to main content
This tutorial uses the Open Source v1 API at http://localhost:5001/api/v1. Cloud v3 requests use different endpoints and schemas.

Before you start

  • Install the self-hosted web application.
  • Configure a working text provider.
  • Create the admin account for authenticated API access.
  • Confirm you can generate a short deck in the browser.
Store credentials in shell variables so they do not appear in the request itself:

1. Make the first request

curl --user sends HTTP Basic authentication using the same admin username and password as the web UI.

2. Understand the generation fields

3. Inspect the response

A successful response contains identifiers and paths similar to:
Prepend the Presenton server root to a relative result path. For example, the edit URL becomes:
Open the result in the browser, review every slide, and confirm the requested export is available.

4. Generate from an uploaded document

Upload the source first with /api/v1/ppt/files/upload. The exact response schema is shown in the Open Source API reference.
Pass the returned file path in files:

5. Use custom slide Markdown

Supply slides_markdown when your application already knows the exact outline:

6. Prepare for production

  • Use the asynchronous generation endpoint for longer jobs.
  • Poll the status endpoint or subscribe to a webhook instead of holding one request open.
  • Keep credentials and uploaded source files out of logs.
  • Set client timeouts and distinguish provider failures from network failures.
  • Avoid automatic blind retries that could create duplicate presentations.
  • Store presentation_id with your own job record.
  • Validate output before publishing or sending it to users.
  • Use HTTPS and restrict access to the self-hosted instance.

Browse the Open Source API

Review the complete endpoint list and request schemas.

Configure authentication

Learn how UI sessions, HTTP Basic, and MCP bearer tokens differ.