Multi-Image Element Not Updating Through API

I’m attempting to update a Multi-Image element in my Webflow CMS through the v2 API. The images are loading correctly from my source API (Vitec), but they’re not appearing in Webflow.

Here’s how I’m formatting the image data:

{
  "mainimage": {
    "fileId": "MED2E6FC3355A0540BBA365DD5B46A32ACD",
    "url": "https://connect.maklare.vitec.net/image/GetImage?customerId=M13699&imageId=MED2E6FC3355A0540BBA365DD5B46A32ACD",
    "alt": "Vardagsrum"
  },
  "moreimg": [
    {
      "fileId": "MED01AF554B7EDF49A9B876DD93E967696B",
      "url2": "https://connect.maklare.vitec.net/image/GetImage?customerId=M13699&imageId=MED01AF554B7EDF49A9B876DD93E967696B",
      "alt": "Kitchen"
    }
    // ... more images
  ]
}

I’ve tried several variations including:

  • Using numbered URLs (url1, url2, etc.)
  • Including fileId for each image
  • Structuring moreimg as both an array and as {items: }
  • Including alt text for each image

The API calls are returning 200 status codes, but the images aren’t appearing in the CMS. What’s the correct format for updating a Multi-Image element through the API?

API endpoint I’m using:
PATCH https://api.webflow.com/v2/collections/{collection_id}/items/{item_id}

Any help would be greatly appreciated!

Hi @Sauceonfires - sending you a DM to get more info… I’m not able to tap into those images, but it might be stale :eyes:

Hey @zachplata and @Sauceonfires did you end up figuring this out? I’m really struggling here. I either get a 400 error, or only my first images is taken from.

Hey @OriLiving - are you able to share your request and response here? Are you using the API Docs site API playground feature to format your request?

Same issue here in April 2025, was there ever a fix or workaround?

Still having this issue here too. Any update? Is there actual documentation from Webflow to POST multi-image fields to the CMS?

The field-type level docs for the API are here-

Multimage accepts an array of URLs. The URLs must be public for Webflow to absorb them.

"fieldData": {
  "images": [
    "https://picsum.photos/800/600",
    "https://www.gstatic.com/webp/gallery3/1.sm.png",
    "https://www.kasandbox.org/programming-images/avatars/spunky-sam.png"
  ]
}

It also supports objects, so you can use alts and replace content specifically;

"fieldData": {
  "images": [
    {
      "alt": "Serene mountain landscape with dramatic clouds at sunset",
      "url": "https://cdn.prod.website-files.com/67b584978f140ef6402c77a0/682c316848481c69d31fcc72_600.jpeg",
      "fileId": "682c316848481c69d31fcc72"
    }
  ]
}

As a tip- any time you’re uncertain, pop some data in and test the GET endpoint. You’ll see the JSON structure. 99% of the time for most RESTful APIs this will match the POST & PATCH structures.