# Update variant main image via api

**URL:** <https://developer-forum.veeqo.com/t/update-variant-main-image-via-api/1710>\
**Category:** API Queries (How To)\
**Created:** [August 4, 2026, 4:28pm UTC](https://developer-forum.veeqo.com/t/update-variant-main-image-via-api/1710 "2026-08-04T16:28:15Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![yoong0041](https://avatars.discourse-cdn.com/v4/letter/y/E1E7EE/32.png) [@yoong0041](https://developer-forum.veeqo.com/u/yoong0041)\
**Post date:** [August 4, 2026, 4:28pm UTC](https://developer-forum.veeqo.com/t/update-variant-main-image-via-api/1710/1 "2026-08-04T16:28:15Z")

</div>

We have over 50000 products and variants. Veeqo selected the wrong main images for our products.

Trying to update images via API and only found this [old change image thread from 2018](https://developer-forum.veeqo.com/t/assign-images-to-variants/102)

was able to retrieve sellable object

```
curl --request GET \\

```

–url[https://api.veeqo.com/sellables/xxxxxxxxx\](https://api.veeqo.com/sellables/527944259%5C)  
–header ‘accept: application/json’ \  
–header ‘x-api-key: [APIKEY]’

tried to replace/update image with a put command

json payload

```auto
{
  "product": {
    "images_attributes": [
      {
        "src": "https://sourceURL",
        "display_position": 1
      }
    ]
  }
} 

```

* * *

but received a 400 error bad request

---

<div class="post-metadata">

**Author:** ![DimuDesigns](https://avatars.discourse-cdn.com/v4/letter/d/637381/32.png) [@DimuDesigns](https://developer-forum.veeqo.com/u/DimuDesigns)\
**Post date:** [August 6, 2026, 4:24pm UTC](https://developer-forum.veeqo.com/t/update-variant-main-image-via-api/1710/2 "2026-08-06T16:24:02Z")

</div>

Try using the update product endpoint instead and see if that works:

> **[Update Product Detail](https://developers.veeqo.com/api/operations/update-product-detail/)**
