Injecting Invisible Watermarks into Images (Image Addresses)
Function
This API is used to inject invisible text watermarks or invisible image watermarks into an image whose storage address is specified (only a Huawei Cloudcloud service OBS path is supported). DSC returns the injected watermark in a specified storage location (an OBS path). The supported image formats include .jpg, .jpeg, .jpe, .png, .bmp, .dib, .rle, .tiff, .tif, .ppm, .webp, .tga, .tpic, and .gif.
URI
POST /v1/{project_id}/image-address/watermark/embed
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
project_id |
Yes |
String |
Project ID. |
Request Parameters
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
X-Auth-Token |
Yes |
String |
User token. It can be obtained by calling the IAM API used to obtain a user token. The value of X-Subject-Token in the response header is a token. |
|
Parameter |
Mandatory |
Type |
Description |
|---|---|---|---|
|
region_id |
Yes |
String |
ID of the region where the current project is located, for example, xx-xx-1. |
|
src_file |
Yes |
String |
Address of the image to be watermarked. Currently, only Huawei Cloudcloud service OBS files are supported. The format is obs://bucket/object, where bucket indicates the name of the OBS bucket in the same region as the current project, and object indicates the full path name of the object. For example, obs://hwbucket/hwinfo/hw.png. |
|
blind_watermark |
No |
String |
Content of the invisible text watermark, which cannot exceed 32 characters. Currently, only digits and uppercase and lowercase letters are supported. Either this parameter or image_watermark must be set. |
|
image_watermark |
No |
String |
Address of the invisible image watermark. Its format requirements are the same as those of src_file. Either image_watermark or blind_watermark must be set. If both are set, only image_watermark takes effect. |
|
dst_file |
No |
String |
Storage address of the watermarked image. The format and requirements are the same as those of the src_file field. If this field is not set, the value of src_file is used by default, that is, the original file is overwritten after the watermark is added. |
Response Parameters
Status code: 200
|
Parameter |
Type |
Description |
|---|---|---|
|
region_id |
String |
ID of the region where the current project is located, for example, xx-xx-1. |
|
watermarked_file |
String |
Address of the watermarked image on OBS. Currently, only Huawei Cloudcloud service OBS files are supported. The format is obs://bucket/object, where bucket indicates the name of the OBS bucket in the same region as the current project, and object indicates the full path name of the object. For example, obs://hwbucket/hwinfo/hw.png. |
Status code: 400
|
Parameter |
Type |
Description |
|---|---|---|
|
error_code |
String |
Error Code |
|
error_msg |
String |
Error Message |
Example Requests
Embed the invisible watermark "testWaterMark" into the image at obs://hwbucket/test.png in the xx-xx-1 region.
POST /v1/{project_id}/image-address/watermark/embed HTTP/1.1
{
"region_id" : "xx-xx-1",
"src_file" : "obs://hwbucket/test.png",
"blind_watermark" : "testWaterMark"
}
Example Responses
Status code: 200
Request succeeded.
{
"region_id" : "xx-xx-1",
"watermarked_file" : "obs://hwbucket/test.png"
}
Status code: 400
Invalid request
{
"error_code" : "DSC.00000007",
"error_msg" : "File format error"
}
Status Codes
|
Status Code |
Description |
|---|---|
|
200 |
Request succeeded. |
|
400 |
Invalid request |
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.