https://github.com/n4s4/synology-api
A Python wrapper around Synology API
https://github.com/n4s4/synology-api
python python-3 synology synology-api synology-nas
Last synced: 2 months ago
JSON representation
A Python wrapper around Synology API
- Host: GitHub
- URL: https://github.com/n4s4/synology-api
- Owner: N4S4
- License: mit
- Created: 2018-06-21T23:43:47.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2025-04-02T15:48:01.000Z (3 months ago)
- Last Synced: 2025-04-04T23:02:33.798Z (3 months ago)
- Topics: python, python-3, synology, synology-api, synology-nas
- Language: Python
- Size: 1.82 MB
- Stars: 431
- Watchers: 10
- Forks: 151
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE.txt
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README

![]()
# Synology Wrapper
If you find yourself here, most probably you are trying to develop something for your NAS, this wrapper might come to your help to build your script.
I would like to specify that I do this for hobby as is my passion and in my little free time.
Said this, there is no warranties chained and this library is provided "As Is", you will find many things can be simplified, and I slowly will but feel free to [Contribute](https://n4s4.github.io/synology-api/docs/contribute).
## PremiseI've tried this wrapper only with `python3`.
I do not know if it actually runs with previous versionsBefore opening an issue make sure you do your own research, if you are not sure, write me.
## Installation
The package is distributed via pip3, but it can also be installed from source.
```bash
pip3 install synology-api
```or
```bash
pip3 install git+https://github.com/N4S4/synology-api
```## Basic Usage
Here is a basic example on how to use the package, check [Getting Started - Basic Usage](https://n4s4.github.io/synology-api/docs/getting-started/usage) for more details.```python
from synology_api.filestation import FileStation
from synology_api.downloadstation import DownloadStationfs = FileStation(
'Synology Ip',
'Synology Port',
'Username',
'Password',
secure=False,
cert_verify=False,
dsm_version=7,
debug=True,
otp_code=None
)ds = DownloadStation(
'Synology Ip',
'Synology Port',
'Username',
'Password',
secure=False,
cert_verify=False,
dsm_version=7,
debug=True,
otp_code=None
)fs_info = fs.get_info()
ds_info = ds.get_info()```
## Available Functions
At the moment there are around +300 APIs implemented with countless methods for each, the majority is not documented, but some are.
You can find a exhaustive list here:
[APIs - Supported APIs](https://n4s4.github.io/synology-api/docs/apis)## Feeling kind?
If this code helps and you wish to support me:
- [Paypal](https://paypal.me/ren4s4)
- [GitHub Sponsor](https://github.com/sponsors/N4S4)## Community
- [Telegram Group](https://t.me/SynologyApi)
- [Github Discussions](https://github.com/N4S4/synology-api/discussions)## See Related projects
- [Synology API Telegram Bot](https://github.com/N4S4/synology-api-telegram-bot)
If you want to show your project in this section, write me.
## Bugs
Maybe?
I hate bugs..
Well report them please (if you'll ever use this code)
## Conclusions
There is still a lot to implement.
The code is probably in some parts twisted, I will try to optimize it at best.
## Contributing
Just Don't Be Scared.
Check [Contribute - Contribution 101](https://n4s4.github.io/synology-api/docs/contribute) for useful information.## Author
- Renato Visaggio - _Initial_ _Work_ - [N4S4](https://github.com/N4S4)
## Contributors
- List of contributors here: [Contributors](https://github.com/N4S4/synology-api/graphs/contributors)