v64

latestOpenAPI 3.1.0raw.githubusercontent.com2026-08-016280256.4 KB
stacks

Set a stack's cover

Pins one of the stack's own live members as its cover (primary_asset_id). Setting a cover marks the stack as user-owned (origin = user), which freezes it — membership included — against burst re-detection, so neither the chosen cover nor the frame grouping is ever silently reverted by a later detection pass.

primary_asset_id cannot be null: there is no manual clear-cover operation. A pin clears automatically when the pinned frame is removed from the stack or permanently deleted.

patch/api/stacks/{stack_id}

Path parameters

stack_idstring required

Stack ID (with asset_stack_ prefix) of the stack to pin a cover on.

Stack ID (with asset_stack_ prefix) of the stack to pin a cover on.

Request body

primary_asset_idstring required

Asset ID (with asset_ prefix) to pin as the stack's cover. Must be a live, current member of this stack — get member IDs from list_assets with stack_id.

Response

Successful Response

idstring required

Unique stack identifier with 'asset_stack_' prefix

primary_asset_idstring nullable

ID of the asset the user pinned as the stack's cover, or null if none is pinned. Null for an auto-detected burst unless a user has since pinned a cover — there is no server-selected default, so a client showing a stack with no pinned cover picks its own. A pinned cover that has been trashed keeps its ID here; it is cleared only once the asset is permanently deleted.

asset_countinteger required

Number of live assets in this stack. Excludes trashed members, so it can drop below the number of frames originally grouped.

origin'auto_burst' | 'user' required

How a stack came to exist.

auto_burst marks a stack the burst detector created from the time + EXIF-camera signal; user marks a stack a user created or edited (manual create, set-cover, add/remove, unstack). The distinction is what keeps re-detection from stomping a user's correction — the detection pass skips user stacks.

created_atstring date-time required

When this stack was created

updated_atstring date-time required

When this stack was last updated