cloudmersive-virus-scan-api-client 2.0.4 → 2.0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1bede92a24ae5a20f600c48d6123e4b6ff9bf6f89d0d9213acece8b844bc1a64
4
- data.tar.gz: bdd0be405c767fb4b1b88a89b90696630b2772d342dc22f68ee7b679c25d55c2
3
+ metadata.gz: 1aa22e0c643d86c6436ad703a9282aac3e5548b1582a998f563445899199a7f7
4
+ data.tar.gz: bfe914cdcec515255a07c13b34ad1c9ff2b9cdf2aae7b6a0af01e8ddd4be07ec
5
5
  SHA512:
6
- metadata.gz: 107a9cf60694ab146600c8367e5433261d8a708a4dcfdb4fa8744ffbd93b6967e674a80733deec7cac68acd0e67215deaef44b1276abc67a907e16bc3128e662
7
- data.tar.gz: 61946d727cf0263c934b75506bbc6e38d1b7f0ff572866d21e7c93f9c314b61aa521168eb030efc8190141aab51190365416123ccab781c1334eb9eeb74ff5ac
6
+ metadata.gz: a95720af23249e82bf31da9cf0ea88e4e3013edf6667fa0d54659533a9673fcf61d25f285b0342c18e14878b4294a24f87507bc08460e8b97fd649fbd67a8be5
7
+ data.tar.gz: a330e9902de32ce7d2ed3d44b7a2d13655d5bd679c7f6615e5a0024095fdb89691ba354d30ec7b1c02c0f85016d660c1033f3a367912f356ac6dbb72a9067a78
data/README.md CHANGED
@@ -7,7 +7,7 @@ The Cloudmersive Virus Scan API lets you scan files and content for viruses and
7
7
  This SDK is automatically generated by the [Swagger Codegen](https://github.com/swagger-api/swagger-codegen) project:
8
8
 
9
9
  - API version: v1
10
- - Package version: 2.0.4
10
+ - Package version: 2.0.5
11
11
  - Build package: io.swagger.codegen.languages.RubyClientCodegen
12
12
 
13
13
  ## Installation
@@ -23,15 +23,15 @@ gem build cloudmersive-virus-scan-api-client.gemspec
23
23
  Then either install the gem locally:
24
24
 
25
25
  ```shell
26
- gem install ./cloudmersive-virus-scan-api-client-2.0.4.gem
26
+ gem install ./cloudmersive-virus-scan-api-client-2.0.5.gem
27
27
  ```
28
- (for development, run `gem install --dev ./cloudmersive-virus-scan-api-client-2.0.4.gem` to install the development dependencies)
28
+ (for development, run `gem install --dev ./cloudmersive-virus-scan-api-client-2.0.5.gem` to install the development dependencies)
29
29
 
30
30
  or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
31
31
 
32
32
  Finally add this to the Gemfile:
33
33
 
34
- gem 'cloudmersive-virus-scan-api-client', '~> 2.0.4'
34
+ gem 'cloudmersive-virus-scan-api-client', '~> 2.0.5'
35
35
 
36
36
  ### Install from Git
37
37
 
@@ -87,12 +87,16 @@ Class | Method | HTTP request | Description
87
87
  *CloudmersiveVirusScanApiClient::ScanApi* | [**scan_file_advanced**](docs/ScanApi.md#scan_file_advanced) | **POST** /virus/scan/file/advanced | Advanced Scan a file for viruses
88
88
  *CloudmersiveVirusScanApiClient::ScanApi* | [**scan_website**](docs/ScanApi.md#scan_website) | **POST** /virus/scan/website | Scan a website for malicious content and threats
89
89
  *CloudmersiveVirusScanApiClient::ScanCloudStorageApi* | [**scan_cloud_storage_scan_aws_s3_file**](docs/ScanCloudStorageApi.md#scan_cloud_storage_scan_aws_s3_file) | **POST** /virus/scan/cloud-storage/aws-s3/single | Scan an AWS S3 file for viruses
90
+ *CloudmersiveVirusScanApiClient::ScanCloudStorageApi* | [**scan_cloud_storage_scan_aws_s3_file_advanced**](docs/ScanCloudStorageApi.md#scan_cloud_storage_scan_aws_s3_file_advanced) | **POST** /virus/scan/cloud-storage/aws-s3/single/advanced | Advanced Scan an AWS S3 file for viruses
90
91
  *CloudmersiveVirusScanApiClient::ScanCloudStorageApi* | [**scan_cloud_storage_scan_azure_blob**](docs/ScanCloudStorageApi.md#scan_cloud_storage_scan_azure_blob) | **POST** /virus/scan/cloud-storage/azure-blob/single | Scan an Azure Blob for viruses
92
+ *CloudmersiveVirusScanApiClient::ScanCloudStorageApi* | [**scan_cloud_storage_scan_azure_blob_advanced**](docs/ScanCloudStorageApi.md#scan_cloud_storage_scan_azure_blob_advanced) | **POST** /virus/scan/cloud-storage/azure-blob/single/advanced | Advanced Scan an Azure Blob for viruses
91
93
  *CloudmersiveVirusScanApiClient::ScanCloudStorageApi* | [**scan_cloud_storage_scan_gcp_storage_file**](docs/ScanCloudStorageApi.md#scan_cloud_storage_scan_gcp_storage_file) | **POST** /virus/scan/cloud-storage/gcp-storage/single | Scan an Google Cloud Platform (GCP) Storage file for viruses
94
+ *CloudmersiveVirusScanApiClient::ScanCloudStorageApi* | [**scan_cloud_storage_scan_gcp_storage_file_advanced**](docs/ScanCloudStorageApi.md#scan_cloud_storage_scan_gcp_storage_file_advanced) | **POST** /virus/scan/cloud-storage/gcp-storage/single/advanced | Advanced Scan an Google Cloud Platform (GCP) Storage file for viruses
92
95
 
93
96
 
94
97
  ## Documentation for Models
95
98
 
99
+ - [CloudmersiveVirusScanApiClient::CloudStorageAdvancedVirusScanResult](docs/CloudStorageAdvancedVirusScanResult.md)
96
100
  - [CloudmersiveVirusScanApiClient::CloudStorageVirusFound](docs/CloudStorageVirusFound.md)
97
101
  - [CloudmersiveVirusScanApiClient::CloudStorageVirusScanResult](docs/CloudStorageVirusScanResult.md)
98
102
  - [CloudmersiveVirusScanApiClient::VirusFound](docs/VirusFound.md)
@@ -0,0 +1,19 @@
1
+ # CloudmersiveVirusScanApiClient::CloudStorageAdvancedVirusScanResult
2
+
3
+ ## Properties
4
+ Name | Type | Description | Notes
5
+ ------------ | ------------- | ------------- | -------------
6
+ **successful** | **BOOLEAN** | True if the operation of retrieving the file, and scanning it were successfully completed, false if the file could not be downloaded from cloud storage, or if the file could not be scanned. Note that successful completion does not mean the file is clean; for the output of the virus scanning operation itself, use the CleanResult and FoundViruses parameters. | [optional]
7
+ **clean_result** | **BOOLEAN** | True if the scan contained no viruses, false otherwise | [optional]
8
+ **contains_executable** | **BOOLEAN** | True if the scan contained an executable (application code), which can be a significant risk factor | [optional]
9
+ **contains_invalid_file** | **BOOLEAN** | True if the scan contained an invalid file (such as a PDF that is not a valid PDF, Word Document that is not a valid Word Document, etc.), which can be a significant risk factor | [optional]
10
+ **contains_script** | **BOOLEAN** | True if the scan contained a script (such as a PHP script, Python script, etc.) which can be a significant risk factor | [optional]
11
+ **contains_password_protected_file** | **BOOLEAN** | True if the scan contained a password protected or encrypted file, which can be a significant risk factor | [optional]
12
+ **contains_restricted_file_format** | **BOOLEAN** | True if the uploaded file is of a type that is not allowed based on the optional restrictFileTypes parameter, false otherwise; if restrictFileTypes is not set, this will always be false | [optional]
13
+ **contains_macros** | **BOOLEAN** | True if the uploaded file contains embedded Macros of other embedded threats within the document, which can be a significant risk factor | [optional]
14
+ **verified_file_format** | **String** | For file format verification-supported file formats, the contents-verified file format of the file. Null indicates that the file format is not supported for contents verification. If a Virus or Malware is found, this field will always be set to Null. | [optional]
15
+ **found_viruses** | [**Array<CloudStorageVirusFound>**](CloudStorageVirusFound.md) | Array of viruses found, if any | [optional]
16
+ **error_detailed_description** | **String** | Detailed error message if the operation was not successful | [optional]
17
+ **file_size** | **Integer** | Size in bytes of the file that was retrieved and scanned | [optional]
18
+
19
+
@@ -5,8 +5,11 @@ All URIs are relative to *https://api.cloudmersive.com*
5
5
  Method | HTTP request | Description
6
6
  ------------- | ------------- | -------------
7
7
  [**scan_cloud_storage_scan_aws_s3_file**](ScanCloudStorageApi.md#scan_cloud_storage_scan_aws_s3_file) | **POST** /virus/scan/cloud-storage/aws-s3/single | Scan an AWS S3 file for viruses
8
+ [**scan_cloud_storage_scan_aws_s3_file_advanced**](ScanCloudStorageApi.md#scan_cloud_storage_scan_aws_s3_file_advanced) | **POST** /virus/scan/cloud-storage/aws-s3/single/advanced | Advanced Scan an AWS S3 file for viruses
8
9
  [**scan_cloud_storage_scan_azure_blob**](ScanCloudStorageApi.md#scan_cloud_storage_scan_azure_blob) | **POST** /virus/scan/cloud-storage/azure-blob/single | Scan an Azure Blob for viruses
10
+ [**scan_cloud_storage_scan_azure_blob_advanced**](ScanCloudStorageApi.md#scan_cloud_storage_scan_azure_blob_advanced) | **POST** /virus/scan/cloud-storage/azure-blob/single/advanced | Advanced Scan an Azure Blob for viruses
9
11
  [**scan_cloud_storage_scan_gcp_storage_file**](ScanCloudStorageApi.md#scan_cloud_storage_scan_gcp_storage_file) | **POST** /virus/scan/cloud-storage/gcp-storage/single | Scan an Google Cloud Platform (GCP) Storage file for viruses
12
+ [**scan_cloud_storage_scan_gcp_storage_file_advanced**](ScanCloudStorageApi.md#scan_cloud_storage_scan_gcp_storage_file_advanced) | **POST** /virus/scan/cloud-storage/gcp-storage/single/advanced | Advanced Scan an Google Cloud Platform (GCP) Storage file for viruses
10
13
 
11
14
 
12
15
  # **scan_cloud_storage_scan_aws_s3_file**
@@ -75,6 +78,86 @@ Name | Type | Description | Notes
75
78
 
76
79
 
77
80
 
81
+ # **scan_cloud_storage_scan_aws_s3_file_advanced**
82
+ > CloudStorageAdvancedVirusScanResult scan_cloud_storage_scan_aws_s3_file_advanced(access_key, secret_key, bucket_region, bucket_name, key_name, opts)
83
+
84
+ Advanced Scan an AWS S3 file for viruses
85
+
86
+ Advanced Scan the contents of a single AWS S3 file and its content for viruses and threats. Advanced Scan files with 360-degree Content Protection across Viruses and Malware, executables, invalid files, scripts, and even restrictions on accepted file types with complete content verification. Customize threat rules to your needs. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Block threats beyond viruses including executables, scripts, invalid files, and more. Optionally limit input files to a specific set of file types (e.g. PDF and Word Documents only). Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
87
+
88
+ ### Example
89
+ ```ruby
90
+ # load the gem
91
+ require 'cloudmersive-virus-scan-api-client'
92
+ # setup authorization
93
+ CloudmersiveVirusScanApiClient.configure do |config|
94
+ # Configure API key authorization: Apikey
95
+ config.api_key['Apikey'] = 'YOUR API KEY'
96
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
97
+ #config.api_key_prefix['Apikey'] = 'Bearer'
98
+ end
99
+
100
+ api_instance = CloudmersiveVirusScanApiClient::ScanCloudStorageApi.new
101
+
102
+ access_key = 'access_key_example' # String | AWS S3 access key for the S3 bucket; you can get this from My Security Credentials in the AWS console
103
+
104
+ secret_key = 'secret_key_example' # String | AWS S3 secret key for the S3 bucket; you can get this from My Security Credentials in the AWS console
105
+
106
+ bucket_region = 'bucket_region_example' # String | Name of the region of the S3 bucket, such as 'US-East-1'
107
+
108
+ bucket_name = 'bucket_name_example' # String | Name of the S3 bucket
109
+
110
+ key_name = 'key_name_example' # String | Key name (also called file name) of the file in S3 that you wish to scan for viruses
111
+
112
+ opts = {
113
+ allow_executables: true, # BOOLEAN | Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended).
114
+ allow_invalid_files: true, # BOOLEAN | Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended).
115
+ allow_scripts: true, # BOOLEAN | Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended).
116
+ allow_password_protected_files: true, # BOOLEAN | Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended).
117
+ allow_macros: true, # BOOLEAN | Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended).
118
+ restrict_file_types: 'restrict_file_types_example' # String | Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult=false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled.
119
+ }
120
+
121
+ begin
122
+ #Advanced Scan an AWS S3 file for viruses
123
+ result = api_instance.scan_cloud_storage_scan_aws_s3_file_advanced(access_key, secret_key, bucket_region, bucket_name, key_name, opts)
124
+ p result
125
+ rescue CloudmersiveVirusScanApiClient::ApiError => e
126
+ puts "Exception when calling ScanCloudStorageApi->scan_cloud_storage_scan_aws_s3_file_advanced: #{e}"
127
+ end
128
+ ```
129
+
130
+ ### Parameters
131
+
132
+ Name | Type | Description | Notes
133
+ ------------- | ------------- | ------------- | -------------
134
+ **access_key** | **String**| AWS S3 access key for the S3 bucket; you can get this from My Security Credentials in the AWS console |
135
+ **secret_key** | **String**| AWS S3 secret key for the S3 bucket; you can get this from My Security Credentials in the AWS console |
136
+ **bucket_region** | **String**| Name of the region of the S3 bucket, such as 'US-East-1' |
137
+ **bucket_name** | **String**| Name of the S3 bucket |
138
+ **key_name** | **String**| Key name (also called file name) of the file in S3 that you wish to scan for viruses |
139
+ **allow_executables** | **BOOLEAN**| Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended). | [optional]
140
+ **allow_invalid_files** | **BOOLEAN**| Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended). | [optional]
141
+ **allow_scripts** | **BOOLEAN**| Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended). | [optional]
142
+ **allow_password_protected_files** | **BOOLEAN**| Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended). | [optional]
143
+ **allow_macros** | **BOOLEAN**| Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended). | [optional]
144
+ **restrict_file_types** | **String**| Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult=false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled. | [optional]
145
+
146
+ ### Return type
147
+
148
+ [**CloudStorageAdvancedVirusScanResult**](CloudStorageAdvancedVirusScanResult.md)
149
+
150
+ ### Authorization
151
+
152
+ [Apikey](../README.md#Apikey)
153
+
154
+ ### HTTP request headers
155
+
156
+ - **Content-Type**: multipart/form-data
157
+ - **Accept**: application/json, text/json, application/xml, text/xml
158
+
159
+
160
+
78
161
  # **scan_cloud_storage_scan_azure_blob**
79
162
  > CloudStorageVirusScanResult scan_cloud_storage_scan_azure_blob(connection_string, container_name, blob_path)
80
163
 
@@ -135,6 +218,80 @@ Name | Type | Description | Notes
135
218
 
136
219
 
137
220
 
221
+ # **scan_cloud_storage_scan_azure_blob_advanced**
222
+ > CloudStorageAdvancedVirusScanResult scan_cloud_storage_scan_azure_blob_advanced(connection_string, container_name, blob_path, opts)
223
+
224
+ Advanced Scan an Azure Blob for viruses
225
+
226
+ Advanced Scan the contents of a single Azure Blob and its content for viruses and threats. Advanced Scan files with 360-degree Content Protection across Viruses and Malware, executables, invalid files, scripts, and even restrictions on accepted file types with complete content verification. Customize threat rules to your needs. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Block threats beyond viruses including executables, scripts, invalid files, and more. Optionally limit input files to a specific set of file types (e.g. PDF and Word Documents only). Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
227
+
228
+ ### Example
229
+ ```ruby
230
+ # load the gem
231
+ require 'cloudmersive-virus-scan-api-client'
232
+ # setup authorization
233
+ CloudmersiveVirusScanApiClient.configure do |config|
234
+ # Configure API key authorization: Apikey
235
+ config.api_key['Apikey'] = 'YOUR API KEY'
236
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
237
+ #config.api_key_prefix['Apikey'] = 'Bearer'
238
+ end
239
+
240
+ api_instance = CloudmersiveVirusScanApiClient::ScanCloudStorageApi.new
241
+
242
+ connection_string = 'connection_string_example' # String | Connection string for the Azure Blob Storage Account; you can get this connection string from the Access Keys tab of the Storage Account blade in the Azure Portal.
243
+
244
+ container_name = 'container_name_example' # String | Name of the Blob container within the Azure Blob Storage account
245
+
246
+ blob_path = 'blob_path_example' # String | Path to the blob within the container, such as 'hello.pdf' or '/folder/subfolder/world.pdf'
247
+
248
+ opts = {
249
+ allow_executables: true, # BOOLEAN | Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended).
250
+ allow_invalid_files: true, # BOOLEAN | Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended).
251
+ allow_scripts: true, # BOOLEAN | Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended).
252
+ allow_password_protected_files: true, # BOOLEAN | Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended).
253
+ allow_macros: true, # BOOLEAN | Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended).
254
+ restrict_file_types: 'restrict_file_types_example' # String | Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult=false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled.
255
+ }
256
+
257
+ begin
258
+ #Advanced Scan an Azure Blob for viruses
259
+ result = api_instance.scan_cloud_storage_scan_azure_blob_advanced(connection_string, container_name, blob_path, opts)
260
+ p result
261
+ rescue CloudmersiveVirusScanApiClient::ApiError => e
262
+ puts "Exception when calling ScanCloudStorageApi->scan_cloud_storage_scan_azure_blob_advanced: #{e}"
263
+ end
264
+ ```
265
+
266
+ ### Parameters
267
+
268
+ Name | Type | Description | Notes
269
+ ------------- | ------------- | ------------- | -------------
270
+ **connection_string** | **String**| Connection string for the Azure Blob Storage Account; you can get this connection string from the Access Keys tab of the Storage Account blade in the Azure Portal. |
271
+ **container_name** | **String**| Name of the Blob container within the Azure Blob Storage account |
272
+ **blob_path** | **String**| Path to the blob within the container, such as 'hello.pdf' or '/folder/subfolder/world.pdf' |
273
+ **allow_executables** | **BOOLEAN**| Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended). | [optional]
274
+ **allow_invalid_files** | **BOOLEAN**| Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended). | [optional]
275
+ **allow_scripts** | **BOOLEAN**| Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended). | [optional]
276
+ **allow_password_protected_files** | **BOOLEAN**| Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended). | [optional]
277
+ **allow_macros** | **BOOLEAN**| Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended). | [optional]
278
+ **restrict_file_types** | **String**| Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult=false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled. | [optional]
279
+
280
+ ### Return type
281
+
282
+ [**CloudStorageAdvancedVirusScanResult**](CloudStorageAdvancedVirusScanResult.md)
283
+
284
+ ### Authorization
285
+
286
+ [Apikey](../README.md#Apikey)
287
+
288
+ ### HTTP request headers
289
+
290
+ - **Content-Type**: multipart/form-data
291
+ - **Accept**: application/json, text/json, application/xml, text/xml
292
+
293
+
294
+
138
295
  # **scan_cloud_storage_scan_gcp_storage_file**
139
296
  > CloudStorageVirusScanResult scan_cloud_storage_scan_gcp_storage_file(bucket_name, object_name, json_credential_file)
140
297
 
@@ -195,3 +352,77 @@ Name | Type | Description | Notes
195
352
 
196
353
 
197
354
 
355
+ # **scan_cloud_storage_scan_gcp_storage_file_advanced**
356
+ > CloudStorageAdvancedVirusScanResult scan_cloud_storage_scan_gcp_storage_file_advanced(bucket_name, object_name, json_credential_file, opts)
357
+
358
+ Advanced Scan an Google Cloud Platform (GCP) Storage file for viruses
359
+
360
+ Advanced Scan the contents of a single Google Cloud Platform (GCP) Storage file and its content for viruses and threats. Advanced Scan files with 360-degree Content Protection across Viruses and Malware, executables, invalid files, scripts, and even restrictions on accepted file types with complete content verification. Customize threat rules to your needs. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Block threats beyond viruses including executables, scripts, invalid files, and more. Optionally limit input files to a specific set of file types (e.g. PDF and Word Documents only). Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
361
+
362
+ ### Example
363
+ ```ruby
364
+ # load the gem
365
+ require 'cloudmersive-virus-scan-api-client'
366
+ # setup authorization
367
+ CloudmersiveVirusScanApiClient.configure do |config|
368
+ # Configure API key authorization: Apikey
369
+ config.api_key['Apikey'] = 'YOUR API KEY'
370
+ # Uncomment the following line to set a prefix for the API key, e.g. 'Bearer' (defaults to nil)
371
+ #config.api_key_prefix['Apikey'] = 'Bearer'
372
+ end
373
+
374
+ api_instance = CloudmersiveVirusScanApiClient::ScanCloudStorageApi.new
375
+
376
+ bucket_name = 'bucket_name_example' # String | Name of the bucket in Google Cloud Storage
377
+
378
+ object_name = 'object_name_example' # String | Name of the object or file in Google Cloud Storage
379
+
380
+ json_credential_file = File.new('/path/to/file.txt') # File | Service Account credential for Google Cloud stored in a JSON file.
381
+
382
+ opts = {
383
+ allow_executables: true, # BOOLEAN | Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended).
384
+ allow_invalid_files: true, # BOOLEAN | Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended).
385
+ allow_scripts: true, # BOOLEAN | Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended).
386
+ allow_password_protected_files: true, # BOOLEAN | Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended).
387
+ allow_macros: true, # BOOLEAN | Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended).
388
+ restrict_file_types: 'restrict_file_types_example' # String | Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult=false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled.
389
+ }
390
+
391
+ begin
392
+ #Advanced Scan an Google Cloud Platform (GCP) Storage file for viruses
393
+ result = api_instance.scan_cloud_storage_scan_gcp_storage_file_advanced(bucket_name, object_name, json_credential_file, opts)
394
+ p result
395
+ rescue CloudmersiveVirusScanApiClient::ApiError => e
396
+ puts "Exception when calling ScanCloudStorageApi->scan_cloud_storage_scan_gcp_storage_file_advanced: #{e}"
397
+ end
398
+ ```
399
+
400
+ ### Parameters
401
+
402
+ Name | Type | Description | Notes
403
+ ------------- | ------------- | ------------- | -------------
404
+ **bucket_name** | **String**| Name of the bucket in Google Cloud Storage |
405
+ **object_name** | **String**| Name of the object or file in Google Cloud Storage |
406
+ **json_credential_file** | **File**| Service Account credential for Google Cloud stored in a JSON file. |
407
+ **allow_executables** | **BOOLEAN**| Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended). | [optional]
408
+ **allow_invalid_files** | **BOOLEAN**| Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended). | [optional]
409
+ **allow_scripts** | **BOOLEAN**| Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended). | [optional]
410
+ **allow_password_protected_files** | **BOOLEAN**| Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended). | [optional]
411
+ **allow_macros** | **BOOLEAN**| Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended). | [optional]
412
+ **restrict_file_types** | **String**| Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult=false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled. | [optional]
413
+
414
+ ### Return type
415
+
416
+ [**CloudStorageAdvancedVirusScanResult**](CloudStorageAdvancedVirusScanResult.md)
417
+
418
+ ### Authorization
419
+
420
+ [Apikey](../README.md#Apikey)
421
+
422
+ ### HTTP request headers
423
+
424
+ - **Content-Type**: multipart/form-data
425
+ - **Accept**: application/json, text/json, application/xml, text/xml
426
+
427
+
428
+
@@ -102,6 +102,107 @@ module CloudmersiveVirusScanApiClient
102
102
  end
103
103
  return data, status_code, headers
104
104
  end
105
+ # Advanced Scan an AWS S3 file for viruses
106
+ # Advanced Scan the contents of a single AWS S3 file and its content for viruses and threats. Advanced Scan files with 360-degree Content Protection across Viruses and Malware, executables, invalid files, scripts, and even restrictions on accepted file types with complete content verification. Customize threat rules to your needs. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Block threats beyond viruses including executables, scripts, invalid files, and more. Optionally limit input files to a specific set of file types (e.g. PDF and Word Documents only). Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
107
+ # @param access_key AWS S3 access key for the S3 bucket; you can get this from My Security Credentials in the AWS console
108
+ # @param secret_key AWS S3 secret key for the S3 bucket; you can get this from My Security Credentials in the AWS console
109
+ # @param bucket_region Name of the region of the S3 bucket, such as 'US-East-1'
110
+ # @param bucket_name Name of the S3 bucket
111
+ # @param key_name Key name (also called file name) of the file in S3 that you wish to scan for viruses
112
+ # @param [Hash] opts the optional parameters
113
+ # @option opts [BOOLEAN] :allow_executables Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended).
114
+ # @option opts [BOOLEAN] :allow_invalid_files Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended).
115
+ # @option opts [BOOLEAN] :allow_scripts Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended).
116
+ # @option opts [BOOLEAN] :allow_password_protected_files Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended).
117
+ # @option opts [BOOLEAN] :allow_macros Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended).
118
+ # @option opts [String] :restrict_file_types Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult=false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled.
119
+ # @return [CloudStorageAdvancedVirusScanResult]
120
+ def scan_cloud_storage_scan_aws_s3_file_advanced(access_key, secret_key, bucket_region, bucket_name, key_name, opts = {})
121
+ data, _status_code, _headers = scan_cloud_storage_scan_aws_s3_file_advanced_with_http_info(access_key, secret_key, bucket_region, bucket_name, key_name, opts)
122
+ data
123
+ end
124
+
125
+ # Advanced Scan an AWS S3 file for viruses
126
+ # Advanced Scan the contents of a single AWS S3 file and its content for viruses and threats. Advanced Scan files with 360-degree Content Protection across Viruses and Malware, executables, invalid files, scripts, and even restrictions on accepted file types with complete content verification. Customize threat rules to your needs. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Block threats beyond viruses including executables, scripts, invalid files, and more. Optionally limit input files to a specific set of file types (e.g. PDF and Word Documents only). Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
127
+ # @param access_key AWS S3 access key for the S3 bucket; you can get this from My Security Credentials in the AWS console
128
+ # @param secret_key AWS S3 secret key for the S3 bucket; you can get this from My Security Credentials in the AWS console
129
+ # @param bucket_region Name of the region of the S3 bucket, such as 'US-East-1'
130
+ # @param bucket_name Name of the S3 bucket
131
+ # @param key_name Key name (also called file name) of the file in S3 that you wish to scan for viruses
132
+ # @param [Hash] opts the optional parameters
133
+ # @option opts [BOOLEAN] :allow_executables Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended).
134
+ # @option opts [BOOLEAN] :allow_invalid_files Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended).
135
+ # @option opts [BOOLEAN] :allow_scripts Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended).
136
+ # @option opts [BOOLEAN] :allow_password_protected_files Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended).
137
+ # @option opts [BOOLEAN] :allow_macros Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended).
138
+ # @option opts [String] :restrict_file_types Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult=false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled.
139
+ # @return [Array<(CloudStorageAdvancedVirusScanResult, Fixnum, Hash)>] CloudStorageAdvancedVirusScanResult data, response status code and response headers
140
+ def scan_cloud_storage_scan_aws_s3_file_advanced_with_http_info(access_key, secret_key, bucket_region, bucket_name, key_name, opts = {})
141
+ if @api_client.config.debugging
142
+ @api_client.config.logger.debug 'Calling API: ScanCloudStorageApi.scan_cloud_storage_scan_aws_s3_file_advanced ...'
143
+ end
144
+ # verify the required parameter 'access_key' is set
145
+ if @api_client.config.client_side_validation && access_key.nil?
146
+ fail ArgumentError, "Missing the required parameter 'access_key' when calling ScanCloudStorageApi.scan_cloud_storage_scan_aws_s3_file_advanced"
147
+ end
148
+ # verify the required parameter 'secret_key' is set
149
+ if @api_client.config.client_side_validation && secret_key.nil?
150
+ fail ArgumentError, "Missing the required parameter 'secret_key' when calling ScanCloudStorageApi.scan_cloud_storage_scan_aws_s3_file_advanced"
151
+ end
152
+ # verify the required parameter 'bucket_region' is set
153
+ if @api_client.config.client_side_validation && bucket_region.nil?
154
+ fail ArgumentError, "Missing the required parameter 'bucket_region' when calling ScanCloudStorageApi.scan_cloud_storage_scan_aws_s3_file_advanced"
155
+ end
156
+ # verify the required parameter 'bucket_name' is set
157
+ if @api_client.config.client_side_validation && bucket_name.nil?
158
+ fail ArgumentError, "Missing the required parameter 'bucket_name' when calling ScanCloudStorageApi.scan_cloud_storage_scan_aws_s3_file_advanced"
159
+ end
160
+ # verify the required parameter 'key_name' is set
161
+ if @api_client.config.client_side_validation && key_name.nil?
162
+ fail ArgumentError, "Missing the required parameter 'key_name' when calling ScanCloudStorageApi.scan_cloud_storage_scan_aws_s3_file_advanced"
163
+ end
164
+ # resource path
165
+ local_var_path = '/virus/scan/cloud-storage/aws-s3/single/advanced'
166
+
167
+ # query parameters
168
+ query_params = {}
169
+
170
+ # header parameters
171
+ header_params = {}
172
+ # HTTP header 'Accept' (if needed)
173
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'text/json', 'application/xml', 'text/xml'])
174
+ # HTTP header 'Content-Type'
175
+ header_params['Content-Type'] = @api_client.select_header_content_type(['multipart/form-data'])
176
+ header_params[:'accessKey'] = access_key
177
+ header_params[:'secretKey'] = secret_key
178
+ header_params[:'bucketRegion'] = bucket_region
179
+ header_params[:'bucketName'] = bucket_name
180
+ header_params[:'keyName'] = key_name
181
+ header_params[:'allowExecutables'] = opts[:'allow_executables'] if !opts[:'allow_executables'].nil?
182
+ header_params[:'allowInvalidFiles'] = opts[:'allow_invalid_files'] if !opts[:'allow_invalid_files'].nil?
183
+ header_params[:'allowScripts'] = opts[:'allow_scripts'] if !opts[:'allow_scripts'].nil?
184
+ header_params[:'allowPasswordProtectedFiles'] = opts[:'allow_password_protected_files'] if !opts[:'allow_password_protected_files'].nil?
185
+ header_params[:'allowMacros'] = opts[:'allow_macros'] if !opts[:'allow_macros'].nil?
186
+ header_params[:'restrictFileTypes'] = opts[:'restrict_file_types'] if !opts[:'restrict_file_types'].nil?
187
+
188
+ # form parameters
189
+ form_params = {}
190
+
191
+ # http body (model)
192
+ post_body = nil
193
+ auth_names = ['Apikey']
194
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
195
+ :header_params => header_params,
196
+ :query_params => query_params,
197
+ :form_params => form_params,
198
+ :body => post_body,
199
+ :auth_names => auth_names,
200
+ :return_type => 'CloudStorageAdvancedVirusScanResult')
201
+ if @api_client.config.debugging
202
+ @api_client.config.logger.debug "API called: ScanCloudStorageApi#scan_cloud_storage_scan_aws_s3_file_advanced\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
203
+ end
204
+ return data, status_code, headers
205
+ end
105
206
  # Scan an Azure Blob for viruses
106
207
  # Scan the contents of a single Azure Blob and its content for viruses. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
107
208
  # @param connection_string Connection string for the Azure Blob Storage Account; you can get this connection string from the Access Keys tab of the Storage Account blade in the Azure Portal.
@@ -171,6 +272,93 @@ module CloudmersiveVirusScanApiClient
171
272
  end
172
273
  return data, status_code, headers
173
274
  end
275
+ # Advanced Scan an Azure Blob for viruses
276
+ # Advanced Scan the contents of a single Azure Blob and its content for viruses and threats. Advanced Scan files with 360-degree Content Protection across Viruses and Malware, executables, invalid files, scripts, and even restrictions on accepted file types with complete content verification. Customize threat rules to your needs. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Block threats beyond viruses including executables, scripts, invalid files, and more. Optionally limit input files to a specific set of file types (e.g. PDF and Word Documents only). Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
277
+ # @param connection_string Connection string for the Azure Blob Storage Account; you can get this connection string from the Access Keys tab of the Storage Account blade in the Azure Portal.
278
+ # @param container_name Name of the Blob container within the Azure Blob Storage account
279
+ # @param blob_path Path to the blob within the container, such as &#39;hello.pdf&#39; or &#39;/folder/subfolder/world.pdf&#39;
280
+ # @param [Hash] opts the optional parameters
281
+ # @option opts [BOOLEAN] :allow_executables Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended).
282
+ # @option opts [BOOLEAN] :allow_invalid_files Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended).
283
+ # @option opts [BOOLEAN] :allow_scripts Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended).
284
+ # @option opts [BOOLEAN] :allow_password_protected_files Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended).
285
+ # @option opts [BOOLEAN] :allow_macros Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended).
286
+ # @option opts [String] :restrict_file_types Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult&#x3D;false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled.
287
+ # @return [CloudStorageAdvancedVirusScanResult]
288
+ def scan_cloud_storage_scan_azure_blob_advanced(connection_string, container_name, blob_path, opts = {})
289
+ data, _status_code, _headers = scan_cloud_storage_scan_azure_blob_advanced_with_http_info(connection_string, container_name, blob_path, opts)
290
+ data
291
+ end
292
+
293
+ # Advanced Scan an Azure Blob for viruses
294
+ # Advanced Scan the contents of a single Azure Blob and its content for viruses and threats. Advanced Scan files with 360-degree Content Protection across Viruses and Malware, executables, invalid files, scripts, and even restrictions on accepted file types with complete content verification. Customize threat rules to your needs. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Block threats beyond viruses including executables, scripts, invalid files, and more. Optionally limit input files to a specific set of file types (e.g. PDF and Word Documents only). Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
295
+ # @param connection_string Connection string for the Azure Blob Storage Account; you can get this connection string from the Access Keys tab of the Storage Account blade in the Azure Portal.
296
+ # @param container_name Name of the Blob container within the Azure Blob Storage account
297
+ # @param blob_path Path to the blob within the container, such as &#39;hello.pdf&#39; or &#39;/folder/subfolder/world.pdf&#39;
298
+ # @param [Hash] opts the optional parameters
299
+ # @option opts [BOOLEAN] :allow_executables Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended).
300
+ # @option opts [BOOLEAN] :allow_invalid_files Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended).
301
+ # @option opts [BOOLEAN] :allow_scripts Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended).
302
+ # @option opts [BOOLEAN] :allow_password_protected_files Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended).
303
+ # @option opts [BOOLEAN] :allow_macros Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended).
304
+ # @option opts [String] :restrict_file_types Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult&#x3D;false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled.
305
+ # @return [Array<(CloudStorageAdvancedVirusScanResult, Fixnum, Hash)>] CloudStorageAdvancedVirusScanResult data, response status code and response headers
306
+ def scan_cloud_storage_scan_azure_blob_advanced_with_http_info(connection_string, container_name, blob_path, opts = {})
307
+ if @api_client.config.debugging
308
+ @api_client.config.logger.debug 'Calling API: ScanCloudStorageApi.scan_cloud_storage_scan_azure_blob_advanced ...'
309
+ end
310
+ # verify the required parameter 'connection_string' is set
311
+ if @api_client.config.client_side_validation && connection_string.nil?
312
+ fail ArgumentError, "Missing the required parameter 'connection_string' when calling ScanCloudStorageApi.scan_cloud_storage_scan_azure_blob_advanced"
313
+ end
314
+ # verify the required parameter 'container_name' is set
315
+ if @api_client.config.client_side_validation && container_name.nil?
316
+ fail ArgumentError, "Missing the required parameter 'container_name' when calling ScanCloudStorageApi.scan_cloud_storage_scan_azure_blob_advanced"
317
+ end
318
+ # verify the required parameter 'blob_path' is set
319
+ if @api_client.config.client_side_validation && blob_path.nil?
320
+ fail ArgumentError, "Missing the required parameter 'blob_path' when calling ScanCloudStorageApi.scan_cloud_storage_scan_azure_blob_advanced"
321
+ end
322
+ # resource path
323
+ local_var_path = '/virus/scan/cloud-storage/azure-blob/single/advanced'
324
+
325
+ # query parameters
326
+ query_params = {}
327
+
328
+ # header parameters
329
+ header_params = {}
330
+ # HTTP header 'Accept' (if needed)
331
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'text/json', 'application/xml', 'text/xml'])
332
+ # HTTP header 'Content-Type'
333
+ header_params['Content-Type'] = @api_client.select_header_content_type(['multipart/form-data'])
334
+ header_params[:'connectionString'] = connection_string
335
+ header_params[:'containerName'] = container_name
336
+ header_params[:'blobPath'] = blob_path
337
+ header_params[:'allowExecutables'] = opts[:'allow_executables'] if !opts[:'allow_executables'].nil?
338
+ header_params[:'allowInvalidFiles'] = opts[:'allow_invalid_files'] if !opts[:'allow_invalid_files'].nil?
339
+ header_params[:'allowScripts'] = opts[:'allow_scripts'] if !opts[:'allow_scripts'].nil?
340
+ header_params[:'allowPasswordProtectedFiles'] = opts[:'allow_password_protected_files'] if !opts[:'allow_password_protected_files'].nil?
341
+ header_params[:'allowMacros'] = opts[:'allow_macros'] if !opts[:'allow_macros'].nil?
342
+ header_params[:'restrictFileTypes'] = opts[:'restrict_file_types'] if !opts[:'restrict_file_types'].nil?
343
+
344
+ # form parameters
345
+ form_params = {}
346
+
347
+ # http body (model)
348
+ post_body = nil
349
+ auth_names = ['Apikey']
350
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
351
+ :header_params => header_params,
352
+ :query_params => query_params,
353
+ :form_params => form_params,
354
+ :body => post_body,
355
+ :auth_names => auth_names,
356
+ :return_type => 'CloudStorageAdvancedVirusScanResult')
357
+ if @api_client.config.debugging
358
+ @api_client.config.logger.debug "API called: ScanCloudStorageApi#scan_cloud_storage_scan_azure_blob_advanced\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
359
+ end
360
+ return data, status_code, headers
361
+ end
174
362
  # Scan an Google Cloud Platform (GCP) Storage file for viruses
175
363
  # Scan the contents of a single Google Cloud Platform (GCP) Storage file and its content for viruses. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
176
364
  # @param bucket_name Name of the bucket in Google Cloud Storage
@@ -240,5 +428,92 @@ module CloudmersiveVirusScanApiClient
240
428
  end
241
429
  return data, status_code, headers
242
430
  end
431
+ # Advanced Scan an Google Cloud Platform (GCP) Storage file for viruses
432
+ # Advanced Scan the contents of a single Google Cloud Platform (GCP) Storage file and its content for viruses and threats. Advanced Scan files with 360-degree Content Protection across Viruses and Malware, executables, invalid files, scripts, and even restrictions on accepted file types with complete content verification. Customize threat rules to your needs. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Block threats beyond viruses including executables, scripts, invalid files, and more. Optionally limit input files to a specific set of file types (e.g. PDF and Word Documents only). Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
433
+ # @param bucket_name Name of the bucket in Google Cloud Storage
434
+ # @param object_name Name of the object or file in Google Cloud Storage
435
+ # @param json_credential_file Service Account credential for Google Cloud stored in a JSON file.
436
+ # @param [Hash] opts the optional parameters
437
+ # @option opts [BOOLEAN] :allow_executables Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended).
438
+ # @option opts [BOOLEAN] :allow_invalid_files Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended).
439
+ # @option opts [BOOLEAN] :allow_scripts Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended).
440
+ # @option opts [BOOLEAN] :allow_password_protected_files Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended).
441
+ # @option opts [BOOLEAN] :allow_macros Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended).
442
+ # @option opts [String] :restrict_file_types Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult&#x3D;false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled.
443
+ # @return [CloudStorageAdvancedVirusScanResult]
444
+ def scan_cloud_storage_scan_gcp_storage_file_advanced(bucket_name, object_name, json_credential_file, opts = {})
445
+ data, _status_code, _headers = scan_cloud_storage_scan_gcp_storage_file_advanced_with_http_info(bucket_name, object_name, json_credential_file, opts)
446
+ data
447
+ end
448
+
449
+ # Advanced Scan an Google Cloud Platform (GCP) Storage file for viruses
450
+ # Advanced Scan the contents of a single Google Cloud Platform (GCP) Storage file and its content for viruses and threats. Advanced Scan files with 360-degree Content Protection across Viruses and Malware, executables, invalid files, scripts, and even restrictions on accepted file types with complete content verification. Customize threat rules to your needs. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Block threats beyond viruses including executables, scripts, invalid files, and more. Optionally limit input files to a specific set of file types (e.g. PDF and Word Documents only). Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
451
+ # @param bucket_name Name of the bucket in Google Cloud Storage
452
+ # @param object_name Name of the object or file in Google Cloud Storage
453
+ # @param json_credential_file Service Account credential for Google Cloud stored in a JSON file.
454
+ # @param [Hash] opts the optional parameters
455
+ # @option opts [BOOLEAN] :allow_executables Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended).
456
+ # @option opts [BOOLEAN] :allow_invalid_files Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended).
457
+ # @option opts [BOOLEAN] :allow_scripts Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended).
458
+ # @option opts [BOOLEAN] :allow_password_protected_files Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended).
459
+ # @option opts [BOOLEAN] :allow_macros Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended).
460
+ # @option opts [String] :restrict_file_types Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult&#x3D;false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled.
461
+ # @return [Array<(CloudStorageAdvancedVirusScanResult, Fixnum, Hash)>] CloudStorageAdvancedVirusScanResult data, response status code and response headers
462
+ def scan_cloud_storage_scan_gcp_storage_file_advanced_with_http_info(bucket_name, object_name, json_credential_file, opts = {})
463
+ if @api_client.config.debugging
464
+ @api_client.config.logger.debug 'Calling API: ScanCloudStorageApi.scan_cloud_storage_scan_gcp_storage_file_advanced ...'
465
+ end
466
+ # verify the required parameter 'bucket_name' is set
467
+ if @api_client.config.client_side_validation && bucket_name.nil?
468
+ fail ArgumentError, "Missing the required parameter 'bucket_name' when calling ScanCloudStorageApi.scan_cloud_storage_scan_gcp_storage_file_advanced"
469
+ end
470
+ # verify the required parameter 'object_name' is set
471
+ if @api_client.config.client_side_validation && object_name.nil?
472
+ fail ArgumentError, "Missing the required parameter 'object_name' when calling ScanCloudStorageApi.scan_cloud_storage_scan_gcp_storage_file_advanced"
473
+ end
474
+ # verify the required parameter 'json_credential_file' is set
475
+ if @api_client.config.client_side_validation && json_credential_file.nil?
476
+ fail ArgumentError, "Missing the required parameter 'json_credential_file' when calling ScanCloudStorageApi.scan_cloud_storage_scan_gcp_storage_file_advanced"
477
+ end
478
+ # resource path
479
+ local_var_path = '/virus/scan/cloud-storage/gcp-storage/single/advanced'
480
+
481
+ # query parameters
482
+ query_params = {}
483
+
484
+ # header parameters
485
+ header_params = {}
486
+ # HTTP header 'Accept' (if needed)
487
+ header_params['Accept'] = @api_client.select_header_accept(['application/json', 'text/json', 'application/xml', 'text/xml'])
488
+ # HTTP header 'Content-Type'
489
+ header_params['Content-Type'] = @api_client.select_header_content_type(['multipart/form-data'])
490
+ header_params[:'bucketName'] = bucket_name
491
+ header_params[:'objectName'] = object_name
492
+ header_params[:'allowExecutables'] = opts[:'allow_executables'] if !opts[:'allow_executables'].nil?
493
+ header_params[:'allowInvalidFiles'] = opts[:'allow_invalid_files'] if !opts[:'allow_invalid_files'].nil?
494
+ header_params[:'allowScripts'] = opts[:'allow_scripts'] if !opts[:'allow_scripts'].nil?
495
+ header_params[:'allowPasswordProtectedFiles'] = opts[:'allow_password_protected_files'] if !opts[:'allow_password_protected_files'].nil?
496
+ header_params[:'allowMacros'] = opts[:'allow_macros'] if !opts[:'allow_macros'].nil?
497
+ header_params[:'restrictFileTypes'] = opts[:'restrict_file_types'] if !opts[:'restrict_file_types'].nil?
498
+
499
+ # form parameters
500
+ form_params = {}
501
+ form_params['jsonCredentialFile'] = json_credential_file
502
+
503
+ # http body (model)
504
+ post_body = nil
505
+ auth_names = ['Apikey']
506
+ data, status_code, headers = @api_client.call_api(:POST, local_var_path,
507
+ :header_params => header_params,
508
+ :query_params => query_params,
509
+ :form_params => form_params,
510
+ :body => post_body,
511
+ :auth_names => auth_names,
512
+ :return_type => 'CloudStorageAdvancedVirusScanResult')
513
+ if @api_client.config.debugging
514
+ @api_client.config.logger.debug "API called: ScanCloudStorageApi#scan_cloud_storage_scan_gcp_storage_file_advanced\nData: #{data.inspect}\nStatus code: #{status_code}\nHeaders: #{headers}"
515
+ end
516
+ return data, status_code, headers
517
+ end
243
518
  end
244
519
  end
@@ -0,0 +1,298 @@
1
+ =begin
2
+ #virusapi
3
+
4
+ #The Cloudmersive Virus Scan API lets you scan files and content for viruses and identify security issues with content.
5
+
6
+ OpenAPI spec version: v1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.14
10
+
11
+ =end
12
+
13
+ require 'date'
14
+
15
+ module CloudmersiveVirusScanApiClient
16
+ # Result of running an advanced virus scan on cloud storage
17
+ class CloudStorageAdvancedVirusScanResult
18
+ # True if the operation of retrieving the file, and scanning it were successfully completed, false if the file could not be downloaded from cloud storage, or if the file could not be scanned. Note that successful completion does not mean the file is clean; for the output of the virus scanning operation itself, use the CleanResult and FoundViruses parameters.
19
+ attr_accessor :successful
20
+
21
+ # True if the scan contained no viruses, false otherwise
22
+ attr_accessor :clean_result
23
+
24
+ # True if the scan contained an executable (application code), which can be a significant risk factor
25
+ attr_accessor :contains_executable
26
+
27
+ # True if the scan contained an invalid file (such as a PDF that is not a valid PDF, Word Document that is not a valid Word Document, etc.), which can be a significant risk factor
28
+ attr_accessor :contains_invalid_file
29
+
30
+ # True if the scan contained a script (such as a PHP script, Python script, etc.) which can be a significant risk factor
31
+ attr_accessor :contains_script
32
+
33
+ # True if the scan contained a password protected or encrypted file, which can be a significant risk factor
34
+ attr_accessor :contains_password_protected_file
35
+
36
+ # True if the uploaded file is of a type that is not allowed based on the optional restrictFileTypes parameter, false otherwise; if restrictFileTypes is not set, this will always be false
37
+ attr_accessor :contains_restricted_file_format
38
+
39
+ # True if the uploaded file contains embedded Macros of other embedded threats within the document, which can be a significant risk factor
40
+ attr_accessor :contains_macros
41
+
42
+ # For file format verification-supported file formats, the contents-verified file format of the file. Null indicates that the file format is not supported for contents verification. If a Virus or Malware is found, this field will always be set to Null.
43
+ attr_accessor :verified_file_format
44
+
45
+ # Array of viruses found, if any
46
+ attr_accessor :found_viruses
47
+
48
+ # Detailed error message if the operation was not successful
49
+ attr_accessor :error_detailed_description
50
+
51
+ # Size in bytes of the file that was retrieved and scanned
52
+ attr_accessor :file_size
53
+
54
+ # Attribute mapping from ruby-style variable name to JSON key.
55
+ def self.attribute_map
56
+ {
57
+ :'successful' => :'Successful',
58
+ :'clean_result' => :'CleanResult',
59
+ :'contains_executable' => :'ContainsExecutable',
60
+ :'contains_invalid_file' => :'ContainsInvalidFile',
61
+ :'contains_script' => :'ContainsScript',
62
+ :'contains_password_protected_file' => :'ContainsPasswordProtectedFile',
63
+ :'contains_restricted_file_format' => :'ContainsRestrictedFileFormat',
64
+ :'contains_macros' => :'ContainsMacros',
65
+ :'verified_file_format' => :'VerifiedFileFormat',
66
+ :'found_viruses' => :'FoundViruses',
67
+ :'error_detailed_description' => :'ErrorDetailedDescription',
68
+ :'file_size' => :'FileSize'
69
+ }
70
+ end
71
+
72
+ # Attribute type mapping.
73
+ def self.swagger_types
74
+ {
75
+ :'successful' => :'BOOLEAN',
76
+ :'clean_result' => :'BOOLEAN',
77
+ :'contains_executable' => :'BOOLEAN',
78
+ :'contains_invalid_file' => :'BOOLEAN',
79
+ :'contains_script' => :'BOOLEAN',
80
+ :'contains_password_protected_file' => :'BOOLEAN',
81
+ :'contains_restricted_file_format' => :'BOOLEAN',
82
+ :'contains_macros' => :'BOOLEAN',
83
+ :'verified_file_format' => :'String',
84
+ :'found_viruses' => :'Array<CloudStorageVirusFound>',
85
+ :'error_detailed_description' => :'String',
86
+ :'file_size' => :'Integer'
87
+ }
88
+ end
89
+
90
+ # Initializes the object
91
+ # @param [Hash] attributes Model attributes in the form of hash
92
+ def initialize(attributes = {})
93
+ return unless attributes.is_a?(Hash)
94
+
95
+ # convert string to symbol for hash key
96
+ attributes = attributes.each_with_object({}) { |(k, v), h| h[k.to_sym] = v }
97
+
98
+ if attributes.has_key?(:'Successful')
99
+ self.successful = attributes[:'Successful']
100
+ end
101
+
102
+ if attributes.has_key?(:'CleanResult')
103
+ self.clean_result = attributes[:'CleanResult']
104
+ end
105
+
106
+ if attributes.has_key?(:'ContainsExecutable')
107
+ self.contains_executable = attributes[:'ContainsExecutable']
108
+ end
109
+
110
+ if attributes.has_key?(:'ContainsInvalidFile')
111
+ self.contains_invalid_file = attributes[:'ContainsInvalidFile']
112
+ end
113
+
114
+ if attributes.has_key?(:'ContainsScript')
115
+ self.contains_script = attributes[:'ContainsScript']
116
+ end
117
+
118
+ if attributes.has_key?(:'ContainsPasswordProtectedFile')
119
+ self.contains_password_protected_file = attributes[:'ContainsPasswordProtectedFile']
120
+ end
121
+
122
+ if attributes.has_key?(:'ContainsRestrictedFileFormat')
123
+ self.contains_restricted_file_format = attributes[:'ContainsRestrictedFileFormat']
124
+ end
125
+
126
+ if attributes.has_key?(:'ContainsMacros')
127
+ self.contains_macros = attributes[:'ContainsMacros']
128
+ end
129
+
130
+ if attributes.has_key?(:'VerifiedFileFormat')
131
+ self.verified_file_format = attributes[:'VerifiedFileFormat']
132
+ end
133
+
134
+ if attributes.has_key?(:'FoundViruses')
135
+ if (value = attributes[:'FoundViruses']).is_a?(Array)
136
+ self.found_viruses = value
137
+ end
138
+ end
139
+
140
+ if attributes.has_key?(:'ErrorDetailedDescription')
141
+ self.error_detailed_description = attributes[:'ErrorDetailedDescription']
142
+ end
143
+
144
+ if attributes.has_key?(:'FileSize')
145
+ self.file_size = attributes[:'FileSize']
146
+ end
147
+ end
148
+
149
+ # Show invalid properties with the reasons. Usually used together with valid?
150
+ # @return Array for valid properties with the reasons
151
+ def list_invalid_properties
152
+ invalid_properties = Array.new
153
+ invalid_properties
154
+ end
155
+
156
+ # Check to see if the all the properties in the model are valid
157
+ # @return true if the model is valid
158
+ def valid?
159
+ true
160
+ end
161
+
162
+ # Checks equality by comparing each attribute.
163
+ # @param [Object] Object to be compared
164
+ def ==(o)
165
+ return true if self.equal?(o)
166
+ self.class == o.class &&
167
+ successful == o.successful &&
168
+ clean_result == o.clean_result &&
169
+ contains_executable == o.contains_executable &&
170
+ contains_invalid_file == o.contains_invalid_file &&
171
+ contains_script == o.contains_script &&
172
+ contains_password_protected_file == o.contains_password_protected_file &&
173
+ contains_restricted_file_format == o.contains_restricted_file_format &&
174
+ contains_macros == o.contains_macros &&
175
+ verified_file_format == o.verified_file_format &&
176
+ found_viruses == o.found_viruses &&
177
+ error_detailed_description == o.error_detailed_description &&
178
+ file_size == o.file_size
179
+ end
180
+
181
+ # @see the `==` method
182
+ # @param [Object] Object to be compared
183
+ def eql?(o)
184
+ self == o
185
+ end
186
+
187
+ # Calculates hash code according to all attributes.
188
+ # @return [Fixnum] Hash code
189
+ def hash
190
+ [successful, clean_result, contains_executable, contains_invalid_file, contains_script, contains_password_protected_file, contains_restricted_file_format, contains_macros, verified_file_format, found_viruses, error_detailed_description, file_size].hash
191
+ end
192
+
193
+ # Builds the object from hash
194
+ # @param [Hash] attributes Model attributes in the form of hash
195
+ # @return [Object] Returns the model itself
196
+ def build_from_hash(attributes)
197
+ return nil unless attributes.is_a?(Hash)
198
+ self.class.swagger_types.each_pair do |key, type|
199
+ if type =~ /\AArray<(.*)>/i
200
+ # check to ensure the input is an array given that the attribute
201
+ # is documented as an array but the input is not
202
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
203
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map { |v| _deserialize($1, v) })
204
+ end
205
+ elsif !attributes[self.class.attribute_map[key]].nil?
206
+ self.send("#{key}=", _deserialize(type, attributes[self.class.attribute_map[key]]))
207
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
208
+ end
209
+
210
+ self
211
+ end
212
+
213
+ # Deserializes the data based on type
214
+ # @param string type Data type
215
+ # @param string value Value to be deserialized
216
+ # @return [Object] Deserialized data
217
+ def _deserialize(type, value)
218
+ case type.to_sym
219
+ when :DateTime
220
+ DateTime.parse(value)
221
+ when :Date
222
+ Date.parse(value)
223
+ when :String
224
+ value.to_s
225
+ when :Integer
226
+ value.to_i
227
+ when :Float
228
+ value.to_f
229
+ when :BOOLEAN
230
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
231
+ true
232
+ else
233
+ false
234
+ end
235
+ when :Object
236
+ # generic object (usually a Hash), return directly
237
+ value
238
+ when /\AArray<(?<inner_type>.+)>\z/
239
+ inner_type = Regexp.last_match[:inner_type]
240
+ value.map { |v| _deserialize(inner_type, v) }
241
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
242
+ k_type = Regexp.last_match[:k_type]
243
+ v_type = Regexp.last_match[:v_type]
244
+ {}.tap do |hash|
245
+ value.each do |k, v|
246
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
247
+ end
248
+ end
249
+ else # model
250
+ temp_model = CloudmersiveVirusScanApiClient.const_get(type).new
251
+ temp_model.build_from_hash(value)
252
+ end
253
+ end
254
+
255
+ # Returns the string representation of the object
256
+ # @return [String] String presentation of the object
257
+ def to_s
258
+ to_hash.to_s
259
+ end
260
+
261
+ # to_body is an alias to to_hash (backward compatibility)
262
+ # @return [Hash] Returns the object in the form of hash
263
+ def to_body
264
+ to_hash
265
+ end
266
+
267
+ # Returns the object in the form of hash
268
+ # @return [Hash] Returns the object in the form of hash
269
+ def to_hash
270
+ hash = {}
271
+ self.class.attribute_map.each_pair do |attr, param|
272
+ value = self.send(attr)
273
+ next if value.nil?
274
+ hash[param] = _to_hash(value)
275
+ end
276
+ hash
277
+ end
278
+
279
+ # Outputs non-array value in the form of hash
280
+ # For object, use to_hash. Otherwise, just return the value
281
+ # @param [Object] value Any valid value
282
+ # @return [Hash] Returns the value in the form of hash
283
+ def _to_hash(value)
284
+ if value.is_a?(Array)
285
+ value.compact.map { |v| _to_hash(v) }
286
+ elsif value.is_a?(Hash)
287
+ {}.tap do |hash|
288
+ value.each { |k, v| hash[k] = _to_hash(v) }
289
+ end
290
+ elsif value.respond_to? :to_hash
291
+ value.to_hash
292
+ else
293
+ value
294
+ end
295
+ end
296
+
297
+ end
298
+ end
@@ -11,5 +11,5 @@ Swagger Codegen version: 2.4.14
11
11
  =end
12
12
 
13
13
  module CloudmersiveVirusScanApiClient
14
- VERSION = '2.0.4'
14
+ VERSION = '2.0.5'
15
15
  end
@@ -17,6 +17,7 @@ require 'cloudmersive-virus-scan-api-client/version'
17
17
  require 'cloudmersive-virus-scan-api-client/configuration'
18
18
 
19
19
  # Models
20
+ require 'cloudmersive-virus-scan-api-client/models/cloud_storage_advanced_virus_scan_result'
20
21
  require 'cloudmersive-virus-scan-api-client/models/cloud_storage_virus_found'
21
22
  require 'cloudmersive-virus-scan-api-client/models/cloud_storage_virus_scan_result'
22
23
  require 'cloudmersive-virus-scan-api-client/models/virus_found'
@@ -48,6 +48,28 @@ describe 'ScanCloudStorageApi' do
48
48
  end
49
49
  end
50
50
 
51
+ # unit tests for scan_cloud_storage_scan_aws_s3_file_advanced
52
+ # Advanced Scan an AWS S3 file for viruses
53
+ # Advanced Scan the contents of a single AWS S3 file and its content for viruses and threats. Advanced Scan files with 360-degree Content Protection across Viruses and Malware, executables, invalid files, scripts, and even restrictions on accepted file types with complete content verification. Customize threat rules to your needs. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Block threats beyond viruses including executables, scripts, invalid files, and more. Optionally limit input files to a specific set of file types (e.g. PDF and Word Documents only). Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
54
+ # @param access_key AWS S3 access key for the S3 bucket; you can get this from My Security Credentials in the AWS console
55
+ # @param secret_key AWS S3 secret key for the S3 bucket; you can get this from My Security Credentials in the AWS console
56
+ # @param bucket_region Name of the region of the S3 bucket, such as &#39;US-East-1&#39;
57
+ # @param bucket_name Name of the S3 bucket
58
+ # @param key_name Key name (also called file name) of the file in S3 that you wish to scan for viruses
59
+ # @param [Hash] opts the optional parameters
60
+ # @option opts [BOOLEAN] :allow_executables Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended).
61
+ # @option opts [BOOLEAN] :allow_invalid_files Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended).
62
+ # @option opts [BOOLEAN] :allow_scripts Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended).
63
+ # @option opts [BOOLEAN] :allow_password_protected_files Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended).
64
+ # @option opts [BOOLEAN] :allow_macros Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended).
65
+ # @option opts [String] :restrict_file_types Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult&#x3D;false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled.
66
+ # @return [CloudStorageAdvancedVirusScanResult]
67
+ describe 'scan_cloud_storage_scan_aws_s3_file_advanced test' do
68
+ it 'should work' do
69
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
70
+ end
71
+ end
72
+
51
73
  # unit tests for scan_cloud_storage_scan_azure_blob
52
74
  # Scan an Azure Blob for viruses
53
75
  # Scan the contents of a single Azure Blob and its content for viruses. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
@@ -62,6 +84,26 @@ describe 'ScanCloudStorageApi' do
62
84
  end
63
85
  end
64
86
 
87
+ # unit tests for scan_cloud_storage_scan_azure_blob_advanced
88
+ # Advanced Scan an Azure Blob for viruses
89
+ # Advanced Scan the contents of a single Azure Blob and its content for viruses and threats. Advanced Scan files with 360-degree Content Protection across Viruses and Malware, executables, invalid files, scripts, and even restrictions on accepted file types with complete content verification. Customize threat rules to your needs. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Block threats beyond viruses including executables, scripts, invalid files, and more. Optionally limit input files to a specific set of file types (e.g. PDF and Word Documents only). Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
90
+ # @param connection_string Connection string for the Azure Blob Storage Account; you can get this connection string from the Access Keys tab of the Storage Account blade in the Azure Portal.
91
+ # @param container_name Name of the Blob container within the Azure Blob Storage account
92
+ # @param blob_path Path to the blob within the container, such as &#39;hello.pdf&#39; or &#39;/folder/subfolder/world.pdf&#39;
93
+ # @param [Hash] opts the optional parameters
94
+ # @option opts [BOOLEAN] :allow_executables Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended).
95
+ # @option opts [BOOLEAN] :allow_invalid_files Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended).
96
+ # @option opts [BOOLEAN] :allow_scripts Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended).
97
+ # @option opts [BOOLEAN] :allow_password_protected_files Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended).
98
+ # @option opts [BOOLEAN] :allow_macros Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended).
99
+ # @option opts [String] :restrict_file_types Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult&#x3D;false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled.
100
+ # @return [CloudStorageAdvancedVirusScanResult]
101
+ describe 'scan_cloud_storage_scan_azure_blob_advanced test' do
102
+ it 'should work' do
103
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
104
+ end
105
+ end
106
+
65
107
  # unit tests for scan_cloud_storage_scan_gcp_storage_file
66
108
  # Scan an Google Cloud Platform (GCP) Storage file for viruses
67
109
  # Scan the contents of a single Google Cloud Platform (GCP) Storage file and its content for viruses. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
@@ -76,4 +118,24 @@ describe 'ScanCloudStorageApi' do
76
118
  end
77
119
  end
78
120
 
121
+ # unit tests for scan_cloud_storage_scan_gcp_storage_file_advanced
122
+ # Advanced Scan an Google Cloud Platform (GCP) Storage file for viruses
123
+ # Advanced Scan the contents of a single Google Cloud Platform (GCP) Storage file and its content for viruses and threats. Advanced Scan files with 360-degree Content Protection across Viruses and Malware, executables, invalid files, scripts, and even restrictions on accepted file types with complete content verification. Customize threat rules to your needs. Leverage continuously updated signatures for millions of threats, and advanced high-performance scanning capabilities. Over 17 million virus and malware signatures. Continuous cloud-based updates. Block threats beyond viruses including executables, scripts, invalid files, and more. Optionally limit input files to a specific set of file types (e.g. PDF and Word Documents only). Wide file format support including Office, PDF, HTML, Flash. Zip support including .Zip, .Rar, .DMG, .Tar, and other archive formats. Multi-threat scanning across viruses, malware, trojans, ransomware, and spyware. High-speed in-memory scanning delivers subsecond typical response time.
124
+ # @param bucket_name Name of the bucket in Google Cloud Storage
125
+ # @param object_name Name of the object or file in Google Cloud Storage
126
+ # @param json_credential_file Service Account credential for Google Cloud stored in a JSON file.
127
+ # @param [Hash] opts the optional parameters
128
+ # @option opts [BOOLEAN] :allow_executables Set to false to block executable files (program code) from being allowed in the input file. Default is false (recommended).
129
+ # @option opts [BOOLEAN] :allow_invalid_files Set to false to block invalid files, such as a PDF file that is not really a valid PDF file, or a Word Document that is not a valid Word Document. Default is false (recommended).
130
+ # @option opts [BOOLEAN] :allow_scripts Set to false to block script files, such as a PHP files, Python scripts, and other malicious content or security threats that can be embedded in the file. Set to true to allow these file types. Default is false (recommended).
131
+ # @option opts [BOOLEAN] :allow_password_protected_files Set to false to block password protected and encrypted files, such as encrypted zip and rar files, and other files that seek to circumvent scanning through passwords. Set to true to allow these file types. Default is false (recommended).
132
+ # @option opts [BOOLEAN] :allow_macros Set to false to block macros and other threats embedded in document files, such as Word, Excel and PowerPoint embedded Macros, and other files that contain embedded content threats. Set to true to allow these file types. Default is false (recommended).
133
+ # @option opts [String] :restrict_file_types Specify a restricted set of file formats to allow as clean as a comma-separated list of file formats, such as .pdf,.docx,.png would allow only PDF, PNG and Word document files. All files must pass content verification against this list of file formats, if they do not, then the result will be returned as CleanResult&#x3D;false. Set restrictFileTypes parameter to null or empty string to disable; default is disabled.
134
+ # @return [CloudStorageAdvancedVirusScanResult]
135
+ describe 'scan_cloud_storage_scan_gcp_storage_file_advanced test' do
136
+ it 'should work' do
137
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
138
+ end
139
+ end
140
+
79
141
  end
@@ -0,0 +1,107 @@
1
+ =begin
2
+ #virusapi
3
+
4
+ #The Cloudmersive Virus Scan API lets you scan files and content for viruses and identify security issues with content.
5
+
6
+ OpenAPI spec version: v1
7
+
8
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
9
+ Swagger Codegen version: 2.4.14
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+ require 'date'
16
+
17
+ # Unit tests for CloudmersiveVirusScanApiClient::CloudStorageAdvancedVirusScanResult
18
+ # Automatically generated by swagger-codegen (github.com/swagger-api/swagger-codegen)
19
+ # Please update as you see appropriate
20
+ describe 'CloudStorageAdvancedVirusScanResult' do
21
+ before do
22
+ # run before each test
23
+ @instance = CloudmersiveVirusScanApiClient::CloudStorageAdvancedVirusScanResult.new
24
+ end
25
+
26
+ after do
27
+ # run after each test
28
+ end
29
+
30
+ describe 'test an instance of CloudStorageAdvancedVirusScanResult' do
31
+ it 'should create an instance of CloudStorageAdvancedVirusScanResult' do
32
+ expect(@instance).to be_instance_of(CloudmersiveVirusScanApiClient::CloudStorageAdvancedVirusScanResult)
33
+ end
34
+ end
35
+ describe 'test attribute "successful"' do
36
+ it 'should work' do
37
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
38
+ end
39
+ end
40
+
41
+ describe 'test attribute "clean_result"' do
42
+ it 'should work' do
43
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
44
+ end
45
+ end
46
+
47
+ describe 'test attribute "contains_executable"' do
48
+ it 'should work' do
49
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
50
+ end
51
+ end
52
+
53
+ describe 'test attribute "contains_invalid_file"' do
54
+ it 'should work' do
55
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
56
+ end
57
+ end
58
+
59
+ describe 'test attribute "contains_script"' do
60
+ it 'should work' do
61
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
62
+ end
63
+ end
64
+
65
+ describe 'test attribute "contains_password_protected_file"' do
66
+ it 'should work' do
67
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
68
+ end
69
+ end
70
+
71
+ describe 'test attribute "contains_restricted_file_format"' do
72
+ it 'should work' do
73
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
74
+ end
75
+ end
76
+
77
+ describe 'test attribute "contains_macros"' do
78
+ it 'should work' do
79
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
80
+ end
81
+ end
82
+
83
+ describe 'test attribute "verified_file_format"' do
84
+ it 'should work' do
85
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
86
+ end
87
+ end
88
+
89
+ describe 'test attribute "found_viruses"' do
90
+ it 'should work' do
91
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
92
+ end
93
+ end
94
+
95
+ describe 'test attribute "error_detailed_description"' do
96
+ it 'should work' do
97
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
98
+ end
99
+ end
100
+
101
+ describe 'test attribute "file_size"' do
102
+ it 'should work' do
103
+ # assertion here. ref: https://www.relishapp.com/rspec/rspec-expectations/docs/built-in-matchers
104
+ end
105
+ end
106
+
107
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cloudmersive-virus-scan-api-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.4
4
+ version: 2.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cloudmersive
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-02-15 00:00:00.000000000 Z
11
+ date: 2021-06-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: typhoeus
@@ -202,6 +202,7 @@ files:
202
202
  - "./README.md"
203
203
  - "./Rakefile"
204
204
  - "./cloudmersive-virus-scan-api-client.gemspec"
205
+ - "./docs/CloudStorageAdvancedVirusScanResult.md"
205
206
  - "./docs/CloudStorageVirusFound.md"
206
207
  - "./docs/CloudStorageVirusScanResult.md"
207
208
  - "./docs/ScanApi.md"
@@ -218,6 +219,7 @@ files:
218
219
  - "./lib/cloudmersive-virus-scan-api-client/api_client.rb"
219
220
  - "./lib/cloudmersive-virus-scan-api-client/api_error.rb"
220
221
  - "./lib/cloudmersive-virus-scan-api-client/configuration.rb"
222
+ - "./lib/cloudmersive-virus-scan-api-client/models/cloud_storage_advanced_virus_scan_result.rb"
221
223
  - "./lib/cloudmersive-virus-scan-api-client/models/cloud_storage_virus_found.rb"
222
224
  - "./lib/cloudmersive-virus-scan-api-client/models/cloud_storage_virus_scan_result.rb"
223
225
  - "./lib/cloudmersive-virus-scan-api-client/models/virus_found.rb"
@@ -230,6 +232,7 @@ files:
230
232
  - "./spec/api/scan_cloud_storage_api_spec.rb"
231
233
  - "./spec/api_client_spec.rb"
232
234
  - "./spec/configuration_spec.rb"
235
+ - "./spec/models/cloud_storage_advanced_virus_scan_result_spec.rb"
233
236
  - "./spec/models/cloud_storage_virus_found_spec.rb"
234
237
  - "./spec/models/cloud_storage_virus_scan_result_spec.rb"
235
238
  - "./spec/models/virus_found_spec.rb"