anyrun-tools


Nameanyrun-tools JSON
Version 0.1.2 PyPI version JSON
download
home_pageNone
SummaryPython SDK for ANY.RUN APIs
upload_time2025-02-20 20:00:29
maintainerNone
docs_urlNone
authorKirill Bykov
requires_python!=2.7.*,!=3.0.*,!=3.1.*,!=3.12.*,!=3.13.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,!=3.7.*,>=3.8
licenseMIT
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # ANY.RUN Tools

[![Python versions](https://img.shields.io/pypi/pyversions/anyrun-tools.svg)](https://pypi.org/project/anyrun-tools/)
[![Tests](https://github.com/bykovk-pro/anyrun-tools/actions/workflows/test.yml/badge.svg)](https://github.com/bykovk-pro/anyrun-tools/actions/workflows/test.yml)
[![codecov](https://codecov.io/gh/bykovk-pro/anyrun-tools/branch/main/graph/badge.svg)](https://codecov.io/gh/bykovk-pro/anyrun-tools)
[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)
[![Checked with mypy](https://img.shields.io/badge/mypy-checked-blue)](http://mypy-lang.org/)
[![Documentation](https://github.com/bykovk-pro/anyrun-tools/actions/workflows/docs.yml/badge.svg)](https://github.com/bykovk-pro/anyrun-tools/actions/workflows/docs.yml)
[![License](https://img.shields.io/github/license/bykovk-pro/anyrun-tools.svg)](https://github.com/bykovk-pro/anyrun-tools/blob/main/LICENSE)
[![PyPI version](https://badge.fury.io/py/anyrun-tools.svg)](https://badge.fury.io/py/anyrun-tools)
[![PyPI Downloads](https://static.pepy.tech/badge/anyrun-tools/month)](https://pepy.tech/projects/anyrun-tools)

Python SDK for ANY.RUN APIs

## Features

- โœจ Modern async/await API
- ๐Ÿš€ Type hints and data validation with Pydantic
- ๐Ÿ’พ Built-in caching support (memory and Redis)
- ๐Ÿ”„ Automatic retries with exponential backoff
- ๐Ÿšฆ Rate limiting
- ๐Ÿ“ Comprehensive documentation
- ๐Ÿงช Extensive test coverage
- ๐Ÿ Supports Python 3.8-3.12

## Installation

```bash
# Basic installation
pip install anyrun-tools

# With Redis caching support
pip install anyrun-tools[redis]

# With all optional dependencies
pip install anyrun-tools[all]
```

## Quick Start

```python
from anyrun import AnyRunClient

async with AnyRunClient(api_key="your-api-key") as client:
    # Submit file for analysis
    response = await client.sandbox.analyze(
        obj_type="file",
        file=b"file_content",
        env_os="windows",
        env_version="10"
    )

    task_id = response["data"]["task_id"]

    # Monitor analysis status
    async for update in client.sandbox.get_analysis_status(task_id):
        print(f"Status: {update['status']}")

    # Get analysis results
    result = await client.sandbox.get_analysis(task_id)
    print(f"Analysis score: {result['data']['score']}")
```

## Available APIs

### Sandbox API
- Submit files and URLs for analysis
- Monitor analysis progress in real-time
- Get detailed analysis results
- Manage analysis tasks

### TI Lookup API (coming soon)
- Look up file hashes
- Get threat intelligence data
- Check indicators of compromise

### TI YARA API (coming soon)
- Match YARA rules against samples
- Get matching details
- Manage YARA rules

## Documentation

For detailed documentation, please visit [https://bykovk-pro.github.io/anyrun-tools](https://bykovk-pro.github.io/anyrun-tools)

- [Installation](https://bykovk-pro.github.io/anyrun-tools/getting-started/installation/)
- [Configuration](https://bykovk-pro.github.io/anyrun-tools/getting-started/configuration/)
- [Quick Start](https://bykovk-pro.github.io/anyrun-tools/getting-started/quickstart/)
- [API Reference](https://any.run/api-documentation/)
- [Examples](https://github.com/bykovk-pro/anyrun-tools/tree/main/examples)

## Development

```bash
# Clone the repository
git clone https://github.com/bykovk-pro/anyrun-tools.git
cd anyrun-tools

# Create virtual environment
python -m venv venv
source venv/bin/activate  # or `venv\Scripts\activate` on Windows

# Install development dependencies
pip install -e .[dev]

# Install pre-commit hooks
pre-commit install

# Run Redis for tests (optional)
# Using Docker:
docker run -d -p 6379:6379 redis
# Or install Redis locally:
# macOS: brew install redis && brew services start redis
# Linux: sudo apt-get install redis-server && sudo service redis-server start
# Windows: Download from https://github.com/microsoftarchive/redis/releases

# Run tests
pytest

# Note: While running tests locally, coverage reports might not be generated correctly.
# This is expected behavior as the coverage collection is optimized for CI environment.
# The main purpose of local testing is to verify that all tests pass successfully.
# For accurate coverage reports, please refer to the CI builds.

# Build documentation
pip install -e .[docs]
mkdocs serve
```

## Contributing

We welcome contributions! Please see our [Contributing Guide](https://github.com/bykovk-pro/anyrun-tools/blob/main/CONTRIBUTING.md) for details.

1. Fork the repository
2. Create your feature branch (`git checkout -b feature/amazing-feature`)
4. Commit your changes (`git commit -m 'Add amazing feature'`)
5. Push to the branch (`git push origin feature/amazing-feature`)
6. Open a Pull Request

## License

This project is licensed under the MIT License - see the [LICENSE](https://github.com/bykovk-pro/anyrun-tools/blob/main/LICENSE) file for details.

## Security

If you discover a security vulnerability within ANY.RUN Tools, please send an e-mail to Kirill Bykov via [bykovk@anyrun.tools](mailto:bykovk@anyrun.tools). All security vulnerabilities will be promptly addressed.


            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "anyrun-tools",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "!=2.7.*,!=3.0.*,!=3.1.*,!=3.12.*,!=3.13.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,!=3.7.*,>=3.8",
    "maintainer_email": null,
    "keywords": null,
    "author": "Kirill Bykov",
    "author_email": "bykovk@anyrun.tools",
    "download_url": "https://files.pythonhosted.org/packages/2f/4f/9c616db74a0b2e366eb994d0e872c24ae4ba7790ad8fbf57ab4943ec6497/anyrun_tools-0.1.2.tar.gz",
    "platform": null,
    "description": "# ANY.RUN Tools\n\n[![Python versions](https://img.shields.io/pypi/pyversions/anyrun-tools.svg)](https://pypi.org/project/anyrun-tools/)\n[![Tests](https://github.com/bykovk-pro/anyrun-tools/actions/workflows/test.yml/badge.svg)](https://github.com/bykovk-pro/anyrun-tools/actions/workflows/test.yml)\n[![codecov](https://codecov.io/gh/bykovk-pro/anyrun-tools/branch/main/graph/badge.svg)](https://codecov.io/gh/bykovk-pro/anyrun-tools)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Checked with mypy](https://img.shields.io/badge/mypy-checked-blue)](http://mypy-lang.org/)\n[![Documentation](https://github.com/bykovk-pro/anyrun-tools/actions/workflows/docs.yml/badge.svg)](https://github.com/bykovk-pro/anyrun-tools/actions/workflows/docs.yml)\n[![License](https://img.shields.io/github/license/bykovk-pro/anyrun-tools.svg)](https://github.com/bykovk-pro/anyrun-tools/blob/main/LICENSE)\n[![PyPI version](https://badge.fury.io/py/anyrun-tools.svg)](https://badge.fury.io/py/anyrun-tools)\n[![PyPI Downloads](https://static.pepy.tech/badge/anyrun-tools/month)](https://pepy.tech/projects/anyrun-tools)\n\nPython SDK for ANY.RUN APIs\n\n## Features\n\n- \u2728 Modern async/await API\n- \ud83d\ude80 Type hints and data validation with Pydantic\n- \ud83d\udcbe Built-in caching support (memory and Redis)\n- \ud83d\udd04 Automatic retries with exponential backoff\n- \ud83d\udea6 Rate limiting\n- \ud83d\udcdd Comprehensive documentation\n- \ud83e\uddea Extensive test coverage\n- \ud83d\udc0d Supports Python 3.8-3.12\n\n## Installation\n\n```bash\n# Basic installation\npip install anyrun-tools\n\n# With Redis caching support\npip install anyrun-tools[redis]\n\n# With all optional dependencies\npip install anyrun-tools[all]\n```\n\n## Quick Start\n\n```python\nfrom anyrun import AnyRunClient\n\nasync with AnyRunClient(api_key=\"your-api-key\") as client:\n    # Submit file for analysis\n    response = await client.sandbox.analyze(\n        obj_type=\"file\",\n        file=b\"file_content\",\n        env_os=\"windows\",\n        env_version=\"10\"\n    )\n\n    task_id = response[\"data\"][\"task_id\"]\n\n    # Monitor analysis status\n    async for update in client.sandbox.get_analysis_status(task_id):\n        print(f\"Status: {update['status']}\")\n\n    # Get analysis results\n    result = await client.sandbox.get_analysis(task_id)\n    print(f\"Analysis score: {result['data']['score']}\")\n```\n\n## Available APIs\n\n### Sandbox API\n- Submit files and URLs for analysis\n- Monitor analysis progress in real-time\n- Get detailed analysis results\n- Manage analysis tasks\n\n### TI Lookup API (coming soon)\n- Look up file hashes\n- Get threat intelligence data\n- Check indicators of compromise\n\n### TI YARA API (coming soon)\n- Match YARA rules against samples\n- Get matching details\n- Manage YARA rules\n\n## Documentation\n\nFor detailed documentation, please visit [https://bykovk-pro.github.io/anyrun-tools](https://bykovk-pro.github.io/anyrun-tools)\n\n- [Installation](https://bykovk-pro.github.io/anyrun-tools/getting-started/installation/)\n- [Configuration](https://bykovk-pro.github.io/anyrun-tools/getting-started/configuration/)\n- [Quick Start](https://bykovk-pro.github.io/anyrun-tools/getting-started/quickstart/)\n- [API Reference](https://any.run/api-documentation/)\n- [Examples](https://github.com/bykovk-pro/anyrun-tools/tree/main/examples)\n\n## Development\n\n```bash\n# Clone the repository\ngit clone https://github.com/bykovk-pro/anyrun-tools.git\ncd anyrun-tools\n\n# Create virtual environment\npython -m venv venv\nsource venv/bin/activate  # or `venv\\Scripts\\activate` on Windows\n\n# Install development dependencies\npip install -e .[dev]\n\n# Install pre-commit hooks\npre-commit install\n\n# Run Redis for tests (optional)\n# Using Docker:\ndocker run -d -p 6379:6379 redis\n# Or install Redis locally:\n# macOS: brew install redis && brew services start redis\n# Linux: sudo apt-get install redis-server && sudo service redis-server start\n# Windows: Download from https://github.com/microsoftarchive/redis/releases\n\n# Run tests\npytest\n\n# Note: While running tests locally, coverage reports might not be generated correctly.\n# This is expected behavior as the coverage collection is optimized for CI environment.\n# The main purpose of local testing is to verify that all tests pass successfully.\n# For accurate coverage reports, please refer to the CI builds.\n\n# Build documentation\npip install -e .[docs]\nmkdocs serve\n```\n\n## Contributing\n\nWe welcome contributions! Please see our [Contributing Guide](https://github.com/bykovk-pro/anyrun-tools/blob/main/CONTRIBUTING.md) for details.\n\n1. Fork the repository\n2. Create your feature branch (`git checkout -b feature/amazing-feature`)\n4. Commit your changes (`git commit -m 'Add amazing feature'`)\n5. Push to the branch (`git push origin feature/amazing-feature`)\n6. Open a Pull Request\n\n## License\n\nThis project is licensed under the MIT License - see the [LICENSE](https://github.com/bykovk-pro/anyrun-tools/blob/main/LICENSE) file for details.\n\n## Security\n\nIf you discover a security vulnerability within ANY.RUN Tools, please send an e-mail to Kirill Bykov via [bykovk@anyrun.tools](mailto:bykovk@anyrun.tools). All security vulnerabilities will be promptly addressed.\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Python SDK for ANY.RUN APIs",
    "version": "0.1.2",
    "project_urls": null,
    "split_keywords": [],
    "urls": [
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "b11633e0c1a9954636c31c5b84570d797f54208e6e6fc4bd4a667710b78442e1",
                "md5": "9afc0a40b65707ffc24a977a47ff33b7",
                "sha256": "84093094643c57f17061d63cbe7fbc1baf546922484e55d230955a2b3a4b2646"
            },
            "downloads": -1,
            "filename": "anyrun_tools-0.1.2-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "9afc0a40b65707ffc24a977a47ff33b7",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "!=2.7.*,!=3.0.*,!=3.1.*,!=3.12.*,!=3.13.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,!=3.7.*,>=3.8",
            "size": 42735,
            "upload_time": "2025-02-20T20:00:28",
            "upload_time_iso_8601": "2025-02-20T20:00:28.205618Z",
            "url": "https://files.pythonhosted.org/packages/b1/16/33e0c1a9954636c31c5b84570d797f54208e6e6fc4bd4a667710b78442e1/anyrun_tools-0.1.2-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": null,
            "digests": {
                "blake2b_256": "2f4f9c616db74a0b2e366eb994d0e872c24ae4ba7790ad8fbf57ab4943ec6497",
                "md5": "d9ba69615a82b8304567465de88e1d64",
                "sha256": "62be77b6b46d039a5bd842f9214792187efa5e31050e863f55b6545cd2573604"
            },
            "downloads": -1,
            "filename": "anyrun_tools-0.1.2.tar.gz",
            "has_sig": false,
            "md5_digest": "d9ba69615a82b8304567465de88e1d64",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "!=2.7.*,!=3.0.*,!=3.1.*,!=3.12.*,!=3.13.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,!=3.7.*,>=3.8",
            "size": 32603,
            "upload_time": "2025-02-20T20:00:29",
            "upload_time_iso_8601": "2025-02-20T20:00:29.854036Z",
            "url": "https://files.pythonhosted.org/packages/2f/4f/9c616db74a0b2e366eb994d0e872c24ae4ba7790ad8fbf57ab4943ec6497/anyrun_tools-0.1.2.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-02-20 20:00:29",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "lcname": "anyrun-tools"
}
        
Elapsed time: 0.41094s