Use one design mode for a generation request: a standard template or a Smart design. A theme can be combined with a standard template.
List standard templates
List built-in and custom templates withGET /standard-template/all:
standard_template:
include_defaults=false when your interface should show only the user’s custom templates.
Inspect template layouts
Fetch one template withGET /standard-template/{id}. Each returned slide layout contains an id, an optional name and description, and a json_schema describing the content it accepts.
GET /standard-template/{id}/example when you need sample content for the layouts. This is especially useful before generating a presentation directly from structured JSON.
Create a presentation from JSON
Inspect layout schemas and fill them with deterministic application data.
List Smart designs
Smart designs use a separate identifier and a paginated endpoint:smart_design. Do not place a Smart design identifier in standard_template.
List themes
Built-in and custom themes use separate listing endpoints:id as the theme value. Built-in identifiers currently exposed by the generation schema include edge-yellow, light-rose, mint-blue, professional-blue, and professional-dark.
Generate a color palette
POST /theme/generate derives a complete presentation palette from the seed colors you provide. All fields are optional, so you can begin with only a primary and background color:
Create a custom theme
Create a reusable theme withPOST /theme/create. The request requires a name, description, complete colors, and font data. company_name and a previously uploaded logo asset identifier are optional.
id:
Apply the resources
Store identifiers safely
- Persist identifiers rather than display names; names can change and are not guaranteed to be unique.
- Refresh lists when a user opens a selector so newly created resources appear.
- Handle a missing identifier by asking the user to choose a replacement instead of silently changing the design.
- Keep standard-template and Smart-design identifiers in separate fields in your application.
- Test custom fonts, logo placement, charts, and text contrast in the exported format.