Retrieve Strolt system information
Get general information about the Strolt service. This endpoint requires Basic Authentication.
GET /api/v1/infowebsite·Indexed 29 days ago
https://strolt.shibanet0.comStrolt is a tool for effortless backup management. Documentation includes configuration for notification drivers such as Slack and Telegram, CLI commands, and API references for Strolt API (1.0), Strolt Proxy API (1.0), and Strolt Manager API (1.0).
GET /api/v1/infoStrolt is an open-source, dockerized backup management tool that provides the following capabilities:
/api/v1/info endpoint to get general information about the Strolt Proxy. This endpoint requires Basic Authentication.curl -u username:password GET /api/v1/infotimezone: America/New_York
tags:
- tag1:value
- tag2:value
- tag3:value
services:
example:
database:
tags:
- taskTag
schedule:
backup: "0 0 * * *"
prune: "0 20 * * *"
source:
driver: pg
config:
host: "{{.PG_HOST}}"
database: "{{.PG_DATABASE}}"
username: "{{.PG_USER}}"
password: "{{.PG_PASSWORD}}"
destinations:
restic-postgres:
extends: minio_restic
env:
RESTIC_PASSWORD: "{{.RESTIC_PASSWORD}}"
RESTIC_REPOSITORY: "s3:{{.MINIO_S3_URL}}/EXAMPLE2/restic-postgres"
notifications:
- telegram
- errors
secrets:
RESTIC_PASSWORD: password
PG_HOST: postgres
PG_DATABASE: strolt
PG_USER: strolt_user
PG_PASSWORD: strolt_password
extends:
secrets:
- ./strolt.secrets.yml
configs:
- ./strolt.base.ymlNotifications are defined in definitions.notifications and assigned to tasks by name. You can filter which events trigger a notification using the events array. Available events include:
OPERATION_START, OPERATION_STOP, OPERATION_ERRORSOURCE_START, SOURCE_STOP, SOURCE_ERRORDESTINATION_START, DESTINATION_STOP, DESTINATION_ERRORservices:
my-service:
my-task:
notifications:
- tg-errors
definitions:
notifications:
tg-errors:
driver: telegram
config:
token: "123456:ABC-DEF"
chatId: "1234567890"
events: [OPERATION_ERROR, SOURCE_ERROR, DESTINATION_ERROR]definitions.destinations section and reference them within a task using the extends keyword. This avoids duplicating driver and config settings across multiple tasks.services:
my-service:
my-task:
destinations:
my-backup-dest:
extends: destination-template
definitions:
destinations:
destination-template:
driver: restic
config:
keep:
last: 5schedule block containing backup and prune keys. Both accept standard cron rules to determine when the operation should run.schedule:
# run every day at 6:00 and 18:00 UTC
backup: "0 6,18 */1 * *"
prune: "0 6,18 */1 * *"services element is REQUIRED. It is a map of services, where each service contains tasks. Each task can define its own tags, schedule, source, destinations, and notifications.services:
service-name:
task-name:
tags:
- tag1:v0.01
schedule:
backup: "0 6,18 */1 * *"
prune: "0 6,18 */1 * *"
source:
driver: pg
config:
host: 127.0.0.1
port: 5432
database: pg_database
username: pg_username
password: pg_password
destinations:
restic:
driver: restic
config: {}
env: {}
notifications:
- telegramslack driver. The configuration requires the teamId, botId, and hookId, which are derived from the Slack Webhook URL format: https://hooks.slack.com/services/{botId}/{teamId}/{hookId}.definitions:
notifications:
{notification name}:
driver: slack
config:
teamId: Txxxxxxxxxx
botId: Bxxxxxxxxxx
hookId: rOtl1yLfUb7r1laqX27X0GBHevents list under the notification name in the configuration. If no events are explicitly defined, the system defaults to triggering on OPERATION_STOP and OPERATION_ERROR.definitions:
notifications:
my_notification_name:
driver: {driver_name}
config: {}
events:
- OPERATION_START
- OPERATION_STOP
- OPERATION_ERROR
- SOURCE_START
- SOURCE_STOP
- SOURCE_ERROR
- DESTINATION_START
- DESTINATION_STOP
- DESTINATION_ERRORstrolt.yaml (preferred) or strolt.yml in the working directory. If both exist, strolt.yaml takes precedence.The Strolt YAML file supports several top-level elements for global configuration:
timezone: Sets the IANA Time Zone (defaults to Local).tags: An array of strings used for global tagging.secrets: A map of key-value pairs for sensitive data.extends: Used to include external YAML files for secrets or configs.definitions: Used to create reusable templates for destinations and notifications.timezone: UTC
disableWatchChanges: false
tags:
- tag1:value
- tag2:value
secrets:
SUPER_SECRET: SECRET
extends:
secrets:
- ./secrets.yml
configs:
- ./strolt_config.yml