Skip to main content

Generate

Generate a presentation

Base URL​

https://appdev.mexus.cc

Authentication​

All API requests require an API Key included in the Header. If you don't have one, create it on the API Tokens page:

Authorization: Bearer YOUR_API_KEY

Endpoint​

POST /api/v1/project/export
Content-Type: application/json
Authorization: Bearer YOUR_API_KEY

Request Body​

Basic Example​

{
"projectId": "your_project_id",
"presentation": {
"slideList": [
{
"templateKey": "your_template_key",
"content": {
"your_field_key": "value1",
"your_field_key2": "value2"
}
}
]
}
}

If you are unsure about what to include in the slideList, you can go to the Playground page to test it out.

Parameters​

ParameterTypeRequiredDescription
projectIdstringYesProject ID
presentationobjectYesPresentation content
presentation.slideListarrayYesList of slides
presentation.slideList[].templateKeystringYesTemplate identifier
presentation.slideList[].contentobjectYesField data in key-value format. The structure depends on the fields defined in the selected template. These fields are customizable and controlled by the user
presentation.slideList[].attributesobjectNoSlide attributes
presentation.slideList[].attributes.speakerNotestringNoSpeaker notes
presentation.slideList[].attributes.hiddenbooleanNoWhether to hide this slide
presentation.slideList[].attributes.slideNumberobject or booleanNoSlide number settings
presentation.attributesobjectNoPresentation attributes
presentation.attributes.titlestringNoPresentation title
presentation.attributes.authorstringNoAuthor name
presentation.attributes.companystringNoCompany name
presentation.attributes.subjectstringNoPresentation subject

Slide Number Settings​

If slideNumber is an object, it supports the following properties:

PropertyTypeRequiredDescription
xnumberYesX-position (0.0 to 1.0)
ynumberYesY-position (0.0 to 1.0)
colorstringNoText color (e.g., "#333333")
fontSizenumberNoFont size in points

Full Example​

{
"projectId": "proj_123456",
"presentation": {
"slideList": [
{
"templateKey": "title-slide",
"content": {
"title": "Annual Report 2025",
"subtitle": "Financial Performance Overview"
},
"attributes": {
"speakerNote": "Welcome everyone to our annual report presentation."
}
},
{
"templateKey": "bullet-list",
"content": {
"title": "Key Achievements",
"bullets": [
"Increased revenue by 25%",
"Expanded to 3 new markets",
"Launched 5 new products"
]
},
"attributes": {
"slideNumber": {
"x": 0.95,
"y": 0.95,
"color": "#333333",
"fontSize": 12
}
}
},
{
"templateKey": "chart-slide",
"content": {
"title": "Revenue Growth",
"chartData": {
"labels": ["Q1", "Q2", "Q3", "Q4"],
"values": [1.2, 1.8, 2.3, 2.9]
}
},
"attributes": {
"hidden": false
}
}
],
"attributes": {
"title": "Annual Report 2025",
"author": "Finance Team",
"company": "Acme Corporation",
"subject": "Financial Performance"
}
}
}

Response​

A successful request returns a JSON object with a task ID:

{
"taskId": 123456
}

You can use this task ID to check the status of your presentation generation.