Query a task
Replace task_xxx with the complete id returned when the inference task was created. Use the same API environment and API key.
⚠️ UseGET /v1/inferences/{task_id}for Video NSFW Filter tasks. Do not use/v1/generations/{task_id}; the generation task endpoint does not apply to this model.
export SEEAPI_API_BASE_URL='https://api.seeapi.com'
export SEEAPI_API_KEY='YOUR_API_KEY'
export SEEAPI_TASK_ID='task_xxx'
curl --request GET "$SEEAPI_API_BASE_URL/v1/inferences/$SEEAPI_TASK_ID" \
--header "Authorization: Bearer $SEEAPI_API_KEY"Query response — 200 OK
A successful lookup returns the current task state, even while processing. This illustrative one-frame assessment shows no detected labels and a successfully stored image with all frame images requested. The image URL is a placeholder; optional fields are not guaranteed to appear in every response.
{
"id": "task_xxx",
"object": "inference",
"model": "video-nsfw-filter",
"endpoint": "video-moderation",
"provider": "seeapi",
"status": "succeeded",
"result": {
"type": "json",
"data": {
"flagged": false,
"output": {
"nsfw_detected": false,
"scope": "sampled_frames",
"sampling_complete": true,
"checked_frames": 1,
"timestamp_source": "frame_index_div_fps_estimate",
"output_layout": "named-files-v1",
"report_schema_version": 5,
"flagged_frame_count": 0,
"frames": [
{
"frame_number": 1,
"timestamp_seconds": 0,
"nsfw_detected": false,
"nsfw": [],
"special": [],
"image_url": "https://client.example.com/inference/task_xxx/frame-1.jpg"
}
]
}
}
},
"error": null
}Response fields
status:
queued or processing means the result is not ready. Continue polling with backoff.
succeeded describes execution, not whether content passed moderation.
result.data.flagged: The overall content verdict, indicating whether the content passes the check: false means passed; true means flagged and not passed.
output.frames: One entry per checked frame.
frame_number identifies the source frame (not the array index);
timestamp_seconds gives its approximate time in seconds;
nsfw_detected is the frame’s detection verdict.
nsfw lists normal NSFW labels, with [] meaning none were reported for that frame.
special: Optional special-care category labels for the frame. [] means the field was returned with no labels.
image_url: Optional URL of the stored image for this specific frame, not the input video. With return_frames=none, no frame images are requested; flagged requests flagged frames only; all requests all sampled frames. A URL is included only when that image is returned successfully. If no image is available, the field is omitted, while the frame’s detection results remain valid. Do not treat a missing image as an unchecked or safe frame. Replace the placeholder in this example with the URL from your actual response.
reason=content_policy_blocked: A policy-blocked outcome returns status=succeeded, flagged=true, output=null and a message. It remains billable; there is no per-frame report.
error: Failure details with code and message; null when no task error is reported. A flagged assessment is not a task failure. See Responses for the complete field reference.