REST API

One POST,one presentation

Encelade's REST API turns unstructured data into an interactive presentation in a single authenticated call. Send raw text, URLs, CSVs, or documents to /api/public/v1/projects/generate and get back a session you poll until the deck is ready — from any language or runtime.

Quickstart

Call generate

Authenticate with an API key, POST your content and outline hints, and receive a session ID. Poll the session — or register a webhook — to get the finished presentation URL.

  • Accepts raw text, URLs, and file uploads
  • Up to 20 sources per call
  • Webhooks for async delivery
  • Full CRUD over projects and sessions
POST /api/public/v1/projects/generate
curl -X POST \
  https://www.encelade.ai/api/public/v1/projects/generate \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "topic": "Q1 Performance Review",
    "outlineHints": [
      "Revenue growth by region",
      "Key product launches"
    ],
    "supportingMaterials": [
      {
        "title": "Q1 data source",
        "kind": "link",
        "url": "https://your-data-source.com/q1"
      },
      {
        "title": "EMEA highlights",
        "notes": "EMEA grew 34% YoY..."
      }
    ],
    "verbosity": "balanced",
    "pageCount": "auto"
  }'
How it works

From data to deck
in three steps

01

Create an API key

Generate a scoped key in your dashboard. Send it as an x-api-key header or a Bearer token on every request.

02

POST your data

Call /projects/generate with a topic, optional outline hints, and up to 20 supporting materials. You get back a session ID.

03

Poll or webhook

Poll /sessions/{id} until status is succeeded, or register a webhook to be notified — then use the returned shareable link.

Webhooks beat polling

For server-to-server use, register a webhook instead of polling. Encelade calls it when generation completes or fails, so you don't hold a request open or burn rate limit on status checks.

Questions

REST API
+ Encelade

How do I generate a presentation from an API?

POST your topic and supporting materials to /api/public/v1/projects/generate with an API key. The response includes a session ID you poll until the presentation is ready.

What inputs does the API accept?

Raw text, URLs, and uploaded files (DOCX, CSV, XLSX) — up to 20 supporting materials in a single call, mixed freely.

Is generation synchronous?

No. Generation returns a session immediately; you either poll /sessions/{id} or register a webhook to receive the finished deck URL.

Start building
in minutes

Get an API key, connect REST API, and have a presentation ready before you finish reading the docs.

Free plan available · No credit card required