How to update product images by REST Web API Magento 2?

You can upload product images by REST API Magento with the PUT action and the help of /V1/products/<sku>.

Action: PUT

URL: <BASE_URL>/rest/V1/products/<SKU>
(Example URL: https://magento.test/rest/V1/products/my-sku)

Header: Authorization: Bearer <ADMIN TOKEN>

Payload Body:

{
    "product": {
        "media_gallery_entries": [
            {
                "media_type": "image",
                "label": "Image Label",
                "position": 0,
                "disabled": 0,
                "types": [
                   "image",
                   "small_image",
                   "thumbnail",
                   "media_gallery"
                ],
                "file": "rbj1.jpeg",
                "content": {
                    "base64_encoded_data": "<base64_encoded_string>",
                    "type": "image/jpeg",
                    "name": "rbj1.jpeg"
                 }
            },
            {
                "media_type": "image",
                "label": "Image Label 2",
                "position": 0,
                "disabled": 0,
                "types": [
                   "media_gallery"
                ],
                "file": "rbj2.jpeg",
                "content": {
                    "base64_encoded_data": "<base64_encoded_string>",
                    "type": "image/jpeg",
                    "name": "rbj2.jpeg"
                }
            }
        ]
    }
}

In Body Payload,, You need to replace <base64_encoded_string> string with a real image base64 encoded string value.

types field used to display image types like thumbnail, small_image, image, or media_gallery.
You can add an ‘id'(“id”: 120) field in the payload if you want to replace already existing images in the product

A Response will be product data that contains media images.

While you check the product in the backend, you will able to see your images uploaded to the product.