API Docs Center

Video Text Removal Create API


Last Updated: 2026-05-11

Video Text Removal

Service Overview

  • Creates a video text removal task. Submit source video and erase regions for asynchronous processing.

Service Access

The Video Text Removal API uses a console-based project access model. You can register and activate services on the ViiTor AI official website (https://www.viitor.com/), then create a project in the console to obtain required authentication credentials.

The business service endpoint is provided by the project gateway. This document uses the following gateway as an example:

https://video-translation.ilivedata.com


Integration

Parameter Specification

  • Request URL: https://video-translation.ilivedata.com/textRemoval/add
  • Method: POST
  • Content-Type: application/json
  • Response Format: {code, message, data}

HTTP Headers

HeaderRequiredTypeDescription
Content-TypeYesStringapplication/json;charset=UTF-8
AcceptYesStringapplication/json;charset=UTF-8
AuthorizationYesStringLogin token (Bearer Token)
X-User-IdYesLongUser ID. The server overrides userId in request body.
X-ChannelYesIntegerChannel code: 100=Web, 200=Android, 300=iOS
X-App-SourceNoStringSource marker, up to 20 characters

Notes:

  • The server uses X-User-Id, X-Channel, and X-App-Source from headers as the source of truth.

Request Method: POST

Request Body

Field Definitions

FieldTypeRequiredDescription
urlStringYesSource video URL (must be accessible)
taskNameStringYesTask name, truncated if longer than 50 characters
textDetectROIArray<Array>NoText detection erase regions, e.g. [[x1,y1,x2,y2], ...]
fullEraseROIArray<Array>NoFull erase regions, e.g. [[x1,y1,x2,y2], ...]

Validation Rules

  1. textDetectROI and fullEraseROI cannot both be empty.
  2. Each ROI type supports up to 5 regions.

Response Body

Standard Response Schema

FieldTypeDescription
codeInteger0 means success; non-zero means failure
messageStringResponse message
dataObjectBusiness payload

data Fields on Success

FieldTypeDescription
userIdLongUser ID
taskIdStringTask ID (used for status/result query)

Examples

cURL Request

curl -X POST "https://video-translation.ilivedata.com/textRemoval/add" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <TOKEN>" \
  -H "X-User-Id: 123456" \
  -H "X-Channel: 100" \
  -H "X-App-Source: official_web" \
  -d '{
    "url": "https://cdn.example.com/input/video.mp4",
    "taskName": "erase-subtitle-001",
    "textDetectROI": [[120, 640, 1180, 700]],
    "fullEraseROI": []
  }'

Success Response Example

{
  "code": 0,
  "message": "OK",
  "data": {
    "userId": 123456,
    "taskId": "ViiTor_AI_202605110001"
  }
}

Failure Response Example (Invalid Parameters)

{
  "code": 2001,
  "message": "Invalid Parameter",
  "data": null
}

Common Error Codes

CodeMeaningTypical Cause
2000Missing ParameterMissing required Header or Body fields
2001Invalid ParameterInvalid params (e.g., empty url/taskName, invalid channel)
10091insufficient pointsUser has insufficient points
10093task creation failedInternal task creation failure

Client Integration Recommendations

  1. Call /textRemoval/add to obtain taskId.
  2. Use taskId to poll task status endpoint.
  3. Handle all code != 0 responses uniformly, especially parameter errors and insufficient points.

© 2026 HighRas Limited