How to Upload a File or Archive to the Dr.Web vxCube Server

You can upload both individual files and archives to the vxCube server to be analyzed. The detailed information about supported file formats is provided in the Supported formats section.

How to upload a file to the Dr.Web vxCube server

To upload a file to the server, send the POST samples request:

curl -X POST https://<IP address/domain name of the server>/api-2.0/samples \

-F "file=@testfile.pdf" \

-F "password="vxcube"" \

-H "Authorization: api-key aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"

In response, you will receive the Sample object that contains data about the uploaded file including the file format identified automatically and a list of supported platforms. This data can be used in an API request to launch an analysis of the uploaded file.

Response example:

{

   "id": 6784,

   "size": 10881846,

   "name": "testfile.pdf",

   "is_x64": null,

   "format_name": "pdf",

   "upload_date": "2019-02-08T04:08:15.162343+00:00",

   "md5": "34fb8ae3c01653985085ee7e2f749ea5",

   "sha1": "00a610100a3516f4d0daa33e7de317d2ddb6c2c6",

   "sha256": "11bd131be00cbe1c43b4444ec4300dc7651805ea36393b1cca1675983dc275bc",

   "platforms": [

       "acrobat_xp_10",

       "acrobat_7_32_11",

       "acrobat_7_64_15",

       "acrobat_10_64_15",

       "acrobat_11_64_15"

   ]

}

How to upload an archive to the Dr.Web vxCube server

To upload an archive to the server, send the POST samples request:

curl -X POST https://<IP address/domain name of the server>/api-2.0/samples \

-F "file=@testarchive.zip" \

-F "password="vxcube"" \

-H "Authorization: api-key aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee"

In response, you will receive the list of Sample objects that contain data about the uploaded archive files including the file formats identified automatically and a list of supported platforms. These data can be used to launch an analysis of the files in the uploaded archive. Please note that you should send the separate API request for each file in the archive to be analyzed.

Response example:

{

   "samples": [

     {

       "id": 322277,

       "name": "script_bash.sh",

       "size": 31,

       "format_name": "sh",

       "upload_date": "2025-01-10T10:22:05.370576",

       "md5": "ee7f40fc10ebc0c5227f2307d4cc0eec",

       "sha1": "824917b5b19af65b09b4f879787bcbc304304df3",

       "sha256": "7a4b93d2a929c865da7f8fa060cf8bdeba00caa3a246c00c61819e101578c525",

       "is_x64": null,

       "platforms": [

           "intel64_astra_ce_2.12",

           "intel64_astra_se_1.7.2",

           "intel64_debian_bullseye"

       ]

     },

     {

       "id": 322278,

       "name": "Simulator.exe",

       "size": 12796104,

       "format_name": "exe",

       "upload_date": "2025-01-10T10:22:06.673229",

       "md5": "1d8a2c83aeec264d6df97f3867d13051",

       "sha1": "6e417d89c4a6ae436f815ee038255f5dbf31c1ca",

       "sha256": "b1fd18441460ed1bd9b6a8107f2f09ddc971ed33ddbca53c6a38124f6830b2d9",

       "is_x64": false,

       "platforms": [

           "win11x64",

           "win10x64",

           "win7x64",

           "win7x86",

           "winxpx86"

       ]

     },

     {

       "id": 322279,

       "name": "Welcome.doc",

       "size": 28909,

       "format_name": "odt",

       "upload_date": "2025-01-10T10:22:06.684141",

       "md5": "64df4748a0e674cb65601a1157a1c900",

       "sha1": "0bfac9df80cade5b8b03576194549b197fc34388",

       "sha256": "7ce72f1ea01bea3d99e4658e5dc909e662e10c65d83d280aa4bf0e25526bf752",

       "is_x64": null,

       "platforms": [

           "office_11_64",

           "office_10_64",

           "office_7_32",

           "office_7_64",

           "office_xp"

       ]

     }

   ]

}