Skip to main content

Trend Micro Cloud One VSAPI SDK for python

Project description

Trend Cloud One VSAPI SDK for Python

Cloud One VSAPI is a Software Development Kit (SDK) for Python, which allows Python developers to write software that makes use of Cloud One Antimalware Service API.

Requirements

Installation

Install the VSAPI SDK package with pip:

python -m pip install cloudone-vsapi

Documentation

Documentation for the client SDK is available on Here and Read the Docs.

Run SDK

Run with Cloud One VSAPI examples

  1. Go to /examples/ in current directory.

    cd examples/
    
  2. There are two Python examples in the folder, one with regular file i/o and one with asynchronous file i/o

    client_aio.py
    client.py
    
  3. Current Python examples support following command line arguments

    Command Line Arguments Value Optional
    --region or -r Trend Cloud One Region, such as: us-1 Yes, either -r or -a
    --addr or -a Trend Cloud One Amaas server, such as: antimalware.us-1.cloudone.trendmicro.com:443 Yes, either -r or -a
    --api_key Cloud One <API KEY> No
    --filename or -f File to be scanned No
  4. Run one of the examples.

    The example program needs to be configured with your Cloud One account's secret key which is available in your Cloud One Dashboard. Set API_KEY from corresponding Cloud One Region to its value and FILENAME to the target file:

    python3 client.py -f FILENAME -r us-1 --api_key API_KEY
    

    or

    using Antimalware Service server address -a instead of region -r:

    python3 client.py -f FILENAME -a antimalware.us-1.cloudone.trendmicro.com:443 --api_key API_KEY
    

    or

    using asynchronous IO example program:

    python3 client_aio.py -f FILENAME -a antimalware.us-1.cloudone.trendmicro.com:443 --api_key API_KEY
    

Code Examples

import json
import amaas.grpc

handle = amaas.grpc.init(YOUR_CLOUD_ONE_AMAAS_SERVER, YOUR_ClOUD_ONE_KEY, True)

result = amaas.grpc.scan_file(args.filename, handle)
print(result)

result_json = json.loads(result)
print("Got scan result: %d" % result_json['scanResult'])

amaas.grpc.quit(handle)

to use asyncio with coroutines and tasks,

import json
import pprint
import asyncio
import amaas.grpc.aio

async def scan_files():
    handle = amaas.grpc.aio.init(YOUR_CLOUD_ONE_AMAAS_SERVER, YOUR_ClOUD_ONE_KEY, True)

    tasks = [asyncio.create_task(amaas.grpc.aio.scan_file(file_name, handle))]

    scan_results = await asyncio.gather(*tasks)

    for scan_result in scan_results:
        pprint.pprint(json.loads(scan_result))

    await amaas.grpc.aio.quit(handle)


asyncio.run(scan_files())

More Resources

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cloudone-vsapi-1.0.4.tar.gz (9.9 kB view hashes)

Uploaded Source

Built Distribution

cloudone_vsapi-1.0.4-py3-none-any.whl (10.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page