A template for building polling-based Scanopy integrations in Python.
- Polls the Scanopy API on a configurable interval
- Fetches hosts and services data
- Syncs to an external target system (placeholder implementation)
-
Copy
.env.exampleto.envand fill in your values:cp .env.example .env
-
Start the integration:
docker compose up -d
-
View logs:
docker compose logs -f
-
Install dependencies:
pip install -r requirements.txt
-
Set environment variables:
export SCANOPY_URL="https://your-instance.scanopy.io" export SCANOPY_API_KEY="your-api-key" export TARGET_API_URL="https://target-system.example.com" export TARGET_API_KEY="target-api-key"
-
Run:
python main.py
| Variable | Required | Default | Description |
|---|---|---|---|
SCANOPY_URL |
Yes | - | Your Scanopy instance URL |
SCANOPY_API_KEY |
Yes | - | API key with hosts:read, services:read scopes |
TARGET_API_URL |
Yes | - | Target system API endpoint |
TARGET_API_KEY |
Yes | - | Target system authentication |
POLL_INTERVAL |
No | 300 | Sync interval in seconds |
- Update
manifest.jsonwith your integration details - Modify
sync_to_target()inmain.pyto implement your sync logic - Add any additional configuration to
manifest.jsonand update the code
MIT