Skip to main content

Synology Drive Web API integration for wcpan.drive

Project description

wcpan.drive.synology

Synology Drive Web API integration for wcpan.drive framework.

Installation

pip install wcpan-drive-synology

For the server component:

pip install "wcpan-drive-synology[server]"

Usage

Client

The client connects to a running wcpan.drive.synology server instance and implements the wcpan.drive.core FileService interface.

from wcpan.drive.synology import create_service

async with create_service(server_url="http://localhost:8080") as file_service:
    root = await file_service.get_root()
    print(f"Root: {root}")

Server

The server mirrors a Synology Drive instance locally via a REST API and webhook. Configure it with a YAML file (see server.example.yaml):

# Copy and edit the example config
cp server.example.yaml server.yaml

# Start the server
wcpan.drive.synology --config server.yaml serve

# Other subcommands
wcpan.drive.synology --config server.yaml gc
wcpan.drive.synology --config server.yaml backfill /
wcpan.drive.synology --config server.yaml squash

Config file

host: "0.0.0.0"
port: 8080
database_url: "sqlite:////data/mirror.db"
synology_url: "https://nas.example.com:5001"
username: "your-drive-user"
password: "your-password"
folders:
  photos: "/volume1/photos"
public_url: "https://my-server.example.com"

See server.example.yaml for the full set of options.

Requirements

  • Python >= 3.13
  • aiohttp >= 3.13.0
  • pycryptodome >= 3.0
  • wcpan-drive-core >= 5.0.6

Server extras additionally require: pyyaml, pymediainfo, wcpan-logging.

License

MIT

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

wcpan_drive_synology-2.1.0.tar.gz (105.8 kB view details)

Uploaded Source

Built Distribution

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

wcpan_drive_synology-2.1.0-py3-none-any.whl (46.8 kB view details)

Uploaded Python 3

File details

Details for the file wcpan_drive_synology-2.1.0.tar.gz.

File metadata

  • Download URL: wcpan_drive_synology-2.1.0.tar.gz
  • Upload date:
  • Size: 105.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for wcpan_drive_synology-2.1.0.tar.gz
Algorithm Hash digest
SHA256 860013e895b0b0d544dd1d7dad1131eba3a7ffbc6f25dca8f2d032fe5315179b
MD5 fbeac8e099aaae50351f2ba6c86ff6dc
BLAKE2b-256 f4d8864d389d5d3c85448c3928f589ff1c9383dc3d8e17df070c3503a59a5035

See more details on using hashes here.

File details

Details for the file wcpan_drive_synology-2.1.0-py3-none-any.whl.

File metadata

  • Download URL: wcpan_drive_synology-2.1.0-py3-none-any.whl
  • Upload date:
  • Size: 46.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.3 {"installer":{"name":"uv","version":"0.11.3","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for wcpan_drive_synology-2.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 7e188ccd6c62d3794c072f4a8916ac744fdf538a0d520e6f4aad4a1488685aab
MD5 2b32b89e2a9375c4bee99e0b73c80735
BLAKE2b-256 a42406987fbd36884fdea57bdf348000c7484f87e8ce88abe947fd247933e1a7

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