Web Moderation Task Submission
Update:
Request Specification
- Request URL:
https://msafe.ilivedata.com/api/v1/media/web/submit
- API description:
This API submits an asynchronous web media moderation task. You can submit a web page URL for the service to crawl and moderate, or submit HTML source directly for moderation. After the task is submitted successfully, the API returns a taskId. The moderation result is returned by callback, and can also be queried by taskId through the result query API.
- HTTP request Header:
Header
Example value
Required
Description
Content-Type
application/json;charset=UTF-8
Required
Request body format. This API only accepts JSON request bodies
Accept
application/json;charset=UTF-8
Optional
Expected response format. JSON is returned by default if this header is not specified
X-AppId
82100001
Required
The unique project identifier. You can get it from <Console - Service Configuration>
X-TimeStamp
2026-01-31T07:59:03Z
Required
The UTC time when the request is sent. The format is yyyy-MM-dd'T'HH:mm:ss'Z', for example: 2026-01-31T23:59:59Z
Authorization
*****
Required
Request signature. See the “Request Signature” section below
- Request method:
POST
- Request body JSON:
Parameter
Required
Type
Description
url
Conditionally required
String
The web page URL to be moderated. It must start with http:// or https://. At least one of url and html must be specified
html
Conditionally required
String
HTML source to be moderated. At least one of url and html must be specified. If this field is specified, the service parses this HTML directly and does not crawl url
baseUrl
Optional
String
Base URL used to resolve relative resource URLs in the submitted HTML. It must start with http:// or https://. Recommended when submitting html; if omitted, url is used as the base URL when available
strategyId
Required
String
Strategy ID configured in the console
callbackUrl
Optional
String
Callback URL used to receive the moderation result. If this field is specified, it takes precedence over the callback URL configured in the console
- Request body example with URL:
{
"url": "https://example.com/page.html",
"strategyId": "DEFAULT",
"callbackUrl": "https://example.com/callback"
}
- Request body example with HTML source:
{
"html": "<!doctype html><html><head><title>Test page</title></head><body><p>Text to moderate</p><img src=\"images/a.jpg\" alt=\"image text\"></body></html>",
"baseUrl": "https://example.com/page.html",
"strategyId": "DEFAULT",
"callbackUrl": "https://example.com/callback"
}
Request Signature
This API requires the Authorization signature in the request Header. For the signature calculation rule, see Request Signature.
HTTP Response
Content-Type: application/json;charset=UTF-8
The result is in JSON format. See the following example.
- Response JSON field description:
Field name
Type
Description
errorCode
Number
Error code. 0 means success
errorMessage
String
Error message
taskId
String
Unique identifier of the task
code
Number
Task status code. 2 means the task is being processed
- Response example:
{
"errorCode": 0,
"taskId": "task_**************************",
"code": 2
}
Error Code
HTTP status code
Error code
Error message
Cause
200
0
This field is omitted
Request succeeded
400
1003
Bad Request
The request body is not valid JSON, or the service failed to process the request
400
1112
The project is closed now, please contact us to restart the project.
The project is closed
400
2000
Missing Parameter
A required parameter is missing, such as strategyId, or both url and html are empty
400
2001
Invalid Parameter
A parameter format is invalid, such as a non-HTTP/HTTPS url or baseUrl, or the strategyId does not exist
401
1102
Unauthorized Client
Invalid X-AppId
401
1106
Missing Access Token
Missing Authorization
401
1107
Invalid Token
Incorrect Authorization signature
401
1108
Expired Token
X-TimeStamp has expired
401
1110
Invalid Client
Missing X-AppId
401
2000
Missing Parameter
Missing X-TimeStamp
401
2001
Invalid Parameter
Invalid X-TimeStamp format
429
-
-
Request rate limit exceeded
Request Specification
- Request URL:
https://msafe.ilivedata.com/api/v1/media/web/submit
- API description:
This API submits an asynchronous web media moderation task. You can submit a web page URL for the service to crawl and moderate, or submit HTML source directly for moderation. After the task is submitted successfully, the API returns a taskId. The moderation result is returned by callback, and can also be queried by taskId through the result query API.
- HTTP request Header:
| Header | Example value | Required | Description |
|---|---|---|---|
| Content-Type | application/json;charset=UTF-8 | Required | Request body format. This API only accepts JSON request bodies |
| Accept | application/json;charset=UTF-8 | Optional | Expected response format. JSON is returned by default if this header is not specified |
| X-AppId | 82100001 | Required | The unique project identifier. You can get it from <Console - Service Configuration> |
| X-TimeStamp | 2026-01-31T07:59:03Z | Required | The UTC time when the request is sent. The format is yyyy-MM-dd'T'HH:mm:ss'Z', for example: 2026-01-31T23:59:59Z |
| Authorization | ***** | Required | Request signature. See the “Request Signature” section below |
- Request method:
POST
- Request body JSON:
| Parameter | Required | Type | Description |
|---|---|---|---|
| url | Conditionally required | String | The web page URL to be moderated. It must start with http:// or https://. At least one of url and html must be specified |
| html | Conditionally required | String | HTML source to be moderated. At least one of url and html must be specified. If this field is specified, the service parses this HTML directly and does not crawl url |
| baseUrl | Optional | String | Base URL used to resolve relative resource URLs in the submitted HTML. It must start with http:// or https://. Recommended when submitting html; if omitted, url is used as the base URL when available |
| strategyId | Required | String | Strategy ID configured in the console |
| callbackUrl | Optional | String | Callback URL used to receive the moderation result. If this field is specified, it takes precedence over the callback URL configured in the console |
- Request body example with URL:
{
"url": "https://example.com/page.html",
"strategyId": "DEFAULT",
"callbackUrl": "https://example.com/callback"
}
- Request body example with HTML source:
{
"html": "<!doctype html><html><head><title>Test page</title></head><body><p>Text to moderate</p><img src=\"images/a.jpg\" alt=\"image text\"></body></html>",
"baseUrl": "https://example.com/page.html",
"strategyId": "DEFAULT",
"callbackUrl": "https://example.com/callback"
}
Request Signature
This API requires the Authorization signature in the request Header. For the signature calculation rule, see Request Signature.
HTTP Response
Content-Type: application/json;charset=UTF-8
The result is in JSON format. See the following example.
- Response JSON field description:
| Field name | Type | Description |
|---|---|---|
| errorCode | Number | Error code. 0 means success |
| errorMessage | String | Error message |
| taskId | String | Unique identifier of the task |
| code | Number | Task status code. 2 means the task is being processed |
- Response example:
{
"errorCode": 0,
"taskId": "task_**************************",
"code": 2
}
Error Code
| HTTP status code | Error code | Error message | Cause |
|---|---|---|---|
| 200 | 0 | This field is omitted | Request succeeded |
| 400 | 1003 | Bad Request | The request body is not valid JSON, or the service failed to process the request |
| 400 | 1112 | The project is closed now, please contact us to restart the project. | The project is closed |
| 400 | 2000 | Missing Parameter | A required parameter is missing, such as strategyId, or both url and html are empty |
| 400 | 2001 | Invalid Parameter | A parameter format is invalid, such as a non-HTTP/HTTPS url or baseUrl, or the strategyId does not exist |
| 401 | 1102 | Unauthorized Client | Invalid X-AppId |
| 401 | 1106 | Missing Access Token | Missing Authorization |
| 401 | 1107 | Invalid Token | Incorrect Authorization signature |
| 401 | 1108 | Expired Token | X-TimeStamp has expired |
| 401 | 1110 | Invalid Client | Missing X-AppId |
| 401 | 2000 | Missing Parameter | Missing X-TimeStamp |
| 401 | 2001 | Invalid Parameter | Invalid X-TimeStamp format |
| 429 | - | - | Request rate limit exceeded |