A web-based reimplementation of the official SAP Download Manager - the Java desktop tool that downloads your SAP Support Portal download basket to your machine. This fork keeps the protocol and features of the original, but replaces the desktop GUI with a modern web UI and runs as a containerized server: operate it from any browser, files land on the server.
Original: SAP Download Manager (official, Java)
- Same wire protocol as the official client (Support Portal OData and legacy Service Marketplace) - your S-User and password just work
- Resumable downloads with crash-safe checkpoints; pause/resume/cancel
- Scheduled, fully automatic (startup) and watch-mode downloads (auto-download new basket items); optional parallel object downloads
- Fetched files can be pulled straight from the server through the browser - no SSH/SMB needed
- S-User/password or X.509 client certificate; optional proxy
- Fiori-style OpenUI5 UI, light and dark theme, live progress over WebSocket, English/German
- REST API + MCP server for AI-agent remote control; Prometheus metrics and webhook notifications
- Ships as a Docker image - headless server, internal plain HTTP
mkdir -p data downloads # host dirs must be owned by uid 1000
docker compose up -d # open http://localhost:8000/ui/docker compose up uses the published image
(ghcr.io/randomstr1ng/sap-web-download-manager:latest); to run from source
instead use docker compose up --build.
Or use the published image directly:
docker run -d -p 8000:8000 \
-v "$PWD/data:/data/app" -v "$PWD/downloads:/data/downloads" \
ghcr.io/randomstr1ng/sap-web-download-manager:latestThe first start opens a wizard asking for your S-User and password (URL and download directory are prefilled). Fill your basket in the Software Download Center, press Refresh, and download.
One-shot download of the whole basket (e.g. via cron):
docker compose run --rm sapdlm python -m sapdlm.main --auto- How it works - architecture, download engine, configuration, credentials, API/MCP reference, security model, Docker notes
- Protocol reference - the wire protocol of the official Download Manager, reverse engineered and documented
- Development - venv setup, tests, lint, tooling
![]() |
![]() |
![]() |
Apache License, Version 2.0. The vendored OpenUI5 runtime is
likewise Apache-2.0 (see ui5/LICENSE.txt); Python
dependencies are MIT/BSD/Apache-2.0 (see pyproject.toml).
- This is an unofficial community project, not affiliated with or endorsed by SAP SE. "SAP" is a trademark of SAP SE; use of SAP services requires your own credentials and is subject to SAP's terms of use.
- The basket is filled on the Software Download Center website; this tool reads and downloads it (adding items is not part of the original client's protocol).
- The vendored OpenUI5 runtime is ~133 MB - clones are correspondingly sized.



