POST
/
v3
/
generate
/
deck
/
task
curl --request POST \
  --url https://api.flashdocs.ai/v3/generate/deck/task \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "prompt": "In a few slides, describe the recent Innovations in Renewable Energy. Discuss the foundational problems and key papers. Include specific examples.",
  "source_document_id": "abc-def-ghi-jkl",
  "number_slides": 5,
  "audience_domain": "slack.com",
  "presentation_name": "Renewable Energy Innovations 2025",
  "google_document_editors": [
    "bob@acme.com",
    "joe@acme.com"
  ],
  "outline": [
    {
      "content_instruction": "Introduce the topic of renewable energy and its importance.",
      "layout_instruction": "Title slide with a background image.",
      "markdown": "# Parallel Inference on GPUs for LLMs\n## **Data Parallelism**\n- Distributes batches of input data across GPUs.\n- **Benefits:** Increased throughput via simultaneous processing.\n## **Model Parallelism**\n- Splits the model'\''s layers or components among GPUs.\n## **Pipeline Parallelism**\n- Overlaps different stages of inference, reducing idle time.\n- **Advantage:** Maximizes resource utilization.\n    - Use various layers of DNN see [here](https://developer.nvidia.com/blog).",
      "text_placeholder_manual_insertions": [
        {
          "placeholder": "[title]",
          "value": "Renewable Energy Innovations 2027"
        },
        {
          "placeholder": "[content]",
          "value": "Introduce the topic of renewable energy and its importance."
        }
      ],
      "image_placeholder_manual_insertions": [
        {
          "alt_text": "[top right]",
          "slide_index": 0,
          "url": "https://example.com/image.jpg"
        },
        {
          "alt_text": "[bottom left]",
          "slide_index": 1,
          "url": "https://example.com/image2.jpg"
        }
      ],
      "slide_id": "slide_123"
    }
  ],
  "export_options": {
    "google_slides_permission_options": {
      "anyone_edit_with_link": false,
      "anyone_view_with_link": false,
      "google_document_editors": [
        "bob@acme.com",
        "joe@acme.com"
      ]
    },
    "output_format": "google_slides_direct_link"
  }
}'
{
  "task_id": "task_67890",
  "created_at": "<string>"
}

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Body

application/json
prompt
string | null

The main (ideally information dense) instructions for how to create the slide(s). Can be ~400,000 characters.

Example:

"In a few slides, describe the recent Innovations in Renewable Energy. Discuss the foundational problems and key papers. Include specific examples."

source_document_id
string | null

Optional. The FlashDocs document ID of an existing source document to base the presentation content on. See the results from https://api.flashdocs.ai/v1/documents/base - the id key in the document object. If not provided, then any Library document in the organization is chosen.

Example:

"abc-def-ghi-jkl"

number_slides
integer | null

Optional. The desired number of slides in the generated presentation. If not provided, the system will automatically predict the number of slides from the prompt. Do not include if source_document_id is a template document.

Example:

5

audience_domain
string | null

Optional. Used to populate image placeholders with the audience-company-logo category. I.e. if this is a slide deck for an external audience, the audience_domain is the website of the company that the audience belongs to. If not provided, the system will predict. Must be valid domain name (ex: if you are making a deck to sell your product to the finance team at Intel, set this parameter to intel.com or https://intel.com)

Example:

"slack.com"

presentation_name
string | null

Optional. The desired filename name for the generated presentation deck. If not provided, the system will generate one based on the prompt.

Example:

"Renewable Energy Innovations 2025"

google_document_editors
string[] | null

Deprecating on May 15, 2025. Use the Google Export option instead. A list of email addresses that will have edit access to the generated Google Slides presentation. API user is included by default. Only applicable to Google Slides - ignored for PowerPoint.

Example:
["bob@acme.com", "joe@acme.com"]
outline
object[] | null

Optional. An array of outline instructions defining the content and layout for each slide. See the endpoint for details. Only used for custom decks - ignored for template decks. Useful when you want specific content & layouts for each slide in a custom deck. If not provided, then the system will generate an outline using the prompt.

export_options
object | null

Optional. Export options for the generated presentation. Only applicable to Google Slides - ignored for PowerPoint.

Example:
{
  "google_slides_permission_options": {
    "anyone_edit_with_link": false,
    "anyone_view_with_link": false,
    "google_document_editors": ["bob@acme.com", "joe@acme.com"]
  },
  "output_format": "google_slides_direct_link"
}

Response

200
application/json
Successful Response
task_id
string
required

Unique identifier for the task instance of the deck generation.

Example:

"task_67890"

created_at
string

Creation timestamp