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.