Render key stills from a shot plan
soclo_image_framesRender the key stills a compatible shot plan already calls for: pass planId and the frames contract EXACTLY as the plan returned it (frameContractVersion, expectedFree, expectedCredits, pricingVersion) — Soclo refuses anything that does not match its own quote, so read the quote and never assume the price. Returns the finished frame images with their purposes. Frame URLs are SIGNED and expire in a few minutes: download or use them immediately rather than saving the links for later. The engine writes and renders the shots; do not ask for a camera by name. Retry safety: this requires a persisted clientRequestId — reuse the same one only for an identical retry, and read soclo_image_frames_result with the original clientRequestId after an interruption. Use this only if an existing compatible Soclo shot plan already supplied its planId and complete frames quote; do not substitute a host projectId or invent the contract.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| planId | Yes | Required for frames: from an existing compatible Soclo shot plan with a complete frames quote, not a soclo_host_plan projectId. | |
| expectedFree | Yes | Required for frames: from the plan’s frames quote — read it, never assume. | |
| pricingVersion | Yes | From the authenticated native quote for this picture or enhancement; frames uses its own quote. | |
| clientRequestId | Yes | Required before generate: one stable UUID per picture purchase. Required before frames; recover and frames_result read the original UUID without a new render. Never retry an unknown outcome automatically or mint a replacement ID to bypass a duplicate refusal. | |
| expectedCredits | Yes | Required: use the exact authenticated native quote, including zero only when quoted for the owner-exempt account. Frames uses its own existing quote. | |
| frameContractVersion | Yes | Required for frames: from the plan’s frames quote. |