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.0.2.tar.gz (103.3 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.0.2-py3-none-any.whl (46.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: wcpan_drive_synology-2.0.2.tar.gz
  • Upload date:
  • Size: 103.3 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.0.2.tar.gz
Algorithm Hash digest
SHA256 71af3ee7bbfb68d26a294c5e6098c77bb6007f3a8d6d015ea6c95c35e8e23f51
MD5 41fe7edd931e09cfd2f2f157b4edfb46
BLAKE2b-256 c4b2c683a2f4269997b155020ffcfb9f911e9659c20978b33ec0ebda6e61e667

See more details on using hashes here.

File details

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

File metadata

  • Download URL: wcpan_drive_synology-2.0.2-py3-none-any.whl
  • Upload date:
  • Size: 46.0 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.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 dbd42a9758a863278c8ff4098a6a2547ed8ee788db61aad42d76f0d81afe6274
MD5 007bc70e2f799a9f93503cf5b8d68f60
BLAKE2b-256 803524b2d9afd20a03db205918b6ab30ee10b3749ff3da7c0a17c7d5a1f29a2b

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