Skip to main content
The ablo.slides namespace manages individual slides within a deck. Like the decks API, create is atomic — you can pass the entire layer tree in one call and the commit either succeeds in full or is rolled back. Slide ids are client-minted, so you can capture them immediately and reference layers by id in subsequent update calls without additional read round-trips.

ablo.slides.create(input, options?)

Creates a slide and, optionally, all of its layers in one atomic commit.

Parameters

CreateSlideInput
required
RequestOptions

Returns

string
Client-minted UUID for the new slide.
string
The parent deck id.
string
The slide title.
number
The slide’s integer position in the deck.
LayerResource[]
One entry per layer passed in input.layers, each carrying { id, slideId, type }.

Example


ablo.slides.retrieve(id)

Fetches the full stored record for a slide by id. Requires a readable client.

Parameters

string
required
The slide id.

Returns

string
The slide UUID.
string
The parent deck id.
string
The slide title.
number
The slide’s integer position in the deck.
string | null
The attached layout template id, or null.
string | null
Speaker notes, or null if none have been set.
SlideCompositionSettings | null
The full compiled settings object (size, background, grid, etc.), or null.

Example


ablo.slides.list({ deckId })

Returns all slides in a deck, ordered by their order field ascending. Requires a readable client.

Parameters

string
required
The deck whose slides you want to list.

Returns

An array of SlideRecord objects, sorted by order ascending. Each entry has the same shape as the return value of retrieve.

Example


ablo.slides.update(params, options?)

Applies a field-level patch to an existing slide. When you include any settings field (background, size, width, height, etc.), the SDK performs a read-modify-write so only the fields you specify are changed and the rest of the settings object is preserved.

Parameters

UpdateSlideParams
required
RequestOptions

Returns

string
The commit UUID.
'queued' | 'confirmed'
The acknowledgement level reached.
number
Monotonic sync cursor for real-time clients.

Example


ablo.slides.delete(id, options?)

Permanently deletes a slide and all of its layers.

Parameters

string
required
The slide id to delete.
RequestOptions

Returns

string
The commit UUID.
'queued' | 'confirmed'
The acknowledgement level reached.
number
Monotonic sync cursor.

Example