BulkData

Requirement: GET /{entity}/bulk-data/{category} REQ_INTEROP_072

The endpoint shall list all bulk-data items available in the addressed bulk-data category on the entity.

Returns BulkDataDescriptor array with id, name, mimetype, size, creation_date fields. Includes x-medkit extensions with fault_code, duration_sec, format.

Requirement: GET /{entity}/bulk-data/{category}/{bulk-data-id} REQ_INTEROP_073

The endpoint shall return the content of the addressed bulk-data item or its access information (e.g. download location).

Returns binary file content with appropriate Content-Type (application/x-mcap or application/x-sqlite3) and Content-Disposition headers for browser download.

Requirement: POST /{entity}/bulk-data/{category} REQ_INTEROP_074
status: verified
tags: BulkData, SOVD
links outgoing: REQ_INTEROP_071
is verified by: TEST_BulkDataHandlersTest_DescriptorToJsonConversion, TEST_BulkDataHandlersTest_DescriptorToJsonWithMetadata, TEST_BulkDataHandlersTest_DescriptorToJsonWithoutDescription, TEST_BulkDataHandlersTest_PayloadTooLargeErrorCodeDefined, TEST_BulkDataStoreTest_GenerateUniqueIds, TEST_BulkDataStoreTest_GetFilePathNonexistent, TEST_BulkDataStoreTest_IdFormatIsReadable, TEST_BulkDataStoreTest_ListItemsEmptyCategory, TEST_BulkDataStoreTest_ListItemsInCategory, TEST_BulkDataStoreTest_ListItemsWrongEntity, TEST_BulkDataStoreTest_MaxUploadSizeEnforced, TEST_BulkDataStoreTest_MaxUploadZeroMeansUnlimited, TEST_BulkDataStoreTest_PathTraversalRejected, TEST_BulkDataStoreTest_RemoveItem, TEST_BulkDataStoreTest_RemoveNonexistent, TEST_BulkDataStoreTest_RemoveThenListDoesNotInclude, TEST_BulkDataStoreTest_StoreAndRetrieve, TEST_BulkDataStoreTest_StoreAtomicWriteDescriptorExists, TEST_BulkDataStoreTest_StoreCreatesDirectoryStructure, TEST_BulkDataStoreTest_StoreEmptyFile, TEST_BulkDataStoreTest_StoreEmptyFilename, TEST_BulkDataStoreTest_StoreLargeFile, TEST_BulkDataStoreTest_StoreUnknownCategoryRejected, TEST_BulkDataStoreTest_StoreWithMetadata, TEST_BulkDataStoreTest_UnknownCategory, TEST_TestScenarioBulkDataUpload_test_01_upload_small_file, TEST_TestScenarioBulkDataUpload_test_02_upload_returns_location_header, TEST_TestScenarioBulkDataUpload_test_03_upload_with_description, TEST_TestScenarioBulkDataUpload_test_04_upload_with_metadata, TEST_TestScenarioBulkDataUpload_test_05_upload_missing_file_field, TEST_TestScenarioBulkDataUpload_test_06_upload_unknown_category, TEST_TestScenarioBulkDataUpload_test_07_upload_rosbags_rejected, TEST_TestScenarioBulkDataUpload_test_08_upload_nonexistent_entity, TEST_TestScenarioBulkDataUpload_test_09_upload_to_areas_405, TEST_TestScenarioBulkDataUpload_test_10_upload_to_functions_405, TEST_TestScenarioBulkDataUpload_test_11_delete_uploaded_item, TEST_TestScenarioBulkDataUpload_test_12_delete_nonexistent_item, TEST_TestScenarioBulkDataUpload_test_13_delete_rosbags_rejected, TEST_TestScenarioBulkDataUpload_test_14_delete_to_areas_405, TEST_TestScenarioBulkDataUpload_test_19_list_empty_after_delete, TEST_TestScenarioBulkDataUpload_test_20_full_crud_cycle

The endpoint shall upload new bulk data in the addressed category and create a corresponding bulk-data resource on the entity.

Accepts multipart/form-data with a required file field and optional description and metadata fields. Returns 201 Created with a Location header pointing to the new resource. Supported for components and apps. The rosbags category is read-only.

Requirement: DELETE /{entity}/bulk-data/{category}/{bulk-data-id} REQ_INTEROP_075
status: verified
tags: BulkData, SOVD
links outgoing: REQ_INTEROP_071

The endpoint shall delete the addressed bulk-data item from the entity, if permitted.

Returns 204 No Content on success. Supported for components and apps. The rosbags category is managed by the fault manager and cannot be deleted.