Skip to main content

Python library for Trend Micro Vision One

Project description

PyTMV1: Python Library for Trend Vision One

Build Lint Test Coverage Pypi: version Downloads Python: version License: apache Types - mypy Imports: isort Code style: black

Prerequisites

Using this project requires at least Python 3.8.

Features

  • A thread-safe client for your application.
  • HTTP pooling capabilities.
  • Easy integration with Trend Vision One APIs.

Configuration

parameter description
name Identify the application using this library.
token Authentication token created for your account.
url Vision One API url this client connects to.
pool_connections Number of connection pools to cache (defaults to 1).
pool_maxsize Maximum size of the pool (defaults to 1).

Quick start

Installation

pip install pytmv1

Usage

>> import pytmv1
>> client = pytmv1.init("MyApplication", "Token", "https://api.xdr.trendmicro.com")
>> result = client.object.list_exception()
>> result.response
GetExceptionListResp(
    next_link=None,
    items=[
        ExceptionObject(
            url='https://*.example.com/path1/*',
            type= < ObjectType.URL: 'url' >,
            last_modified_date_time = '2023-01-12T14:05:37Z',
            description = 'object description'
        )
    ]
)
>> result.result_code
ResultCode.SUCCESS

Build the project

Set virtual env

python3 -m venv venv
source venv/bin/activate

Install dependencies

pip install -e ".[dev]"

Build

hatch build

Run unit tests

pytest --verbose ./tests/unit

Run integration tests

pytest --mock-url="$url" --verbose ./tests/integration

Supported APIs

Python Vision One
Connectivity
system.check_connectivity Check availability of service
API Keys
api_key.create Create API Keys
api_key.get Get API key
api_key.update Update API key
api_key.delete Delete API keys
api_key.[list, consume] List API keys
Common
task.get_result Download response task results
Custom Scripts
script.create Add custom script
script.download Download custom script
script.update Update custom script
script.delete Delete custom script
script.run Run custom script
script.[list, consume] List custom scripts
Domain Account
account.enable Enable user account
account.disable Disable user account
account.sign_out Force sign out
account.reset Force password reset
Email
email.restore Restore email message
email.quarantine Quarantine email message
email.delete Delete email message
Endpoint
endpoint.collect_file Collect file
endpoint.isolate Isolate endpoint
endpoint.restore Restore endpoint
endpoint.terminate_process Terminate process
Observed Attack Techniques
oat.[list, consume] Get Observed Attack Techniques events
Observed Attack Techniques Pipeline
oat.create_pipeline Registers a customer to the Observed Attack Techniques data pipeline
oat.list_pipelines Get active data pipelines
oat.update_pipeline Modify data pipeline settings
oat.get_pipeline Get pipeline settings
oat.delete_pipelines Unregister from data pipeline
oat.list_packages/consume_packages Get Observed Attack Techniques event packages
oat.get_package Get Observed Attack Techniques package
Sandbox Analysis
sandbox.submit_file Submit file to sandbox
sandbox.submit_url Submit URLs to sandbox
sandbox.get_analysis_result Get analysis results
sandbox.get_submission_status Get submission status
sandbox.download_analysis_result Download analysis results
sandbox.download_investigation_package Download investigation package
sandbox.list_suspicious Download suspicious object list
Search
email.get_activity_count Get email activity data count
email.[list_activity, consume_activity] Get email activity data
endpoint.get_activity_count Get endpoint activity data count
endpoint.[list_data, consume_data] Get endpoint data
endpoint.[list_activity, consume_activity] Get endpoint activity data
Suspicious Objects
object.add_block Add to block list
object.delete_block Remove from block list
Suspicious Object Exception List
object.add_exception Add to exception list
object.delete_exception Remove from exception list
object.[list_exception, consume_exception] Get exception list
Suspicious Object List
object.add_suspicious Add to suspicious object list
object.delete_suspicious Remove from suspicious object list
object.[list_suspicious, consume_suspicious] List suspicious objects
Workbench
alert.get Get alert details
alert.update_status Modify alert status
alert.[list, consume] Get alerts list
Workbench Notes
note.create Add alert note
note.get Get alert note
note.update Edit alert note
note.delete Delete alert notes
note.[list, consume] Get alerts notes

Contributing

Read our contributing guide to learn about our development process, how to propose bug fixes and improvements, and how to build and test your changes to Trend Vision One.

Code of conduct

Trend Micro has adopted a Code of Conduct that we expect project participants to adhere to. Please read the full text to understand what actions will and will not be tolerated.

License

Project distributed under the Apache 2.0 license.

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

pytmv1-0.9.3.tar.gz (32.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pytmv1-0.9.3-py3-none-any.whl (44.4 kB view details)

Uploaded Python 3

File details

Details for the file pytmv1-0.9.3.tar.gz.

File metadata

  • Download URL: pytmv1-0.9.3.tar.gz
  • Upload date:
  • Size: 32.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pytmv1-0.9.3.tar.gz
Algorithm Hash digest
SHA256 218b733759f8386d7cba7feaa4d8677c2e5279fef0e3cb9fc82ef049f392ffd4
MD5 a7d3493e97e22eb7e9ceecc65b290227
BLAKE2b-256 8cd568f320788baaf87b70cba65fad5ebda2259bf53a3e84f3c2a75d13f1f3bc

See more details on using hashes here.

File details

Details for the file pytmv1-0.9.3-py3-none-any.whl.

File metadata

  • Download URL: pytmv1-0.9.3-py3-none-any.whl
  • Upload date:
  • Size: 44.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pytmv1-0.9.3-py3-none-any.whl
Algorithm Hash digest
SHA256 7991deba55ab333ab5ca24ef48ef71d6151f8da5f1c5d385d5ba5f9cf6a4e0e8
MD5 d2074acdb952c3d7afd3f4eded711b6f
BLAKE2b-256 ba41703be6289f8ab11ca4e1b0ac9a5b3a7eeca06d1d16d78dc6b52127f4fb8d

See more details on using hashes here.

Supported by

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