Skip to main content
For most use cases, the slideless CLI handles the upload flow end-to-end — you rarely need to call this endpoint directly. This reference is for custom tooling that can’t run Node.

The three-step upload flow

Slideless uses a content-addressed upload protocol. Each file is stored by its SHA-256 hash, so unchanged files across deck versions dedupe automatically.
  1. POST /precheckAssets — send hashes, get back which ones are missing. (This page.)
  2. POST /uploadPresentationAsset — upload each missing blob (multipart, streamed).
  3. POST /commitPresentationVersion — commit the manifest, bump the version.

Endpoint

Auth

Required scope: presentations:write.

Request body

Call patterns:
  • New presentation (first call): omit both presentationId and sessionId. Response includes sessionId + reserved presentationId to use for uploadPresentationAsset and commitPresentationVersion.
  • Update existing presentation: pass presentationId. Backend checks dedup against that presentation’s blob store.
  • Subsequent calls in a new-presentation flow: pass the sessionId you got from the first call.
Example:

Response (200)

New-presentation flow (no presentationId in request)

Update flow (presentationId in request)

Errors

Next