quotecloud_replace_image
Replace or clear an imageBlock or galleryBlock cell. Upload/import the image first with quotecloud_import_document_asset or quotecloud_finalize_document_asset_upload and pass its assetId as image; null clears it. Address by blockLinkId (API Link ID, e.g. customer_logo or cover_render) or blockId. Use revisionToken from quotecloud_inspect_structure for either contentMode, or blockId + expectedRevision for fine_grained only; supply exactly one revision family. cellId is optional for a single cell. Logos: layout {fit:"contain", focalPoint:{x:0.5,y:0.5}}. Renders/photos in a gallery cell: {fit:"cover", focalPoint:{x:0.5,y:0.5}} with optional zoom (1..3). A single-image block always renders the whole image, so fit "cover" there returns a fit_not_applied warning; frame it with focalPoint + zoom. Express crop through focalPoint + zoom; omitted layout fields keep their current values. Retry-safe: an unchanged assignment returns alreadyApplied without writing. Sent documents are refused read-only. A changed write invalidates the stored PDF. Verify with quotecloud_get_block_image, then quotecloud_generate_document_pdf and quotecloud_get_page_preview.
Inputs
documentIdRequiredblockIdOptionalblockLinkIdOptionalrevisionTokenOptionalexpectedRevisionOptionalimageRequiredcellIdOptionallayoutOptionallockTokenRequired