Summary to PPT

Generate PowerPoint presentations from text summaries using the MagicSlides API.

Endpoint

POST https://api.magicslides.app/public/api/ppt_from_summery

Request Parameters

msSummaryText

The summary text to convert into a presentation.

Type: string

Required: Yes

email

Your registered email address.

Type: string

Required: Yes

accessId

Your API access ID.

Type: string

Required: Yes

template

Presentation template style.

Type: string

Required: No

Default: "bullet-point1"

language

Target language for the presentation.

Type: string

Required: No

Default: "en"

slideCount

Number of slides to generate (1-50).

Type: number

Required: No

Default: 10

aiImages

Enable AI-generated images.

Type: boolean

Required: No

Default: false

imageForEachSlide

Include images on every slide.

Type: boolean

Required: No

Default: true

googleImage

Use Google Images instead of AI images.

Type: boolean

Required: No

Default: false

googleText

Use Google search for content enhancement.

Type: boolean

Required: No

Default: false

model

AI model to use - "gpt-4" or "gpt-3.5".

Type: string

Required: No

Default: "gpt-4"

presentationFor

Target audience for the presentation.

Type: string

Required: No

Example Request

{
  "msSummaryText": "Your detailed summary text here...",
  "email": "your-email@example.com",
  "accessId": "your-access-id",
  "template": "bullet-point1",
  "language": "en",
  "slideCount": 10,
  "aiImages": false,
  "imageForEachSlide": true,
  "googleImage": false,
  "googleText": false,
  "model": "gpt-4",
  "presentationFor": "general audience"
}

Example Response

{
  "success": true,
  "data": {
    "url": "https://example.com/path/to/presentation.pptx",
    "slideCount": 10,
    "generatedAt": "2024-03-21T14:30:00Z",
    "fileSize": 2048576
  },
  "message": "Presentation generated successfully"
}

Code Examples

TypeScript

import axios from 'axios';

async function generateFromSummary() {
  try {
    const response = await axios.post(
      'https://api.magicslides.app/public/api/ppt_from_summery',
      {
        msSummaryText: 'Your detailed summary text here...',
        email: 'your-email@example.com',
        accessId: 'your-access-id',
        template: 'bullet-point1',
        language: 'en',
        slideCount: 10,
        aiImages: false,
        imageForEachSlide: true,
        googleImage: false,
        googleText: false,
        model: 'gpt-4',
        presentationFor: 'general audience'
      },
      {
        headers: {
          'Content-Type': 'application/json'
        }
      }
    );

    console.log('Presentation URL:', response.data.data.url);
    return response.data;
  } catch (error) {
    console.error('Error generating presentation:', error);
    throw error;
  }
}

Python

import requests

def generate_from_summary():
    try:
        response = requests.post(
            'https://api.magicslides.app/public/api/ppt_from_summery',
            json={
                'msSummaryText': 'Your detailed summary text here...',
                'email': 'your-email@example.com',
                'accessId': 'your-access-id',
                'template': 'bullet-point1',
                'language': 'en',
                'slideCount': 10,
                'aiImages': False,
                'imageForEachSlide': True,
                'googleImage': False,
                'googleText': False,
                'model': 'gpt-4',
                'presentationFor': 'general audience'
            },
            headers={
                'Content-Type': 'application/json'
            }
        )
        response.raise_for_status()
        data = response.json()
        print('Presentation URL:', data['data']['url'])
        return data
    except requests.exceptions.RequestException as e:
        print('Error:', e)
        raise

cURL

curl -X POST https://api.magicslides.app/public/api/ppt_from_summery \
  -H "Content-Type: application/json" \
  -d '{
    "msSummaryText": "Your detailed summary text here...",
    "email": "your-email@example.com",
    "accessId": "your-access-id",
    "template": "bullet-point1",
    "language": "en",
    "slideCount": 10,
    "aiImages": false,
    "imageForEachSlide": true,
    "googleImage": false,
    "googleText": false,
    "model": "gpt-4",
    "presentationFor": "general audience"
  }'