> ## Documentation Index
> This page is part of the MediaFlows product. Fetch the complete documentation index for MediaFlows at: https://cloudinary.com/documentation/llms-mediaflows.txt?referrer=docpage and then use it to discover all relevant pages before exploring further.
> If your task extends beyond this product, fetch the top-level index covering all Cloudinary products and topics at: https://cloudinary.com/documentation/llms.txt?referrer=docpage

# Cloudinary MediaFlows Release Notes: September 29, 2026

## New features

### Pick a fixed asset without wiring up a variable

Blocks that act on an asset now let you choose a **Static Asset**: pick the exact image or video from your Media Library and the block uses it every run. Previously a fixed asset meant typing its public ID and delivery details by hand. Use the mode menu beside the **Use the asset from** field to pick how the asset is supplied.

![The Use the asset from field with the mode menu open, showing Dynamic Asset, Static Asset, and Advanced / Custom](https://cloudinary-res.cloudinary.com/image/upload/bo_1px_solid_gray/f_auto/q_auto/v1790080958/docs/mediaflows/use-asset-from.png "thumb:c_scale,w_400,dpr_2.0, width: 400")

[Learn about selecting an asset](mediaflows_build_flow#selecting_an_asset)

### Send your own data to another flow

Pass values such as an order ID or a status from one flow to another, not just an asset. In the **Trigger Another Flow** block, add the data as key-value pairs, or turn on **Advanced** to enter a JSON object. In the triggered flow, list the keys you want in the **Custom data keys** field of the **On Trigger From Another Flow** block, and use them in later blocks like any other value.

[Learn about the Trigger Another Flow block](mediaflows_block_reference#trigger_another_flow)

### Name and badge your blocks so a flow reads at a glance

You can now give a block your own icon as well as your own name, so a flow with several similar blocks is readable without opening each one. Rename a block from its configuration sidebar, and use **Change icon** to pick any image from your Media Library. The sidebar keeps showing the block's original name, so you can always tell which block it is.

![Renaming a block and changing its icon in the configuration sidebar](https://cloudinary-res.cloudinary.com/image/upload/bo_1px_solid_gray/f_auto/q_auto/v1790081813/docs/mediaflows/change-icon-in-config.png "thumb:c_scale,w_400,dpr_2.0, width: 400")

The name and icon you choose are shown on the canvas:

![A block on the canvas with a custom name and icon](https://cloudinary-res.cloudinary.com/image/upload/bo_1px_solid_gray/f_auto/q_auto/v1790081813/docs/mediaflows/icon-changed-in-canvas.png "thumb:c_scale,w_300,dpr_2.0, width: 300")

[Learn about configuring a block](mediaflows_build_flow#configuring_a_block)

## Enhancements

### A redesigned home page that gets you to your first flow faster

The MediaFlows home page now shows what you can automate and the quickest ways to get started. Describe what should happen to your media in the prompt box, and the Workflow Agent creates the flow for you, or click an example prompt to start from one. Below it, a selection of ready-made templates shows off common use cases.

Clicking a template now opens its details before anything is added to the canvas: what it does and how it works, what you need to set up, such as connections or add-ons, and a preview of its blocks. Click **Use Template** when you're ready.

To create a flow from scratch, use **New Flow** at the top of any MediaFlows page.

![The new MediaFlows home page](https://cloudinary-res.cloudinary.com/image/upload/bo_1px_solid_gray/f_auto/q_auto/docs/mediaflows/create-a-new-powerflow-homepage.png "thumb:c_scale,w_800,dpr_2.0, width: 800")

[Learn about creating a flow](mediaflows_user_guide#create_a_new_flow)

### A clearer flow canvas

See at a glance what a flow does and where it branches, even one with error paths and parallel steps running down the page. The redesigned canvas we announced is here:

* **Structured layout**: Blocks are arranged automatically in a top-down flow, so the order of execution is clear and you no longer position blocks yourself.
* **A clearer starting point**: The trigger block is larger than the rest and labeled **Flow starts**, marking where the flow begins.
* **A clean start for new flows**: A new PowerFlow opens on an empty canvas, where you click **Add a trigger** to choose what starts it. **Save**, **Test**, and **Enable Flow** stay disabled until the flow has a trigger, and you can now delete a trigger block that isn't connected to anything yet.
* **Easier editing on the canvas**: Add a block from the **+** on a block's output, hover a connector and click **Insert Block** to drop one in between, or click **Delete Connection** to disconnect two blocks.
* **Problems that are easier to spot**: Blocks that still need configuring and inputs that aren't connected are highlighted, and a new minimap shows you where they are in a large flow. If a branch becomes disconnected, a message tells you where it went.
* **Clearer branching**: Condition outputs are labeled **Yes** and **No**, error paths are labeled **If it fails**, and parallel paths are marked, so you can read what a flow does without tracing the lines.

![A PowerFlow on the redesigned canvas, laid out top to bottom with labeled branches](https://cloudinary-res.cloudinary.com/image/upload/bo_1px_solid_gray/f_auto/q_auto/v1790082165/docs/mediaflows/new-structured-canvas.png "thumb:c_scale,w_700,dpr_2.0, width: 700")

[Learn about the canvas](mediaflows_build_flow#the_canvas)

### Clearer block names and categories

Block names now say what the block does, so you can tell them apart at a glance and pick the right one without opening each. For example, **Edit Media** is now **Apply Custom Transformation**, and **Optimize Media** is now **Change Format And Quality**.

Blocks are also grouped into more categories in the **Add a block** dialog, so there's less to scan through when you're looking for one. The **Integrations** category has been divided into **Commerce**, **Product Information**, **Marketing And Productivity**, and **Storage And Transfer**, and the blocks that create media are now separated from the ones that analyze it, in **Media Generation**, **Media Analysis**, and **AI Media Enrichment**.

Your existing flows keep working, and the blocks in them keep the names you gave them. Searching for a block by its old name still finds it.

See a mapping of all the block renames...

{table:class=mf-rename-table} Previous name | New name | Category |
|-------|------|------|
| On Manual Run From Assets | [On Manual Run From Media Library](mediaflows_block_reference#on_manual_run_from_media_library) | Triggers |
| Condition | [Branch On Condition](mediaflows_block_reference#branch_on_condition) | Flow Logic |
| Iterate Assets | [Repeat For Each Asset](mediaflows_block_reference#repeat_for_each_asset) | Flow Logic |
| Iterate List | [Repeat For Each Item In List](mediaflows_block_reference#repeat_for_each_item_in_list) | Flow Logic |
| Universal API | [Call Any Cloudinary API Method](mediaflows_block_reference#call_any_cloudinary_api_method) | Media Management |
| Account Usage | [Check Account Usage](mediaflows_block_reference#check_account_usage) | Media Management |
| Delete Media | [Delete Asset](mediaflows_block_reference#delete_asset) | Media Management |
| Duplicate Media | [Duplicate Asset](mediaflows_block_reference#duplicate_asset) | Media Management |
| Apply Actions | [Prepare Or Update Asset](mediaflows_block_reference#prepare_or_update_asset) | Media Management |
| Change Public ID | [Rename Asset](mediaflows_block_reference#rename_asset) | Media Management |
| Search Media | [Search Assets](mediaflows_block_reference#search_assets) | Media Management |
| Manual Moderation | [Send For Manual Review](mediaflows_block_reference#send_for_manual_review) | Media Management |
| Upload From HTTP | [Upload Asset From HTTP Response](mediaflows_block_reference#upload_asset_from_http_response) | Media Management |
| Upload Media | [Upload Asset From URL](mediaflows_block_reference#upload_asset_from_url) | Media Management |
| Image Quality Analysis | [Analyze Image Quality](mediaflows_block_reference#analyze_image_quality) | Media Analysis |
| AI Vision Analyze By Prompt | [Ask AI About Image](mediaflows_block_reference#ask_ai_about_image) | Media Analysis |
| Gemini Analyze Image By Prompt | [Ask AI About Image Using Gemini](mediaflows_block_reference#ask_ai_about_image_using_gemini) | Media Analysis |
| OpenAI Analyze Image By Prompt | [Ask AI About Image Using OpenAI](mediaflows_block_reference#ask_ai_about_image_using_openai) | Media Analysis |
| Duplicate Image Detection | [Find Duplicate Images](mediaflows_block_reference#find_duplicate_images) | Media Analysis |
| Amazon Image Moderation | [Moderate Image Using Amazon Rekognition](mediaflows_block_reference#moderate_image_using_amazon_rekognition) | Media Analysis |
| AI Vision Moderate By Prompts | [Moderate Image Using Custom Rules](mediaflows_block_reference#moderate_image_using_custom_rules) | Media Analysis |
| Cloudinary Image Captioning | [Generate Image Caption](mediaflows_block_reference#generate_image_caption) | AI Media Enrichment |
| AI Content Analysis Set Tags | [Tag Image Using AI Analysis](mediaflows_block_reference#tag_image_using_ai_analysis) | AI Media Enrichment |
| AI Vision Tag By Prompts | [Tag Image Using Custom Rules](mediaflows_block_reference#tag_image_using_custom_rules) | AI Media Enrichment |
| Google Image Tagging | [Tag Image Using Google AI](mediaflows_block_reference#tag_image_using_google_ai) | AI Media Enrichment |
| Google Video Tagging | [Tag Video Using Google AI](mediaflows_block_reference#tag_video_using_google_ai) | AI Media Enrichment |
| Generate An Image From A Reference | [Generate Image From Reference Image](mediaflows_block_reference#generate_image_from_reference_image) | Media Generation |
| Generate An Image From Text | [Generate Image From Text](mediaflows_block_reference#generate_image_from_text) | Media Generation |
| Gemini Generate Image And Cloudinary Upload | [Generate Image Using Gemini](mediaflows_block_reference#generate_image_using_gemini) | Media Generation |
| OpenAI Generate Image And Cloudinary Upload | [Generate Image Using OpenAI](mediaflows_block_reference#generate_image_using_openai) | Media Generation |
| Image to Video | [Generate Video From Image](mediaflows_block_reference#generate_video_from_image) | Media Generation |
| Fal AI Virtual Photoshoot | [Generate Virtual Photoshoot Using Fal AI](mediaflows_block_reference#generate_virtual_photoshoot_using_fal_ai) | Media Generation |
| Fal AI Virtual Try On | [Generate Virtual Try On Using Fal AI](mediaflows_block_reference#generate_virtual_try_on_using_fal_ai) | Media Generation |
| Apply Background | [Add Background Color Or Image](mediaflows_block_reference#add_background_color_or_image) | Media Editing |
| Drop Shadow | [Add Drop Shadow](mediaflows_block_reference#add_drop_shadow) | Media Editing |
| Image Overlay | [Add Image Overlay](mediaflows_block_reference#add_image_overlay) | Media Editing |
| Text Overlay | [Add Text Overlay](mediaflows_block_reference#add_text_overlay) | Media Editing |
| Edit Media | [Apply Custom Transformation](mediaflows_block_reference#apply_custom_transformation) | Media Editing |
| Optimize Media | [Change Format And Quality](mediaflows_block_reference#change_format_and_quality) | Media Editing |
| Crop Media | [Crop Image Or Video](mediaflows_block_reference#crop_image_or_video) | Media Editing |
| Generative Extend | [Extend Image Using Generative AI](mediaflows_block_reference#extend_image_using_generative_ai) | Media Editing |
| Improve Image | [Improve Image Brightness And Color](mediaflows_block_reference#improve_image_brightness_and_color) | Media Editing |
| Dolby IO | [Improve Media Quality Using Dolby](mediaflows_block_reference#improve_media_quality_using_dolby) | Media Editing |
| Generative Recolor | [Recolor Object Using Generative AI](mediaflows_block_reference#recolor_object_using_generative_ai) | Media Editing |
| Background Removal | [Remove Image Background](mediaflows_block_reference#remove_image_background) | Media Editing |
| Resize Media | [Resize Image Or Video](mediaflows_block_reference#resize_image_or_video) | Media Editing |
| Export Video Transcription | [Export Video Transcript](mediaflows_block_reference#export_video_transcript) | Video AI |
| Video Chaptering | [Generate Video Chapters](mediaflows_block_reference#generate_video_chapters) | Video AI |
| Video Transcription | [Generate Video Transcript](mediaflows_block_reference#generate_video_transcript) | Video AI |
| Stibo STEP PIM add an asset (Beta) | [Add Asset To Stibo STEP](mediaflows_block_reference#add_asset_to_stibo_step) | Product Information |
| InRiver Add Media From URL | [Add Media To InRiver From URL](mediaflows_block_reference#add_media_to_inriver_from_url) | Product Information |
| Create An Asset In Akeneo | [Create Asset In Akeneo](mediaflows_block_reference#create_asset_in_akeneo) | Product Information |
| Delete An Asset In Akeneo | [Delete Asset In Akeneo](mediaflows_block_reference#delete_asset_in_akeneo) | Product Information |
| InRiver Delete Entity By ID | [Delete Entity In InRiver](mediaflows_block_reference#delete_entity_in_inriver) | Product Information |
| Marketo Create A File | [Create File In Marketo](mediaflows_block_reference#create_file_in_marketo) | Marketing And Productivity |
| Delete An Asset From Mailchimp | [Delete Asset From Mailchimp](mediaflows_block_reference#delete_asset_from_mailchimp) | Marketing And Productivity |
| Monday Change Column Value | [Update Column In Monday](mediaflows_block_reference#update_column_in_monday) | Marketing And Productivity |
| Upload An Asset To Mailchimp | [Upload Asset To Mailchimp](mediaflows_block_reference#upload_asset_to_mailchimp) | Marketing And Productivity |
| Upload To FTP~SFTP | [Upload Asset To FTP Or SFTP](mediaflows_block_reference#upload_asset_to_ftp_or_sftp) | Storage And Transfer |
| Upload To AWS S3 | [Upload To Amazon S3](mediaflows_block_reference#upload_to_amazon_s3) | Storage And Transfer |
| Scheduled Email Report | [Schedule Email Report](mediaflows_block_reference#schedule_email_report) | Notifications |
| Notification | [Send MediaFlows Notification](mediaflows_block_reference#send_mediaflows_notification) | Notifications |
| JSON To Array | [Convert JSON Object To Array](mediaflows_block_reference#convert_json_object_to_array) | Developer Tools |
| Delay | [Delay Flow](mediaflows_block_reference#delay_flow) | Developer Tools |
| JSONPath Query | [Extract JSON Values Using JSONPath](mediaflows_block_reference#extract_json_values_using_jsonpath) | Developer Tools |
| Search And Replace | [Replace Text In String](mediaflows_block_reference#replace_text_in_string) | Developer Tools |
| JQ Processor | [Transform JSON Using JQ](mediaflows_block_reference#transform_json_using_jq) | Developer Tools |
| Google Translate | [Translate Text Using Google](mediaflows_block_reference#translate_text_using_google) | Developer Tools |

[Explore the PowerFlow block reference](mediaflows_block_reference)

### See what each block passed on in the logs

Check what a block produced without digging through its raw output. In **Live Logs**, expand a block to see an **Available to next blocks** table listing the values later blocks can use, such as the public ID, secure URL, and dimensions of an uploaded asset. Click **View JSON** for the full output, and a block that failed opens straight to its error. Each execution also shows the assets it automated, and **History Logs** is now at the top of the **Live Logs** sidebar, where you can filter past executions by date, status, or public ID.

![An expanded block in Live Logs showing the Available to next blocks table](https://cloudinary-res.cloudinary.com/image/upload/bo_1px_solid_gray/f_auto/q_auto/v1790600770/docs/mediaflows/live-logs-available.png "thumb:c_scale,w_700,dpr_2.0, width: 700")

[Learn about logs](mediaflows_build_flow#logs)

## Coming soon

### Start flows from files added to SharePoint

Bring files into Cloudinary automatically as your teams add them to SharePoint. A new trigger will watch a Microsoft SharePoint document library and run your flow for each new or updated file, passing on the file's details so later blocks can upload and process it. Your Microsoft 365 administrator grants Cloudinary read-only access to the sites you choose, and a new **Test** button in the connect dialog lets you confirm the connection works before you save it.

## Register for notifications
Make sure you always know when we publish new release notes with the **MediaFlows release notes RSS feed**: 

 Grab this [RSS link](/documentation/rss/cloudinary-mf-release-notes.xml) to watch for new MediaFlows release notes in your favorite RSS reader.