Replace image or image metadata
Replace an existing image and, optionally, its metadata.
This endpoint replaces the existing image with the new PNG, JPEG, or WebP. Omit the metadata form section to keep existing metadata. Duplicate images, and requests larger than 16MB will be rejected.
PUT
/accounts/{accountID}/images/{imageID}
curl -X PUT "https://api.moov.io/accounts/{accountID}/images/{imageID}" \
-H "Authorization: Bearer {token}" \
--data '{
"image": "00010101011111001111000101010",
"metadata": {
"altText": "Red soy milk carton by Fancy Brand"
}
}'\
using Moov.Sdk;
using Moov.Sdk.Models.Components;
var sdk = new MoovClient(xMoovVersion: "<value>");
var res = await sdk.Images.UpdateAsync(
accountID: "310f4f19-45cf-4429-9aae-8e93827ecb0d",
imageID: "8ef109f8-5a61-4355-b2e4-b8ac2f6f6f47",
body: new ImageUploadRequestMultiPart() {
Image = new Image() {
FileName = "example.file",
Content = System.IO.File.ReadAllBytes("example.file"),
},
}
);
// handle responsepackage hello.world;
import io.moov.sdk.Moov;
import io.moov.sdk.models.components.*;
import io.moov.sdk.models.errors.GenericError;
import io.moov.sdk.models.errors.ImageRequestValidationError;
import io.moov.sdk.models.operations.UpdateImageResponse;
import io.moov.sdk.utils.Utils;
import java.io.FileInputStream;
import java.lang.Exception;
public class Application {
public static void main(String[] args) throws GenericError, ImageRequestValidationError, Exception {
Moov sdk = Moov.builder()
.xMoovVersion("v2024.01.00")
.security(Security.builder()
.username("")
.password("")
.build())
.build();
UpdateImageResponse res = sdk.images().update()
.accountID("310f4f19-45cf-4429-9aae-8e93827ecb0d")
.imageID("8ef109f8-5a61-4355-b2e4-b8ac2f6f6f47")
.imageUploadRequestMultiPart(ImageUploadRequestMultiPart.builder()
.image(Image.builder()
.fileName("example.file")
.content(Utils.readBytesAndClose(new FileInputStream("example.file")))
.build())
.build())
.call();
}
}require 'moov_ruby'
Models = ::Moov::Models
s = ::Moov::Client.new(
x_moov_version: 'v2024.01.00',
)
res = s.images.update(account_id: '310f4f19-45cf-4429-9aae-8e93827ecb0d', image_id: '8ef109f8-5a61-4355-b2e4-b8ac2f6f6f47', image_upload_request_multi_part: Models::Components::ImageUploadRequestMultiPart.new(
image: Models::Components::Image.new(
file_name: 'example.file',
content: File.binread("example.file"),
),
))
unless res.image_metadata.nil?
# handle response
endimport { Moov } from "@moovio/sdk";
import { openAsBlob } from "node:fs";
const moov = new Moov({
xMoovVersion: "v2024.01.00",
security: {
username: "",
password: "",
},
});
async function run() {
const result = await moov.images.update({
accountID: "310f4f19-45cf-4429-9aae-8e93827ecb0d",
imageID: "8ef109f8-5a61-4355-b2e4-b8ac2f6f6f47",
imageUploadRequestMultiPart: {
image: await openAsBlob("example.file"),
},
});
console.log(result);
}
run();declare(strict_types=1);
require 'vendor/autoload.php';
use Moov\MoovPhp;
use Moov\MoovPhp\Models\Components;
$sdk = MoovPhp\Moov::builder()
->setXMoovVersion('v2024.01.00')
->setSecurity(
new Components\Security(
username: '',
password: '',
)
)
->build();
$imageUploadRequestMultiPart = new Components\ImageUploadRequestMultiPart(
image: new Components\Image(
fileName: 'example.file',
content: file_get_contents('example.file');,
),
);
$response = $sdk->images->update(
accountID: '310f4f19-45cf-4429-9aae-8e93827ecb0d',
imageID: '8ef109f8-5a61-4355-b2e4-b8ac2f6f6f47',
imageUploadRequestMultiPart: $imageUploadRequestMultiPart
);
if ($response->imageMetadata !== null) {
// handle response
}from moovio_sdk import Moov
from moovio_sdk.models import components
with Moov(
x_moov_version="v2024.01.00",
security=components.Security(
username="",
password="",
),
) as moov:
res = moov.images.update(account_id="310f4f19-45cf-4429-9aae-8e93827ecb0d", image_id="8ef109f8-5a61-4355-b2e4-b8ac2f6f6f47", image={
"file_name": "example.file",
"content": open("example.file", "rb"),
})
# Handle response
print(res)The request completed successfully.
Metadata about an uploaded image.
{
"imageID": "string",
"publicID": "string",
"altText": "string",
"link": "https://api.moov.io/images/qJRAaAwwF5hmfeAFdHjIb",
"createdOn": "2019-08-24T14:15:22Z",
"updatedOn": "2019-08-24T14:15:22Z",
"disabledOn": "2019-08-24T14:15:22Z"
}Response headers
x-request-id
string
required
A unique identifier used to trace requests.
The server could not understand the request due to invalid syntax.
{
"error": "string"
}Response headers
x-request-id
string
required
A unique identifier used to trace requests.
The request contained missing or expired authentication.
Response headers
x-request-id
string
required
A unique identifier used to trace requests.
The user is not authorized to make the request.
Response headers
x-request-id
string
required
A unique identifier used to trace requests.
The requested resource was not found.
Response headers
x-request-id
string
required
A unique identifier used to trace requests.
The request conflicted with the current state of the target resource.
{
"error": "string"
}Response headers
x-request-id
string
required
A unique identifier used to trace requests.
The request was well-formed, but the contents failed validation. Check the request for missing or invalid fields.
{
"image": "string",
"metadata": {
"altText": "string"
}
}Response headers
x-request-id
string
required
A unique identifier used to trace requests.
Request was refused due to rate limiting.
Response headers
x-request-id
string
required
A unique identifier used to trace requests.
The request failed due to an unexpected error.
Response headers
x-request-id
string
required
A unique identifier used to trace requests.
The request failed because a downstream service failed to respond.
Response headers
x-request-id
string
required
A unique identifier used to trace requests.
Headers
X-Moov-Version
string
Specify an API version.
API versioning follows the format vYYYY.QQ.BB, where
YYYYis the yearQQis the two-digit month for the first month of the quarter (e.g., 01, 04, 07, 10)BBis the build number, starting at.01, for subsequent builds in the same quarter.- For example,
v2024.01.00is the initial release of the first quarter of 2024.
- For example,
The latest version represents the most recent development state. It may include breaking changes and should be treated as a beta release.
When no version is specified, the API defaults to v2024.01.00.
Path parameters
accountID
string
required
imageID
string
required
Body
multipart/form-data
image
string<binary>
required
A PNG, JPEG, or WebP image file to upload.
metadata
object
Optional, json-encoded metadata to associate with the uploaded image.
Request body for creating or updating image metadata.
Show child attributes
altText
string
<=125 characters
Alternative text for the image.
Response
createdOn
string<date-time>
required
imageID
string
required
Unique identifier for a image resource.
link
string<uri>
required
A public URL to access the image. An optional
size={width}x{height}
query parameter can be provided to resize the image.
publicID
string
required
The ID used to get an image with the public endpoint.
A unique identifier for an image, used in public image links.
updatedOn
string<date-time>
required
altText
string
<=125 characters
Alternative text for the image.
disabledOn
string<date-time>