Skip to content

Generate a Presentation

POST https://api.slidespeak.co/api/v1/presentation/generate

Creates a new presentation using AI by providing either plain text or previously uploaded document UUIDs. Customize the presentation with various parameters such as template, language, tone, verbosity, and branding options. The endpoint returns a task ID for asynchronous processing; poll the task status to retrieve the final presentation file.


Content-Type: string

application/json

X-API-Key: string

The API key to use for the request.


<YOUR_API_KEY>


plain_text: string OPTIONAL

The topic to generate a presentation about.

document_uuids: list[string] OPTIONAL

The UUIDs of the uploaded documents to use for the presentation.

length: number

The number of slides.

template: string

The name of the template or the ID of a custom template. See the custom templates section for more information.


For options, see Get All Templates.

language: string OPTIONAL (default: 'ORIGINAL')

The language to use in the presentation.


Example: French

fetch_images: boolean OPTIONAL (default: true)

Whether to include stock images.

tone: 'default' | 'casual' | 'professional' | 'funny' | 'educational' | 'sales_pitch' OPTIONAL (default: 'default')

The tone to use for the text.

verbosity: 'concise' | 'standard' | 'text-heavy' OPTIONAL (default: 'standard')

How verbose, or long, the text should be.

custom_user_instructions: string OPTIONAL (default: None)

A custom instruction that should be followed when generating the presentation.

include_cover: boolean OPTIONAL (default: true)

Whether to include the ‘cover’ slide.

include_table_of_contents: boolean OPTIONAL (default: true)

Whether to include the ‘table of contents’ slides.

use_branding_logo: boolean OPTIONAL (default: false)

Whether to include the ‘Brand Logo’ in the slides. The Brand Logo can be configured in SlideSpeak’s web app under Brand Settings.

use_branding_color: boolean OPTIONAL (default: false)

Whether to apply the ‘Brand Color’ to the slides. The Brand Color can be configured in SlideSpeak’s web app under Brand Settings.

run_sync: boolean OPTIONAL (default: false)

Whether to run the task synchronously. If set to true, the API will return the presentation as soon as it is ready.


If set to false, the API will return a task ID and the presentation will be available at the task_result URL.


See the Get Task Status endpoint for more information.

response_format: 'powerpoint' | 'pdf' OPTIONAL (default: powerpoint)

The file format of the generated presentation.


Terminal window
curl -X POST "https://api.slidespeak.co/api/v1/presentation/generate" -H "Content-Type: application/json" -H "x-api-key: YOUR_API_KEY" -d '{
"plain_text": "Key moments in the French Revolution",
"length": 6,
"template": "default",
"language": "ORIGINAL",
"fetch_images": true,
"tone": "default",
"verbosity": "standard",
"custom_user_instructions": "Make sure to mention the storming of the Bastille"
}'

{
"plain_text": "Key moments in the French Revolution",
"length": 6,
"template": "default",
"language": "ORIGINAL",
"fetch_images": true,
"tone": "default",
"verbosity": "standard",
"custom_user_instructions": "Make sure to mention the storming of the Bastille"
}

{
"task_id": "353509d6-8efe-401c-a8a9-53ca64b520a3"
}

{
"task_id": "353509d6-8efe-401c-a8a9-53ca64b520a3",
"task_status": "SUCCESS",
"task_result": {
"url": "https://slidespeak-files.s3.us-east-2.amazonaws.com/24d89111-71a1-4c05-a909-2d84123c9ba9.pptx"
},
"task_info": {
"url": "https://slidespeak-files.s3.us-east-2.amazonaws.com/24d89111-71a1-4c05-a909-2d84123c9ba9.pptx"
}
}