Get a presentation's source

The published HTML and assets, to edit one and publish it back.

GET /v1/presentations/{presentationId}/source · API v1 · versioning

The HTML a presentation was published from, whole, with what a republish has to send again: its context.md, each file under assets/ with a download link that works for one hour, its slug, visibility and title, and the voice and speed its slides were spoken in. Edit indexHtml and publish it back to the same presentationId with POST /v1/presentations; slides whose narration did not change keep their audio, and the version you replaced stays in the history. Only for a caller who may republish it; anyone else, on a public presentation too, gets 404. Reading changes nothing. API-key callers only.

Authentication

Send an API key as Authorization: Bearer bisque_live_…. Keys come from bisque.cloud/settings/keys; see Authentication.

Request

ParameterInMeaning
presentationIdpath, required

Example

curl -X GET https://bisque.cloud/v1/presentations/{presentationId}/source \
  -H "Authorization: Bearer $BISQUE_API_KEY"

Response

200: The source.

Errors:

  • 401: Missing or invalid credential.
  • 404: Not a presentation you can republish (PRESENTATION_NOT_FOUND), or its bundle holds no HTML (NO_EDITABLE_SOURCE).
  • 409: It is still publishing (PRESENTATION_NOT_READY), so its source is changing.

Other endpoints

PageCallWhat it does
Create a presentationPOST /v1/presentationsPut the slides up now and narrate them one at a time.
Get a presentationGET /v1/presentations/{presentationId}The open creation, to resume it from a new session.
Add slidesPATCH /v1/presentations/{presentationId}Append sections while the creation is open.
Update a slidePATCH /v1/presentations/{presentationId}/slides/{slideKey}Give one slide its narration after the MP3 is uploaded.
Wait for an answerGET /v1/presentations/{presentationId}/surveys/{surveyId}/responseHold for the viewer's answer to a question on a slide.
FinalizePOST /v1/presentations/{presentationId}:finalizeClaim the version. Slides still without audio stay silent.
Read as textGET /api/presentations/contextAny shared presentation as a transcript. No credential needed.