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
 
curl -s https://api.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}
 
curl -s https://api.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://api.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
- Try other layouts from your chosen template and mix multiple slides.
 
- Explore built‑in templates and themes: Templates & Themes.
 
- Edit an existing presentation in place: Edit via API.