Looking to upload an image versions to an asset in shotgrid using REST api

I have followed the below steps for uploading an image thumbnail to an asset and it works well.

  1. GET https://domain/api/v1/entity/assets/ASSET_ID/image/_upload?filename=test3.png

  2. PUT link from upload links section of output from 1.
    headers: filename image_name.png
    Content-Type image/png
    Body:
    binary: upload image

  3. GET https://domain/api/v1/entity/CustomNonProjectEntity01/ASSET_ID

  4. POST https://domain/api/v1/entity/assets/ASSET_ID/image/_upload

Body: raw:
{
“upload_info”: {“timestamp”: “2023-10-14T16:29:44Z”,
“upload_type”: “Thumbnail”,
“upload_id”: “REPLACE_ID WE GOT FROM STEP 3”,
“storage_service”: “s3”,
“original_filename”: “image_name.png”,
“multipart_upload”: false
},
“upload_data”: {}
}

But I’m unable to figure out how to upload image versions of an asset. I would like to use description, Artist, Task information for uploading. Also storage service looks like S3. Thank you in advance.