Integration examples
Update:
This minimal workflow uses placeholders, not real project credentials. Public requests still require a signature for the actual request body.
Submit, query, and stop
Prepare request.json:
{
"type": 1,
"video": "https://media.example.com/video.mp4",
"extra": {
"bizId": "sample-10001"
}
}
export APP_ID="replace-with-project-id"
export REQUEST_TIMESTAMP="$(date -u +%Y-%m-%dT%H:%M:%SZ)"
export REQUEST_AUTHORIZATION="replace-with-signature-for-this-request"
curl --request POST \
"https://vsafe.ilivedata.com/api/v1/video/check/submit" \
--header "Content-Type: application/json" \
--header "X-AppId: ${APP_ID}" \
--header "X-TimeStamp: ${REQUEST_TIMESTAMP}" \
--header "Authorization: ${REQUEST_AUTHORIZATION}" \
--data-binary @request.json
Save result.taskId from the response. To query, use {"taskId":"the actual returned task ID"} with /api/v1/video/check/result, then recompute the signature for the new path, body, and timestamp. See the live submission, query, and stop APIs.
Receive callbacks
Verify the fixed signature fixture before connecting a receiver; see callback verification code, fixtures, and acknowledgments.
Sample repositories for other languages
These repositories illustrate calling patterns; current documentation defines fields and behavior. Repository code is not validated release by release with this page.
Language
Repository
Java
GitHub
C#
GitHub
Go
GitHub
Python
GitHub
C++
GitHub
Node.js
GitHub
PHP
GitHub
This minimal workflow uses placeholders, not real project credentials. Public requests still require a signature for the actual request body.
Submit, query, and stop
Prepare request.json:
{
"type": 1,
"video": "https://media.example.com/video.mp4",
"extra": {
"bizId": "sample-10001"
}
}
export APP_ID="replace-with-project-id"
export REQUEST_TIMESTAMP="$(date -u +%Y-%m-%dT%H:%M:%SZ)"
export REQUEST_AUTHORIZATION="replace-with-signature-for-this-request"
curl --request POST \
"https://vsafe.ilivedata.com/api/v1/video/check/submit" \
--header "Content-Type: application/json" \
--header "X-AppId: ${APP_ID}" \
--header "X-TimeStamp: ${REQUEST_TIMESTAMP}" \
--header "Authorization: ${REQUEST_AUTHORIZATION}" \
--data-binary @request.json
Save result.taskId from the response. To query, use {"taskId":"the actual returned task ID"} with /api/v1/video/check/result, then recompute the signature for the new path, body, and timestamp. See the live submission, query, and stop APIs.
Receive callbacks
Verify the fixed signature fixture before connecting a receiver; see callback verification code, fixtures, and acknowledgments.
Sample repositories for other languages
These repositories illustrate calling patterns; current documentation defines fields and behavior. Repository code is not validated release by release with this page.
| Language | Repository |
|---|---|
| Java | GitHub |
| C# | GitHub |
| Go | GitHub |
| Python | GitHub |
| C++ | GitHub |
| Node.js | GitHub |
| PHP | GitHub |