In this guide, you’ll create a presentation directly from JSON by choosing a template, picking slide layouts, and supplying content that matches each layout’s schema.

What you’ll do

  • List available templates
  • Inspect a template to see its slide layouts and JSON schema
  • Create a presentation from your own JSON
  • Download the exported file or open it in the editor

Step 1: List templates

Use this to find built‑in and custom templates you can use.
GET /api/v1/ppt/template/all
API reference: Get all templates
curl -s https://presenton.ai/api/v1/ppt/template/all \
  -H "Authorization: Bearer sk-presenton-xxxxx"
Example response:
[
  { "id": "general",  "name": "Default" },
  { "id": "modern",   "name": "Default" },
  { "id": "standard", "name": "Default" },
  { "id": "swift",    "name": "Default" },
  { "id": "custom-20f600db-e55d-4f14-b373-5c43c1668170", "name": "Template with flower" },
  { "id": "custom-88ac23b3-3e1f-4bb0-af7a-860350ab645f", "name": "One Slide Template" }
]

Step 2: Inspect a template (layouts + schema)

Fetch a specific template to see its available slides and the JSON schema for each layout.
GET /api/v1/ppt/template/{template_id}
API reference: Get template by ID
curl -s https://presenton.ai/api/v1/ppt/template/custom-20f600db-e55d-4f14-b373-5c43c1668170 \
  -H "Authorization: Bearer sk-presenton-xxxxx"
Example response (truncated):
{
  "name": "custom-20f600db-e55d-4f14-b373-5c43c1668170",
  "ordered": false,
  "slides": [
    {
      "id": "custom-20f600db-e55d-4f14-b373-5c43c1668170:header-subtitle-decorative-illustration-slide",
      "name": "dynamicSlideLayout",
      "description": "A slide with a centered header, centered subtitle, and a decorative illustration in the corner",
      "json_schema": {
        "$schema": "https://json-schema.org/draft/2020-12/schema",
        "type": "object",
        "properties": {
          "title": {
            "description": "Centered header text. Max 5 words",
            "type": "string",
            "minLength": 12,
            "maxLength": 32
          },
          "subtitle": {
            "description": "Centered subtitle text under the header. Max 16 words",
            "type": "string",
            "minLength": 40,
            "maxLength": 95
          }
        },
        "required": ["title", "subtitle"],
        "additionalProperties": false
      }
    }
  ]
}
Your slide content must match the layout’s json_schema. Use the layout id as the layout value in your request.

Step 3: Create a presentation from JSON

Endpoint:
POST /api/v1/ppt/presentation/create/from-json
Payload structure:
{
  "title": "Your Presentation Title",
  "template": "<template_id>",
  "theme": "professional-dark",
  "export_as": "pdf",
  "slides": [
    {
      "layout": "<slide_layout_id>",
      "content": { /* must conform to the layout's json_schema */ }
    }
  ]
}
curl -X POST https://presenton.ai/api/v1/ppt/presentation/create/from-json \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer sk-presenton-xxxxx" \
  -d '{
    "title": "Taco Bell",
    "template": "custom-20f600db-e55d-4f14-b373-5c43c1668170",
    "theme": "professional-dark",
    "export_as": "pdf",
    "slides": [
      {
        "layout": "custom-20f600db-e55d-4f14-b373-5c43c1668170:header-subtitle-decorative-illustration-slide",
        "content": {
          "title": "Introduction to Taco Bell",
          "subtitle": "Taco bell was a small shop opened by a small town guy who was recognized greatest chef"
        }
      }
    ]
  }'
Response:
{
  "presentation_id": "f60f4fb2-5dba-4daf-86ae-e7cb39f693c6",
  "path": "https://presenton-public.s3.amazonaws.com/users/1d5ec2f2-3119-4132-b483-df5c3c6b05c4/exports/Taco%20Bell-e46c34d6-e8a0-4d80-9671-e81ee95a3521.pdf",
  "edit_path": "https://presenton.ai/presentation?id=f60f4fb2-5dba-4daf-86ae-e7cb39f693c6",
  "credits_consumed": 0.5
}
Open edit_path in your browser to refine the design visually.

Notes and tips

  • Validate content: Respect each layout’s minLength/maxLength and required fields.
  • Themes: See available built‑in themes and customization options in the Templates & Themes guide.
  • Export formats: Use export_as like pptx or pdf.

Next steps

  1. Try other layouts from your chosen template and mix multiple slides.
  2. Explore built‑in templates and themes: Templates & Themes.
  3. Edit an existing presentation in place: Edit via API.