curl --request POST \
--url https://api.capibo.work/v1/datasets/{dataset_id}/exports \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"task_ids": [
"<string>"
],
"created_after": "2023-11-07T05:31:56Z",
"include_rejected": false,
"blur_faces": true
}
'import requests
url = "https://api.capibo.work/v1/datasets/{dataset_id}/exports"
payload = {
"task_ids": ["<string>"],
"created_after": "2023-11-07T05:31:56Z",
"include_rejected": False,
"blur_faces": True
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
task_ids: ['<string>'],
created_after: '2023-11-07T05:31:56Z',
include_rejected: false,
blur_faces: true
})
};
fetch('https://api.capibo.work/v1/datasets/{dataset_id}/exports', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "EXP-20931",
"dataset_id": "DS-301",
"status": "queued",
"format": "lerobot",
"destination": "s3",
"videos": 7339,
"url": "s3://timefactories/datasets/DS-301/v1.2",
"created_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z"
}{
"error": {
"type": "invalid_request",
"code": "parameter_invalid",
"message": "tasks[0].videos must be at least 1.",
"param": "tasks[0].videos"
}
}{
"error": {
"type": "authentication_error",
"code": "api_key_invalid",
"message": "Invalid API key."
}
}{
"error": {
"type": "not_found",
"code": "resource_missing",
"message": "No mission with id MSN-9999."
}
}Create an export
Packages the dataset’s accepted videos and annotations into a training
format and delivers them. Exports run asynchronously: poll
GET /exports/{export_id} or listen for the export.ready webhook.
curl --request POST \
--url https://api.capibo.work/v1/datasets/{dataset_id}/exports \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"task_ids": [
"<string>"
],
"created_after": "2023-11-07T05:31:56Z",
"include_rejected": false,
"blur_faces": true
}
'import requests
url = "https://api.capibo.work/v1/datasets/{dataset_id}/exports"
payload = {
"task_ids": ["<string>"],
"created_after": "2023-11-07T05:31:56Z",
"include_rejected": False,
"blur_faces": True
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
task_ids: ['<string>'],
created_after: '2023-11-07T05:31:56Z',
include_rejected: false,
blur_faces: true
})
};
fetch('https://api.capibo.work/v1/datasets/{dataset_id}/exports', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "EXP-20931",
"dataset_id": "DS-301",
"status": "queued",
"format": "lerobot",
"destination": "s3",
"videos": 7339,
"url": "s3://timefactories/datasets/DS-301/v1.2",
"created_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z"
}{
"error": {
"type": "invalid_request",
"code": "parameter_invalid",
"message": "tasks[0].videos must be at least 1.",
"param": "tasks[0].videos"
}
}{
"error": {
"type": "authentication_error",
"code": "api_key_invalid",
"message": "Invalid API key."
}
}{
"error": {
"type": "not_found",
"code": "resource_missing",
"message": "No mission with id MSN-9999."
}
}Authorizations
An API key from Settings → API keys, e.g. cpb_live_… or cpb_test_….
Headers
A unique key (e.g. a UUID). Retrying with the same key returns the original response instead of doing the work twice.
Path Parameters
"DS-301"
Body
lerobot (Hugging Face LeRobot), rlds (RLDS / TFRecord), webdataset (.tar shards) or mp4-json (MP4 + JSON annotations).
lerobot, rlds, webdataset, mp4-json A connected integration, or link for a signed download link (24h).
s3, gcs, hf, link Only export these tasks. All tasks by default.
Only export videos accepted after this time, for incremental exports.
Blur any faces or screens detected in frame.
Response
The export was queued.
"EXP-20931"
"DS-301"
queued, packaging, ready, failed "lerobot"
"s3"
7339
Where the export was delivered, once ready.
"s3://timefactories/datasets/DS-301/v1.2"