A2E
  1. Miscellaneous
A2E
  • AI Avatar API
  • Get Tokens
    • Getting API Tokens (2025 version)
  • TTS and Voice Clone
    • List Public TTS Options
      POST
    • List Public TTS Options
      GET
    • List Voice Clone Options
      GET
    • Train TTS Model of The User's Voice (Voice Clone)
      POST
    • List Ongoing Voice Clone Tasks
      GET
    • Generate TTS Audio (Text-to-Speech)
      POST
    • Get Details of a Voice
      GET
    • Delete a User Voice
      DELETE
  • Generate Avatar Videos
    • Generate AI Avatar Videos
      POST
    • List of Result Videos
      POST
    • List of Result Videos
      GET
    • List One or All Avatars
      POST
    • List One or All Avatars
      GET
    • Obtain the Status of One Avatar Video Task
      POST
    • Obtain the List of Personalized Lip-Sync Models
      GET
    • Delete or Cancel a Video
      DELETE
    • Auto Language Detect
      POST
    • Auto Swith to Public Computing Pool
      POST
  • Create Avatars and Train Lip-sync Models
    • Create A Custom Avatar by a Video or an Image
    • Train a Personalized Lip-sync Model (Optional) a.k.a. Continue Training 💠
    • Remove A Customized Avatar
    • Get Status of All Tasks
    • Get All Ongoing "Training" Tasks
    • Status of One Task
    • Clone Voice from a Video
  • Background Matting and Replacement
    • Obtain the List of Background Images
    • Add Custom Background Image
    • Delete Custom Image
  • Face Swap
    • Manage Face Swap Resource
      • Add Face Swap Image
      • Get Records of Face Swap Images
      • Delete User Face Swap Image
    • Quickly Preview Face Swap
      • Add User Face Swap Preview
      • Get Status of Face Swap Preview Process
    • Start and Manage Face Swap Tasks
      • Start a Face Swap Task
      • Get Status of Face Swap Task
      • Get Face Swap Task Records
      • Get Details of Face Swap
      • Delete Record
  • AI Dubbing
    • Start dubbing
    • List Dubbing Tasks
    • List All Processing Dubbing Tasks
    • Get Details
    • Delete Record
  • Image to Video
    • Start Image-to-Video
    • Check Status of One Task
    • List Status of All Tasks
    • Delete Record
  • Caption Removal
    • Start Caption Removal
    • Get Records of All Tasks
    • Get Status of All Tasks in Processing
    • Get Details of One Task
    • Delete a Task
  • Streaming Avatar
    • Get All avatars
    • Get a Streaming Avatar Token
    • Set QA Context
    • Get QA Context
    • Ask a Question to the Avatar
    • Let the Avatar Speak Directly
    • Leave the Room
  • Miscellaneous
    • Add a User
      POST
    • Get User Remaining Credits
      GET
    • Exchange Diamonds
      POST
    • List Available Languages
      POST
    • Save URL to A2E's storage
      POST
    • Add Watermark to Video or Image
      POST
  • Text to Image
    • Start Text-to-Image
    • List Tasks of Text-to-Image Tasks
    • Get Details of One Task
    • Delete Record
    • Quick Add Avarar
  • AI Outfit and Product Holding
    • Start AI Outfit or Product Holding
    • List Tasks of AI Outfit or Product Holding Tasks
    • Get Details of One Task
    • Delete Record
  • Talking Photo
    • Start a Task
    • List Tasks
    • Get Task Detail
    • Delete Task
  1. Miscellaneous

Add Watermark to Video or Image

Global Server
https://video.a2e.ai
Global Server
https://video.a2e.ai
POST
/api/v1/watermark/start

Request

Authorization
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
Body Params application/json
media_url
string 
required
URL of the source media file (image or video) to apply watermark to
watermark_type
enum<string> 
required
Type of watermark to apply - either "image" for image watermark or "text" for text watermark
Allowed values:
textimage
text
string 
optional
Text content for the watermark (required when watermark_type is "text")
watermark_image_url
string 
optional
URL of the watermark image file (required when watermark_type is "image")
fontsize
integer 
optional
Font size for text watermark in pixels (optional, applies to text watermarks only)
fontcolor
array[integer]
optional
RGB color array for text watermark font (e.g., [255, 255, 255] for white, applies to text watermarks only)
position
string 
optional
Position of the watermark on the media - top_left, top_right, bottom_left, bottom_right, or center (optional, defaults to system setting)
scale_ratio
integer 
optional
Scale ratio for the watermark size relative to the original media (e.g., 0.1 for 10% of original size, optional)
to_720p
boolean 
optional
Whether to convert the output media to 720p resolution (optional, defaults to false)
Example
{
    "media_url": "https://example.com/adam2eve/stable/users/67c92cef3a40fdce8b119f26/video_result/6882f6eaa16849003b12c5e4/Untitled%20Video.mp4",
    "watermark_type": "text",
    "text":"Generated by AI",
    "fontsize": 48,
    "fontcolor": [
        255,
        255,
        255,
        200
    ],
    "position": "bottom_right",
    "scale_ratio": 1,
    "to_720p": false
}

Request samples

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request POST 'https://video.a2e.ai/api/v1/watermark/start' \
--header 'Content-Type: application/json' \
--data-raw '{
    "media_url": "https://example.com/adam2eve/stable/users/67c92cef3a40fdce8b119f26/video_result/6882f6eaa16849003b12c5e4/Untitled%20Video.mp4",
    "watermark_type": "text",
    "text":"Generated by AI",
    "fontsize": 48,
    "fontcolor": [
        255,
        255,
        255,
        200
    ],
    "position": "bottom_right",
    "scale_ratio": 1,
    "to_720p": false
}'

Responses

🟢200Success
application/json
Body
code
integer 
required
0 is OK
data
object 
required
result_url
string 
required
The result of the watermark task
Example
{
    "code": 0,
    "data": {
        "_id": "688307d024c132003c37365d",
        "request_id": "watermark_56097a14-05fe-4072-adc9-982566b20de1",
        "media_url": "https://example.com/adam2eve/stable/users/67c92cef3a40fdce8b119f26/video_result/6882f6eaa16849003b12c5e4/Untitled%20Video.mp4",
        "watermark_type": "text",
        "text": "Generated by AI",
        "fontsize": 48,
        "fontcolor": [
            255,
            255,
            255,
            200
        ],
        "position": "bottom_right",
        "scale_ratio": 1,
        "to_720p": false,
        "result_url": "https://1day-jumpy.tos-cn-beijing.volces.com/video_text_watermarked/watermark_56097a14-05fe-4072-adc9-982566b20de1.mp4",
        "current_status": "completed",
        "coins": 1,
        "failed_message": "",
        "failed_code": "",
        "createdAt": "2025-07-25T04:28:00.171Z"
    },
    "trace_id": "89cea870-336d-4568-97a9-dfb0087426fe"
}
Modified at 2025-07-25 09:38:50
Previous
Save URL to A2E's storage
Next
Start Text-to-Image
Built with