Videos
Create a motion detection task
POST
/videos/motion_detectionsCut a segment from a video and track one or more detected people to produce motion capture output.
Request Body
Request Body Schema
application/json
└
model└
requiredinput_video└
requiredstart_time_seconds└
requiredduration_seconds└
bboxes└
bboxes[]└
bboxes[][]└
options└
block└
priorityResponses
For standard error codes, see Error Handling.
Response Schema
200application/json
└
requiredtask_uuid└
requiredtask_type└
requiredmodel└
requiredstatus└
requiredcreated_at└
requiredcompleted_at└
requiredresult└
result[]└
requiredmetadata└
requiredvideo└
requiredrequested_bboxes└
requested_bboxes[]└
requested_bboxes[][]└
requiredtracked_bboxes└
tracked_bboxes[]└
tracked_bboxes[][]└
requiredtracked_indexes└
tracked_indexes[]└
requiredquery_start_time_seconds└
requiredquery_duration_seconds└
requiredeffective_query_duration_seconds└
video_clip└
audio_clip└
requiredfps└
requiredmotions└
motions[]└
downloads└
downloads[]This endpoint may also return 201 when the task is accepted for asynchronous execution. Use the
task_uuid from the response body to poll the corresponding GET endpoint for the result. Sync vs async →Try It
curl https://api.v2fun.ai/api/v1/videos/motion_detections \
-X POST \
-H "Authorization: Bearer $YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input_video": "<input_video>",
"start_time_seconds": 0,
"duration_seconds": 0
}' Response 200 OK
{
"task_uuid": "<task_uuid>",
"task_type": "<task_type>",
"model": "<model>",
"status": "<taskstatus>",
"created_at": 0,
"completed_at": 0,
"result": [],
"metadata": {}
}Get a motion detection task
GET
/videos/motion_detections/{task_uuid}Retrieve the current status or final output of a motion detection task.
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
task_uuid | path | Yes | string | Task UUID returned when the motion detection job was created. |
Responses
For standard error codes, see Error Handling.
Response Schema
200application/json
└
requiredtask_uuid└
requiredtask_type└
requiredmodel└
requiredstatus└
requiredcreated_at└
requiredcompleted_at└
requiredresult└
result[]└
requiredmetadata└
requiredvideo└
requiredrequested_bboxes└
requested_bboxes[]└
requested_bboxes[][]└
requiredtracked_bboxes└
tracked_bboxes[]└
tracked_bboxes[][]└
requiredtracked_indexes└
tracked_indexes[]└
requiredquery_start_time_seconds└
requiredquery_duration_seconds└
requiredeffective_query_duration_seconds└
video_clip└
audio_clip└
requiredfps└
requiredmotions└
motions[]└
downloads└
downloads[]Try It
curl https://api.v2fun.ai/api/v1/videos/motion_detections/<task_uuid> \
-H "Authorization: Bearer $YOUR_API_KEY" Response 200 OK
{
"task_uuid": "<task_uuid>",
"task_type": "<task_type>",
"model": "<model>",
"status": "<taskstatus>",
"created_at": 0,
"completed_at": 0,
"result": [],
"metadata": {}
}Create a pose detection task
POST
/videos/pose_detectionsDetect the human pose for a specific frame in an uploaded or stored video asset.
Request Body
Request Body Schema
application/json
└
requiredinput_video└
requiredtime_seconds└
options└
block└
priorityResponses
For standard error codes, see Error Handling.
Response Schema
200application/json
└
requiredtask_uuid└
requiredtask_type└
requiredmodel└
requiredstatus└
requiredcreated_at└
requiredcompleted_at└
requiredresult└
result[]└
requiredid└
requiredconfidence└
requiredbbox_xyxy└
requiredbbox_xywh└
requiredkeypoints_2d└
keypoints_2d[]└
keypoints_3d└
keypoints_3d[]└
requiredmetadata└
requiredvideo└
requiredquery_time_seconds└
requiredframe_time_seconds└
requiredframe_index└
requiredfps└
requiredtotal_frames└
requiredimage_width└
requiredimage_height└
id_scope└
visualization_image└
downloads└
downloads[]This endpoint may also return 201 when the task is accepted for asynchronous execution. Use the
task_uuid from the response body to poll the corresponding GET endpoint for the result. Sync vs async →Try It
curl https://api.v2fun.ai/api/v1/videos/pose_detections \
-X POST \
-H "Authorization: Bearer $YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input_video": "<input_video>",
"time_seconds": 0
}' Response 200 OK
{
"task_uuid": "<task_uuid>",
"task_type": "<task_type>",
"model": "<model>",
"status": "<taskstatus>",
"created_at": 0,
"completed_at": 0,
"result": [],
"metadata": {}
}Get a pose detection task
GET
/videos/pose_detections/{task_uuid}Retrieve the current status or final output of a pose detection task.
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
task_uuid | path | Yes | string | Task UUID returned when the pose detection job was created. |
Responses
For standard error codes, see Error Handling.
Response Schema
200application/json
└
requiredtask_uuid└
requiredtask_type└
requiredmodel└
requiredstatus└
requiredcreated_at└
requiredcompleted_at└
requiredresult└
result[]└
requiredid└
requiredconfidence└
requiredbbox_xyxy└
requiredbbox_xywh└
requiredkeypoints_2d└
keypoints_2d[]└
keypoints_3d└
keypoints_3d[]└
requiredmetadata└
requiredvideo└
requiredquery_time_seconds└
requiredframe_time_seconds└
requiredframe_index└
requiredfps└
requiredtotal_frames└
requiredimage_width└
requiredimage_height└
id_scope└
visualization_image└
downloads└
downloads[]Try It
curl https://api.v2fun.ai/api/v1/videos/pose_detections/<task_uuid> \
-H "Authorization: Bearer $YOUR_API_KEY" Response 200 OK
{
"task_uuid": "<task_uuid>",
"task_type": "<task_type>",
"model": "<model>",
"status": "<taskstatus>",
"created_at": 0,
"completed_at": 0,
"result": [],
"metadata": {}
}