Skip to main content

Client SDK for triggering actions on Repello's Artemis Platform

Project description

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
  • requests library (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 ID
  • client_secret: Your Repello Artemis client secret
  • log_to_console: (Optional) Enable logging to console
  • log_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 scan
  • scan_type: Type of scan to perform (from ScanType enum) or a list of scan types

Available scan types:

  • ScanType.quick_scan: Performs a quick scan on the asset
  • ScanType.safety_scan: Performs a safety scan on the asset
  • ScanType.owasp: Performs an OWASP guideline-based scan
  • ScanType.mitre: Performs a MITRE ATT&CK framework-based scan
  • ScanType.nist: Performs a NIST standards-based scan
  • ScanType.whistleblower: Performs a whistleblower vulnerability scan
  • ScanType.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.

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

repello_artemis_sdk-1.0.2.tar.gz (12.0 kB view details)

Uploaded Source

Built Distribution

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

repello_artemis_sdk-1.0.2-py3-none-any.whl (13.6 kB view details)

Uploaded Python 3

File details

Details for the file repello_artemis_sdk-1.0.2.tar.gz.

File metadata

  • Download URL: repello_artemis_sdk-1.0.2.tar.gz
  • Upload date:
  • Size: 12.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.2

File hashes

Hashes for repello_artemis_sdk-1.0.2.tar.gz
Algorithm Hash digest
SHA256 e5e989544aee9eeddee4ff3ec066b36d013930de12f46e633ff0f98caf90965e
MD5 dd5bac8f6bb6f446d53644631997542d
BLAKE2b-256 43fa7a6107e2605f3dcaea8a5891b0da2439d432679ee0446d15969503f01341

See more details on using hashes here.

File details

Details for the file repello_artemis_sdk-1.0.2-py3-none-any.whl.

File metadata

File hashes

Hashes for repello_artemis_sdk-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 928fa22bd0aea30e5993a21e8408e85eb500d58b3800e2f29c11a5b6c29df799
MD5 1f7bb2c68f3da68ba0eee79d3e454354
BLAKE2b-256 b205928fe8b739c5ee8b2a69ec3a382070cebc973667bf0ee9d59b783a198cdd

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