Dispatch one durable Modal upload publication
const url = 'https://example.com/v1/datasets/upload/publication';const options = { method: 'POST', headers: {'X-API-Key': '<X-API-Key>', 'Content-Type': 'application/json'}, body: '{"operation_id":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","repo_id":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","name":"example","kind":"dataset","source_format":"lerobot_v2_1","expected":{"generation":1,"git_hash_algorithm":"sha1","git_oid":"example","commit_id":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","pack_digest":"example"},"uploads":[{"staging_id":"example","blob_id":"example","content_length":1}],"manifests":[{"file_format":"generic","terms":[{"blob_id":"example","offset_in_blob":1,"length":1}],"expected_raw_blake3":"example","expected_raw_sha256":"","path":"example","mode":33188,"expected_manifest_id":""}],"existing_entries":[{"manifest_id":"example","path":"example","mode":33188}]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/v1/datasets/upload/publication \ --header 'Content-Type: application/json' \ --header 'X-API-Key: <X-API-Key>' \ --data '{ "operation_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "repo_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "name": "example", "kind": "dataset", "source_format": "lerobot_v2_1", "expected": { "generation": 1, "git_hash_algorithm": "sha1", "git_oid": "example", "commit_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "pack_digest": "example" }, "uploads": [ { "staging_id": "example", "blob_id": "example", "content_length": 1 } ], "manifests": [ { "file_format": "generic", "terms": [ { "blob_id": "example", "offset_in_blob": 1, "length": 1 } ], "expected_raw_blake3": "example", "expected_raw_sha256": "", "path": "example", "mode": 33188, "expected_manifest_id": "" } ], "existing_entries": [ { "manifest_id": "example", "path": "example", "mode": 33188 } ] }'Persist one complete tree and return immediately after worker dispatch.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Header Parameters
Section titled “Header Parameters ”The transfer heartbeat’s session_id this tree moved under. A fresh publication under a session the user cancelled is refused (QUA-3009). A header rather than a body field, so a newer SDK still passes an older gateway’s strict body.
The transfer heartbeat’s session_id this tree moved under. A fresh publication under a session the user cancelled is refused (QUA-3009). A header rather than a body field, so a newer SDK still passes an older gateway’s strict body.
Request Body required
Section titled “Request Body required ”object
object
object
object
One contiguous run of chunks inside one blob, named as a byte range.
The blob seal proves offset_in_blob is a dense prefix sum of length over
the directory ordinal, so a range of ordinals is exactly one range of bytes
and the two spellings carry the same fact.
object
object
Responses
Section titled “ Responses ”Successful Response
Example generated
exampleInvalid or missing API key
Standard error response.
object
Error message describing what went wrong
Example generated
{ "detail": "example"}Validation Error
object
object
object
Example generated
{ "detail": [ { "loc": [ "example" ], "msg": "example", "type": "example", "input": "example", "ctx": {} } ]}