Create a new presentation from text content. This is an async operation.
Workflow:
generation_id immediatelyGET /generations/{generation_id} until status is completed or failedRate limit: Max 5 concurrent generations per user.
Generate a presentation from text content. This is an async operation - you receive aDocumentation Index
Fetch the complete documentation index at: https://docs.getalai.com/llms.txt
Use this file to discover all available pages before exploring further.
generation_id immediately and poll for results.
POST /generationsgeneration_id immediatelyGET /generations/{generation_id} until status is completed or failedformats field| Parameter | Type | Description |
|---|---|---|
input_text | string | Content to transform into slides. Can be plain text, markdown, or structured notes. |
| Parameter | Type | Description |
|---|---|---|
additional_instructions | string | Extra guidance for the AI on style, focus areas, or specific requirements not captured by other options. |
image_ids | array of strings | IDs (UUIDs) of previously uploaded images from POST /upload-images. Images are matched to relevant slides automatically. |
| Parameter | Type | Default | Description |
|---|---|---|---|
export_formats | array | ["link"] | Formats to export: link, pdf, ppt. Can request multiple. |
| Parameter | Type | Default | Description |
|---|---|---|---|
presentation_options.title | string | ”API Generated Presentation” | Title shown on title slide and in exports |
presentation_options.theme_id | string | "27874e6b-8c1c-4301-bce7-d22e6e8df7d6" | Theme ID controlling colors, fonts, and styling. Use GET /themes to discover available theme IDs. Legacy theme display names are still accepted for backward compatibility, but deprecated. |
presentation_options.slide_range | string | ”auto” | Target slide count: auto, 1, 2-5, 6-10, 11-15, 16-20, 21-25, 26-50 |
presentation_options.existing_presentation_id | string | - | Append slides to existing presentation |
presentation_options.total_variants_per_slide | integer | 1 | Variants per slide (1-4) |
presentation_options.vibe_id | string | - | Vibe ID controlling the visual aesthetic of creative variants. Use GET /vibes to discover available vibe IDs. Requires image_options.num_image_variants >= 1 when set. If omitted, standard theme styling is used. |
| Parameter | Type | Default | Description |
|---|---|---|---|
text_options.language | string | (auto) | Output language |
| Parameter | Type | Default | Description |
|---|---|---|---|
image_options.include_ai_images | boolean | true | Generate AI images |
image_options.include_web_images | boolean | true | Search the web for relevant images to include in slides |
image_options.style | string | ”auto” | Image style: auto, realistic, artistic, cartoon, three_d, custom |
image_options.style_instructions | string | - | Required when style is custom |
image_options.num_image_variants | integer | 0 | Number of creative image-led slide variants generated using Nano Banana Pro (0-2). Required (>=1) when presentation_options.vibe_id is set. Increases cost. |
generation_id to poll GET /generations/{generation_id} for status.
theme_id now primarily expects a theme ID from GET /themes. Legacy theme display names still work for backward compatibility, but they are deprecated.GET /vibes.
vibe_id is set, image_options.num_image_variants must be >= 1. Vibes are applied through creative image variants.Your Alai API key. Get one from your account settings at app.getalai.com
Content to transform into slides. Can be plain text, markdown, or structured notes. Longer input typically produces more slides.
Guidance for the AI on style, focus areas, or specific requirements not captured in other options.
IDs of previously uploaded images (from POST /upload-images) to incorporate. Images are matched to relevant slides automatically.
Formats to export upon completion. 'link' is a shareable web URL. 'pdf' and 'ppt' provide downloadable files.
link, pdf, ppt Successful Response
Unique identifier to poll for generation status via GET /generations/{generation_id}