Eranol LogoEranol
BlogCommunityDocumentationPricingSign In

General

OverviewGet Started

Universal

Add IntroAdd OutroAudio to VideoBackground AudioCaptions ApiComposeConcatConvert a video file to MP4Convert Audio to Mp3Convert Audio to wavConvert to JPGConvert to WebMConvert to WebPDenoiseEnhanceExtract audio track from a videoExtract images from a videoGenerate a GIF from a videoHighlightsImage TestMergeNotifyOverlayProgress BarReframeRemove SilenceThumbnailTikTokTrimVerifyWatermarkZoom

General

DeleteImage StatusStatusTikTok StatusFFmpeg Results

Need help?

Contact Support

Watermark

POST

Overlay a logo/watermark on a video. Scales the watermark image relative to video width and positions it at the chosen corner or center. Supports opacity control. Example: {"url": "https://cdn.example.com/video.mp4", "watermark_url": "https://cdn.example.com/logo.png", "position": "bottom_right"}

Overview

Overlay a logo/watermark on a video.

Scales the watermark image relative to video width and positions it at the chosen corner, edge-center, or center. Supports opacity control.

Example: {"url": "https://cdn.example.com/video.mp4", "watermark_url": "https://cdn.example.com/logo.png", "position": "bottom_right"}

Options

OptionTypeRequiredDefaultAllowed Values
urlstringYes—Any reachable video file URL
watermark_urlstringYes—Any reachable image URL (PNG with transparency recommended)
positionstringNotop_righttop_left, top_right, top_center, bottom_left, bottom_right, bottom_center, center
marginintNo100–500 (pixels)
opacityfloatNo1.00.0–1.0
scalefloatNo0.150.01–1.0 (fraction of video width)

Endpoint

POST https://eranol.com/api/v1/ffmpeg/video/watermark

Request Body

{
  "url": "https://cdn.example.com/video.mp4",
  "watermark_url": "https://cdn.example.com/logo.png",
  "position": "bottom_right",
  "margin": 10,
  "opacity": 0.8,
  "scale": 0.15
}

Fields

FieldTypeDefaultDescription
urlstring—Remote video file URL. Required.
watermark_urlstring—Watermark image URL. PNG with transparency recommended. Required.
positionstringtop_rightNamed position: top_left, top_right, top_center, bottom_left, bottom_right, bottom_center, center.
marginint10Margin in pixels from the video edges. Range 0–500.
opacityfloat1.0Watermark opacity. 1.0 = fully visible, 0.5 = semi-transparent, 0.0 = invisible.
scalefloat0.15Watermark width as a fraction of video width (e.g. 0.15 = 15% of video width). Range 0.01–1.0.

Position Reference

ValuePlacement
top_leftTop-left corner
top_rightTop-right corner
top_centerHorizontally centered, flush with the top edge
bottom_leftBottom-left corner
bottom_rightBottom-right corner
bottom_centerHorizontally centered, flush with the bottom edge
centerCentered in the frame

margin applies to all positions except center (which has no edge to offset from).

Response Example

{
  "job_id": "f595b9ad-1e15-4452-b7c2-8f8ff09c0a34",
  "status": "pending",
  "message": "Job created. Poll status_url for progress.",
  "job_type": "watermark",
  "result_url": "https://eranol.com/api/v1/ffmpeg/result/f595b9ad-1e15-4452-b7c2-8f8ff09c0a34",
  "status_url": "https://eranol.com/api/v1/ffmpeg/status/f595b9ad-1e15-4452-b7c2-8f8ff09c0a34"
}

Use Cases

1. Logo bottom-right, semi-transparent (default-style watermark)

Request Body

{
  "url": "https://cdn.example.com/video.mp4",
  "watermark_url": "https://cdn.example.com/logo.png",
  "position": "bottom_right",
  "margin": 10,
  "opacity": 0.8,
  "scale": 0.15
}

2. Full-opacity brand mark, top-center

Request Body

{
  "url": "https://cdn.example.com/video.mp4",
  "watermark_url": "https://cdn.example.com/logo.png",
  "position": "top_center",
  "margin": 20,
  "opacity": 1.0,
  "scale": 0.12
}

3. Small subtle mark, bottom-center

Request Body

{
  "url": "https://cdn.example.com/video.mp4",
  "watermark_url": "https://cdn.example.com/logo.png",
  "position": "bottom_center",
  "margin": 15,
  "opacity": 0.5,
  "scale": 0.08
}

4. Centered watermark (e.g. preview/draft stamp)

Request Body

{
  "url": "https://cdn.example.com/video.mp4",
  "watermark_url": "https://cdn.example.com/draft-stamp.png",
  "position": "center",
  "opacity": 0.3,
  "scale": 0.4
}

Error Codes

CodeMeaning
401Missing or invalid API key
402Insufficient credits
422Validation error — check your request body
429Rate limit exceeded — slow down requests
500Internal server error — try again or contact support