Repello Artemis SDK
A Python client SDK for triggering actions on Repello's Artemis Platform.
Installation
You can install the package from PyPI:
pip install repello-artemis-sdk
Requirements
- Python 3.10 or higher
requestslibrary (automatically installed as a dependency)
Quick Start
from repello_artemis_sdk import RepelloArtemisClient
from repello_artemis_sdk.enums import ScanType
# Initialize the client with your credentials
client = RepelloArtemisClient(
client_id="your-client-id",
client_secret="your-client-secret",
log_to_console=True, # Optional: Enable console logging
log_to_file="artemis.log" # Optional: Log to file
)
# Trigger a single scan type on an asset
client.assets.trigger_scan("asset_id", ScanType.quick_scan)
# Trigger multiple scan types on an asset
client.assets.trigger_scan("asset_id", [ScanType.quick_scan, ScanType.safety_scan])
Features
- Simple, intuitive API for interacting with Repello's Artemis Platform
- Supports single or multiple scan types for assets in a single request
- Configurable logging (console and/or file)
- Type hints for better IDE integration
Authentication
The SDK uses client credentials for authentication. You need to provide your client_id and client_secret when initializing the client:
client = RepelloArtemisClient(client_id, client_secret)
Head to platform.repello.ai and login to your account, go to the CI/CD page, create a client secret, then copy the client ID and client secret.
API Reference
Client Initialization
RepelloArtemisClient(
client_id: str,
client_secret: str,
log_to_console: bool = False,
log_to_file: str = None
)
Parameters:
client_id: Your Repello Artemis client IDclient_secret: Your Repello Artemis client secretlog_to_console: (Optional) Enable logging to consolelog_to_file: (Optional) Path to log file
Assets
Trigger Scan
client.assets.trigger_scan(asset_id: str, scan_type: Union[ScanType, List[ScanType]])
Parameters:
asset_id: ID of the asset to scanscan_type: Type of scan to perform (fromScanTypeenum) or a list of scan types
Available scan types:
ScanType.quick_scan: Performs a quick scan on the assetScanType.safety_scan: Performs a safety scan on the assetScanType.owasp: Performs an OWASP guideline-based scanScanType.mitre: Performs a MITRE ATT&CK framework-based scanScanType.nist: Performs a NIST standards-based scanScanType.whistleblower: Performs a whistleblower vulnerability scanScanType.fingerprint: Performs a digital fingerprinting scan
Changelog
See the CHANGELOG.md file for details on all changes and releases.
License
This project is licensed under the Apache License 2.0 - see the details in the license file.
Issues
If you encounter any problems, please file an issue at the GitHub repository.
Metadata
Release files for repello-artemis-sdk 1.0.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| repello_artemis_sdk-1.0.2.tar.gz | 12.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| repello_artemis_sdk-1.0.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 25.7 kB
Release files / repello_artemis_sdk-1.0.2.tar.gz
| Download URL | repello_artemis_sdk-1.0.2.tar.gz |
|---|---|
| Size | 12.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e5e989544aee9eeddee4ff3ec066b36d013930de12f46e633ff0f98caf90965e
|
|
BLAKE2b-256 checksum How to use checksums |
43fa7a6107e2605f3dcaea8a5891b0da2439d432679ee0446d15969503f01341
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.2
|
Release files / repello_artemis_sdk-1.0.2-py3-none-any.whl
| Download URL | repello_artemis_sdk-1.0.2-py3-none-any.whl |
|---|---|
| Size | 13.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
928fa22bd0aea30e5993a21e8408e85eb500d58b3800e2f29c11a5b6c29df799
|
|
BLAKE2b-256 checksum How to use checksums |
b205928fe8b739c5ee8b2a69ec3a382070cebc973667bf0ee9d59b783a198cdd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.12.2
|