Cloudmersive · Capability

virusapi — ScanCloudStorage

virusapi — ScanCloudStorage. 10 operations. Lead operation: Scan an AWS S3 file for viruses. Self-contained Naftiko capability covering one Cloudmersive business surface.

Run with Naftiko CloudmersiveScanCloudStorage

What You Can Do

POST
Scancloudstoragescanawss3file — Scan an AWS S3 file for viruses
/v1/virus/scan/cloud-storage/aws-s3/single
POST
Scancloudstoragescanawss3fileadvanced — Advanced Scan an AWS S3 file for viruses
/v1/virus/scan/cloud-storage/aws-s3/single/advanced
POST
Scancloudstoragescanazureblob — Scan an Azure Blob for viruses
/v1/virus/scan/cloud-storage/azure-blob/single
POST
Scancloudstoragescanazureblobadvanced — Advanced Scan an Azure Blob for viruses
/v1/virus/scan/cloud-storage/azure-blob/single/advanced
POST
Scancloudstoragescanazureblobadvancedbatchjob — Advanced Scan an Azure Blob for viruses via a batch job
/v1/virus/scan/cloud-storage/azure-blob/single/advanced/batch-job
GET
Scancloudstoragegetasyncjobstatus — Get the status and result of a Scan Cloud Storage Batch Job
/v1/virus/scan/cloud-storage/batch-job/status
POST
Scancloudstoragescangcpstoragefile — Scan an Google Cloud Platform (GCP) Storage file for viruses
/v1/virus/scan/cloud-storage/gcp-storage/single
POST
Scancloudstoragescangcpstoragefileadvanced — Advanced Scan an Google Cloud Platform (GCP) Storage file for viruses
/v1/virus/scan/cloud-storage/gcp-storage/single/advanced
POST
Scancloudstoragescansharepointonlinefileadvanced — Advanced Virus Scan a file in a SharePoint Online Site Drive
/v1/virus/scan/cloud-storage/sharepoint-online/site/advanced
POST
Scancloudstoragescansharepointonlinefile — Virus Scan a file in a SharePoint Online Site Drive
/v1/virus/scan/cloud-storage/sharepoint-online/site/single

MCP Tools

scan-aws-s3-file-viruses

Scan an AWS S3 file for viruses

advanced-scan-aws-s3-file

Advanced Scan an AWS S3 file for viruses

scan-azure-blob-viruses

Scan an Azure Blob for viruses

advanced-scan-azure-blob-viruses

Advanced Scan an Azure Blob for viruses

advanced-scan-azure-blob-viruses-2

Advanced Scan an Azure Blob for viruses via a batch job

get-status-and-result-scan

Get the status and result of a Scan Cloud Storage Batch Job

read-only idempotent
scan-google-cloud-platform-gcp

Scan an Google Cloud Platform (GCP) Storage file for viruses

advanced-scan-google-cloud-platform

Advanced Scan an Google Cloud Platform (GCP) Storage file for viruses

advanced-virus-scan-file-sharepoint

Advanced Virus Scan a file in a SharePoint Online Site Drive

virus-scan-file-sharepoint-online

Virus Scan a file in a SharePoint Online Site Drive

Capability Spec

virus-scan-scancloudstorage.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: virusapi — ScanCloudStorage
  description: 'virusapi — ScanCloudStorage. 10 operations. Lead operation: Scan an AWS S3 file for viruses. Self-contained
    Naftiko capability covering one Cloudmersive business surface.'
  tags:
  - Cloudmersive
  - ScanCloudStorage
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    CLOUDMERSIVE_API_KEY: CLOUDMERSIVE_API_KEY
capability:
  consumes:
  - type: http
    namespace: virus-scan-scancloudstorage
    baseUri: https://localhost
    description: virusapi — ScanCloudStorage business capability. Self-contained, no shared references.
    resources:
    - name: virus-scan-cloud-storage-aws-s3-single
      path: /virus/scan/cloud-storage/aws-s3/single
      operations:
      - name: scancloudstoragescanawss3file
        method: POST
        description: Scan an AWS S3 file for viruses
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: accessKey
          in: header
          type: string
          description: AWS S3 access key for the S3 bucket; you can get this from My Security Credentials in the AWS console
          required: true
        - name: secretKey
          in: header
          type: string
          description: AWS S3 secret key for the S3 bucket; you can get this from My Security Credentials in the AWS console
          required: true
        - name: bucketRegion
          in: header
          type: string
          description: Name of the region of the S3 bucket, such as 'US-East-1'
          required: true
        - name: bucketName
          in: header
          type: string
          description: Name of the S3 bucket
          required: true
        - name: keyName
          in: header
          type: string
          description: Key name (also called file name) of the file in S3 that you wish to scan for viruses.  If the key name
            contains Unicode characters, you must base64 encode the k
          required: true
        - name: roleArn
          in: header
          type: string
          description: 'Optional: Role ARN for STS Credential-based access.  This is for advanced access using the Security
            Token Service and is not required.  If the roleArn contains '
    - name: virus-scan-cloud-storage-aws-s3-single-advanced
      path: /virus/scan/cloud-storage/aws-s3/single/advanced
      operations:
      - name: scancloudstoragescanawss3fileadvanced
        method: POST
        description: Advanced Scan an AWS S3 file for viruses
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: accessKey
          in: header
          type: string
          description: AWS S3 access key for the S3 bucket; you can get this from My Security Credentials in the AWS console
          required: true
        - name: secretKey
          in: header
          type: string
          description: AWS S3 secret key for the S3 bucket; you can get this from My Security Credentials in the AWS console
          required: true
        - name: bucketRegion
          in: header
          type: string
          description: Name of the region of the S3 bucket, such as 'US-East-1'
          required: true
        - name: bucketName
          in: header
          type: string
          description: Name of the S3 bucket
          required: true
        - name: keyName
          in: header
          type: string
          description: Key name (also called file name) of the file in S3 that you wish to scan for viruses.  If the key name
            contains Unicode characters, you must base64 encode the k
          required: true
        - name: roleArn
          in: header
          type: string
          description: 'Optional: Role ARN for STS Credential-based access.  This is for advanced access using the Security
            Token Service and is not required.  If the roleArn contains '
        - name: allowExecutables
          in: header
          type: boolean
          description: Set to false to block executable files (program code) from being allowed in the input file.  Default
            is false (recommended).
        - name: allowInvalidFiles
          in: header
          type: boolean
          description: 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 f
        - name: allowScripts
          in: header
          type: boolean
          description: '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 '
        - name: allowPasswordProtectedFiles
          in: header
          type: boolean
          description: 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 pass
        - name: allowMacros
          in: header
          type: boolean
          description: 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 embe
        - name: allowXmlExternalEntities
          in: header
          type: boolean
          description: Set to false to block XML External Entities and other threats embedded in XML files, and other files
            that contain embedded content threats. Set to true to allow
        - name: allowInsecureDeserialization
          in: header
          type: boolean
          description: Set to false to block Insecure Deserialization and other threats embedded in JSON and other object
            serialization files, and other files that contain embedded co
        - name: allowHtml
          in: header
          type: boolean
          description: Set to false to block HTML input in the top level file; HTML can contain XSS, scripts, local file accesses
            and other threats.  Set to true to allow these file t
        - name: allowUnsafeArchives
          in: header
          type: boolean
          description: 'Set to false to block unsafe archives such as Zip Bombs, and other archives that can cause unsafe
            extraction outcomes.  Default is false (recommended).  If set '
        - name: allowOleEmbeddedObject
          in: header
          type: boolean
          description: Set to false to block OLE embedded objects, which can contain vulnerabilities and executable code.  Default
            is false (recommended).  If set to true, OLE embedde
        - name: allowUnwantedAction
          in: header
          type: boolean
          description: Set to false to block unwanted or undesired actions, which can contain execute or open links or content
            when the file is viewed.  Default is false (recommended)
        - name: options
          in: header
          type: string
          description: Comma separated set of configuration operations.  Include permitJavascriptAndHtmlInPDFs to allow JavaScript
            and HTML in PDF files.  Include blockOfficeXmlOleEmb
        - name: restrictFileTypes
          in: header
          type: string
          description: 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
    - name: virus-scan-cloud-storage-azure-blob-single
      path: /virus/scan/cloud-storage/azure-blob/single
      operations:
      - name: scancloudstoragescanazureblob
        method: POST
        description: Scan an Azure Blob for viruses
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: connectionString
          in: header
          type: string
          description: 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 Port
          required: true
        - name: containerName
          in: header
          type: string
          description: Name of the Blob container within the Azure Blob Storage account
          required: true
        - name: blobPath
          in: header
          type: string
          description: Path to the blob within the container, such as 'hello.pdf' or '/folder/subfolder/world.pdf'.  If the
            blob path contains Unicode characters, you must base64 enco
          required: true
    - name: virus-scan-cloud-storage-azure-blob-single-advanced
      path: /virus/scan/cloud-storage/azure-blob/single/advanced
      operations:
      - name: scancloudstoragescanazureblobadvanced
        method: POST
        description: Advanced Scan an Azure Blob for viruses
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: connectionString
          in: header
          type: string
          description: 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 Port
          required: true
        - name: containerName
          in: header
          type: string
          description: Name of the Blob container within the Azure Blob Storage account
          required: true
        - name: blobPath
          in: header
          type: string
          description: Path to the blob within the container, such as 'hello.pdf' or '/folder/subfolder/world.pdf'.  If the
            blob path contains Unicode characters, you must base64 enco
          required: true
        - name: allowExecutables
          in: header
          type: boolean
          description: Set to false to block executable files (program code) from being allowed in the input file.  Default
            is false (recommended).
        - name: allowInvalidFiles
          in: header
          type: boolean
          description: 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 f
        - name: allowScripts
          in: header
          type: boolean
          description: '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 '
        - name: allowPasswordProtectedFiles
          in: header
          type: boolean
          description: 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 pass
        - name: allowMacros
          in: header
          type: boolean
          description: 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 embe
        - name: allowXmlExternalEntities
          in: header
          type: boolean
          description: Set to false to block XML External Entities and other threats embedded in XML files, and other files
            that contain embedded content threats. Set to true to allow
        - name: allowInsecureDeserialization
          in: header
          type: boolean
          description: Set to false to block Insecure Deserialization and other threats embedded in JSON and other object
            serialization files, and other files that contain embedded co
        - name: allowHtml
          in: header
          type: boolean
          description: Set to false to block HTML input in the top level file; HTML can contain XSS, scripts, local file accesses
            and other threats.  Set to true to allow these file t
        - name: allowUnsafeArchives
          in: header
          type: boolean
          description: 'Set to false to block unsafe archives such as Zip Bombs, and other archives that can cause unsafe
            extraction outcomes.  Default is false (recommended).  If set '
        - name: allowOleEmbeddedObject
          in: header
          type: boolean
          description: Set to false to block OLE embedded objects, which can contain vulnerabilities and executable code.  Default
            is false (recommended).  If set to true, OLE embedde
        - name: allowUnwantedAction
          in: header
          type: boolean
          description: Set to false to block unwanted or undesired actions, which can contain execute or open links or content
            when the file is viewed.  Default is false (recommended)
        - name: options
          in: header
          type: string
          description: Comma separated set of configuration operations.  Include permitJavascriptAndHtmlInPDFs to allow JavaScript
            and HTML in PDF files.  Include blockOfficeXmlOleEmb
        - name: restrictFileTypes
          in: header
          type: string
          description: 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
    - name: virus-scan-cloud-storage-azure-blob-single-advanced-batch-job
      path: /virus/scan/cloud-storage/azure-blob/single/advanced/batch-job
      operations:
      - name: scancloudstoragescanazureblobadvancedbatchjob
        method: POST
        description: Advanced Scan an Azure Blob for viruses via a batch job
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: connectionString
          in: header
          type: string
          description: 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 Port
          required: true
        - name: containerName
          in: header
          type: string
          description: Name of the Blob container within the Azure Blob Storage account
          required: true
        - name: blobPath
          in: header
          type: string
          description: Path to the blob within the container, such as 'hello.pdf' or '/folder/subfolder/world.pdf'.  If the
            blob path contains Unicode characters, you must base64 enco
          required: true
        - name: allowExecutables
          in: header
          type: boolean
          description: Set to false to block executable files (program code) from being allowed in the input file.  Default
            is false (recommended).
        - name: allowInvalidFiles
          in: header
          type: boolean
          description: 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 f
        - name: allowScripts
          in: header
          type: boolean
          description: '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 '
        - name: allowPasswordProtectedFiles
          in: header
          type: boolean
          description: 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 pass
        - name: allowMacros
          in: header
          type: boolean
          description: 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 embe
        - name: allowXmlExternalEntities
          in: header
          type: boolean
          description: Set to false to block XML External Entities and other threats embedded in XML files, and other files
            that contain embedded content threats. Set to true to allow
        - name: allowInsecureDeserialization
          in: header
          type: boolean
          description: Set to false to block Insecure Deserialization and other threats embedded in JSON and other object
            serialization files, and other files that contain embedded co
        - name: allowHtml
          in: header
          type: boolean
          description: Set to false to block HTML input in the top level file; HTML can contain XSS, scripts, local file accesses
            and other threats.  Set to true to allow these file t
        - name: allowUnsafeArchives
          in: header
          type: boolean
          description: 'Set to false to block unsafe archives such as Zip Bombs, and other archives that can cause unsafe
            extraction outcomes.  Default is false (recommended).  If set '
        - name: allowOleEmbeddedObject
          in: header
          type: boolean
          description: Set to false to block OLE embedded objects, which can contain vulnerabilities and executable code.  Default
            is false (recommended).  If set to true, OLE embedde
        - name: allowUnwantedAction
          in: header
          type: boolean
          description: Set to false to block unwanted or undesired actions, which can contain execute or open links or content
            when the file is viewed.  Default is false (recommended)
        - name: options
          in: header
          type: string
          description: Comma separated set of configuration operations.  Include permitJavascriptAndHtmlInPDFs to allow JavaScript
            and HTML in PDF files.  Include blockOfficeXmlOleEmb
        - name: restrictFileTypes
          in: header
          type: string
          description: 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
    - name: virus-scan-cloud-storage-batch-job-status
      path: /virus/scan/cloud-storage/batch-job/status
      operations:
      - name: scancloudstoragegetasyncjobstatus
        method: GET
        description: Get the status and result of a Scan Cloud Storage Batch Job
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: AsyncJobID
          in: query
          type: string
          required: true
    - name: virus-scan-cloud-storage-gcp-storage-single
      path: /virus/scan/cloud-storage/gcp-storage/single
      operations:
      - name: scancloudstoragescangcpstoragefile
        method: POST
        description: Scan an Google Cloud Platform (GCP) Storage file for viruses
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: bucketName
          in: header
          type: string
          description: Name of the bucket in Google Cloud Storage
          required: true
        - name: objectName
          in: header
          type: string
          description: 'Name of the object or file in Google Cloud Storage.  If the object name contains Unicode characters,
            you must base64 encode the object name and prepend it with '
          required: true
        - name: jsonCredentialFile
          in: formData
          type: file
          description: Service Account credential for Google Cloud stored in a JSON file.
          required: true
    - name: virus-scan-cloud-storage-gcp-storage-single-advanced
      path: /virus/scan/cloud-storage/gcp-storage/single/advanced
      operations:
      - name: scancloudstoragescangcpstoragefileadvanced
        method: POST
        description: Advanced Scan an Google Cloud Platform (GCP) Storage file for viruses
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: bucketName
          in: header
          type: string
          description: Name of the bucket in Google Cloud Storage
          required: true
        - name: objectName
          in: header
          type: string
          description: 'Name of the object or file in Google Cloud Storage.  If the object name contains Unicode characters,
            you must base64 encode the object name and prepend it with '
          required: true
        - name: jsonCredentialFile
          in: formData
          type: file
          description: Service Account credential for Google Cloud stored in a JSON file.
          required: true
        - name: allowExecutables
          in: header
          type: boolean
          description: Set to false to block executable files (program code) from being allowed in the input file.  Default
            is false (recommended).
        - name: allowInvalidFiles
          in: header
          type: boolean
          description: 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 f
        - name: allowScripts
          in: header
          type: boolean
          description: '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 '
        - name: allowPasswordProtectedFiles
          in: header
          type: boolean
          description: 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 pass
        - name: allowMacros
          in: header
          type: boolean
          description: 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 embe
        - name: allowXmlExternalEntities
          in: header
          type: boolean
          description: Set to false to block XML External Entities and other threats embedded in XML files, and other files
            that contain embedded content threats. Set to true to allow
        - name: allowInsecureDeserialization
          in: header
          type: boolean
          description: Set to false to block Insecure Deserialization and other threats embedded in JSON and other object
            serialization files, and other files that contain embedded co
        - name: allowHtml
          in: header
          type: boolean
          description: Set to false to block HTML input in the top level file; HTML can contain XSS, scripts, local file accesses
            and other threats.  Set to true to allow these file t
        - name: allowUnsafeArchives
          in: header
          type: boolean
          description: 'Set to false to block unsafe archives such as Zip Bombs, and other archives that can cause unsafe
            extraction outcomes.  Default is false (recommended).  If set '
        - name: allowOleEmbeddedObject
          in: header
          type: boolean
          description: Set to false to block OLE embedded objects, which can contain vulnerabilities and executable code.  Default
            is false (recommended).  If set to true, OLE embedde
        - name: allowUnwantedAction
          in: header
          type: boolean
          description: Set to false to block unwanted or undesired actions, which can contain execute or open links or content
            when the file is viewed.  Default is false (recommended)
        - name: options
          in: header
          type: string
          description: Comma separated set of configuration operations.  Include permitJavascriptAndHtmlInPDFs to allow JavaScript
            and HTML in PDF files.  Include blockOfficeXmlOleEmb
        - name: restrictFileTypes
          in: header
          type: string
          description: 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
    - name: virus-scan-cloud-storage-sharepoint-online-site-advanced
      path: /virus/scan/cloud-storage/sharepoint-online/site/advanced
      operations:
      - name: scancloudstoragescansharepointonlinefileadvanced
        method: POST
        description: Advanced Virus Scan a file in a SharePoint Online Site Drive
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: clientID
          in: header
          type: string
          description: Client ID access credentials; see description above for instructions on how to get the Client ID from
            the Azure Active Directory portal.
          required: true
        - name: clientSecret
          in: header
          type: string
          description: Client Secret access credentials; see description above for instructions on how to get the Client Secret
            from the Azure Active Directory portal
          required: true
        - name: sharepointDomainName
          in: header
          type: string
          description: SharePoint Online domain name, such as mydomain.sharepoint.com
          required: true
        - name: siteID
          in: header
          type: string
          description: Site ID (GUID) of the SharePoint site you wish to retrieve the file from
          required: true
        - name: tenantID
          in: header
          type: string
          description: Optional; Tenant ID of your Azure Active Directory
        - name: filePath
          in: header
          type: string
          description: Path to the file within the drive, such as 'hello.pdf' or '/folder/subfolder/world.pdf'.  If the file
            path contains Unicode characters, you must base64 encode t
        - name: itemID
          in: header
          type: string
          description: SharePoint itemID, such as a DriveItem Id
        - name: allowExecutables
          in: header
          type: boolean
          description: Set to false to block executable files (program code) from being allowed in the input file.  Default
            is false (recommended).
        - name: allowInvalidFiles
          in: header
          type: boolean
          description: 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 f
        - name: allowScripts
          in: header
          type: boolean
          description: '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 '
        - name: allowPasswordProtectedFiles
          in: header
          type: boolean
          description: 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 pass
        - name: allowMacros
          in: header
          type: boolean
          description: 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 embe
        - name: allowXmlExternalEntities
          in: header
          type: boolean
          description: Set to false to block XML External Entities and other threats embedded in XML files, and other files
            that contain embedded content threats. Set to true to allow
        - name: allowInsecureDeserialization
          in: header
          type: boolean
          description: Set to false to block Insecure Deserialization and other threats embedded in JSON and other object
            serialization files, and other files that contain embedded co
        - name: allowHtml
          in: header
          type: boolean
          description: Set to false to block HTML input in the top level file; HTML can contain XSS, scripts, local file accesses
            and other threats.  Set to true to allow these file t
        - name: allowUnsafeArchives
          in: header
          type: boolean
          description: 'Set to false to block unsafe archives such as Zip Bombs, and other archives that can cause unsafe
            extraction outcomes.  Default is false (recommended).  If set '
        - name: allowOleEmbeddedObject
          in: header
          type: boolean
          description: Set to false to block OLE embedded objects, which can contain vulnerabilities and executable code.  Default
            is false (recommended).  If set to true, OLE embedde
        - name: allowUnwantedAction
          in: header
          type: boolean
          description: Set to false to block unwanted or undesired actions, which can contain execute or open links or content
            when the file is viewed.  Default is false (recommended)
        - name: restrictFileTypes
          in: header
          type: string
          description: 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
    - name: virus-scan-cloud-storage-sharepoint-online-site-single
      path: /virus/scan/cloud-storage/sharepoint-online/site/single
      operations:
      - name: scancloudstoragescansharepointonlinefile
        method: POST
        description: Virus Scan a file in a SharePoint Online Site Drive
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: clientID
          in: header
          type: string
          description: Client ID access credentials; see description above for instructions on how to get the Client ID from
            the Azure Active Directory portal.
          required: true
        - name: clientSecret
          in: header
          type: string
          description: Client Secret access credentials; see description above for instructions on how to get the Client Secret
            from the Azure Active Directory portal
          required: true
        - name: sharepointDomainName
          in: header
          type: string
          description: SharePoint Online domain name, such as mydomain.sharepoint.com
          required: true
        - name: siteID
          in: header
          type: string
          description: Site ID (GUID) of the SharePoint site you wish to retrieve the file from
          required: true
        - name: tenantID
          in: header
          type: string
          description: Optional; Tenant ID of your Azure Active Directory
        - name: filePath
          in: header
          type: string
          description: Path to the file within the drive, such as 'hello.pdf' or '/folder/subfolder/world.pdf'.  If the file
            path contains Unicode characters, you must base64 encode t
          required: true
        - name: itemID
          in: header
          type: string
          description: SharePoint itemID, such as a DriveItem Id
  exposes:
  - type: rest
    namespace: virus-scan-scancloudstorage-rest
    port: 8080
    description: REST adapter for virusapi — ScanCloudStorage. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/virus/scan/cloud-storage/aws-s3/single
      name: virus-scan-cloud-storage-aws-s3-single
      description: REST surface for virus-scan-cloud-storage-aws-s3-single.
      operations:
      - method: POST
        name: scancloudstoragescanawss3file
        description: Scan an AWS S3 file for viruses
        call: virus-scan-scancloudstorage.scancloudstoragescanawss3file
        with:
          accessKey: rest.accessKey
          secretKey: rest.secretKey
          bucketRegion: rest.bucketRegion
          bucketName: rest.bucketName
          keyName: rest.keyName
          roleArn: rest.roleArn
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/virus/scan/cloud-storage/aws-s

# --- truncated at 32 KB (50 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cloudmersive/refs/heads/main/capabilities/virus-scan-scancloudstorage.yaml