All apps Β· 0 apps
Eufy-Security-WS
Docker app from Exes' Repository
Overview
Readme
View on GitHubeufy-security-ws
[!CAUTION]
π¨π¨π¨ LIBRARY DEPRECATION NOTICE π¨π¨π¨
β οΈ Eufy is shutting down the legacy APIs this library is built on. β οΈ
Eufy is in the middle of a large migration of their ecosystem. The newer Eufy Mega platform (the "5-in-1" app, covering Security / Clean / Lights / Care) is gradually becoming the only supported backend, and Eufy has already started removing access to the legacy APIs this library was originally built on. Until recently both worked in parallel β that is no longer guaranteed.
π What this means for you:
- π’ A recent PR restores push notifications against the new v6 ("eufy_mega") backend, so push works again for now. This is a short-term stopgap.
- π‘ Other functionality that still depends on legacy endpoints may stop working without warning as Eufy continues the rollout. The current Eufy app no longer uses the legacy API at all.
- π΄ Once the legacy API is fully shut down, this library will stop functioning β no amount of patching here will change that.
π§ What's next:
A new integration built around Eufy Mega is in active development (auto-discovery, less battery drain for P2P), designed from the ground up rather than bolted onto the Security-only structure, and coordinated across the Home Assistant, Homebridge and Homey communities so the new library works for everyone.
π Treat this release as a temporary stopgap. π
This notice will be updated as the migration progresses.

Small server wrapper around eufy-security-client library to access it via a WebSocket.
Join us on Discord:
The development of this server was inspired by the following project:
Credits go to them as well.
If you appreciate my work and progress and want to support me, you can do it here:
This project is not affiliated with Anker and Eufy (Eufy Security). It is a personal project that is maintained in spare time.
Get started
To try it out or for more information, such as API documentation, Docker image, etc., please see here.
Deployment
Instructions aimed at maintainers for deploying a new version: Deployment
RSA_PKCS1_PADDING / CVE-2023-46809
The Eufy cloud handshake requires RSA_PKCS1_PADDING, which Node.js restricted as part of the
Marvin attack fix (CVE-2023-46809). Earlier versions worked around this by launching Node with
--security-revert=CVE-2023-46809, but that flag is no longer recognized on Node 24+ and causes
Node to abort on startup (Error: Attempt to revert an unknown CVE).
This is now handled by eufy-security-client's embedded (pure-JS) PKCS#1 implementation, which is
enabled by default (enableEmbeddedPKCS1Support: true). No Node flag is required and you no longer
need to set anything. To opt out, set "enableEmbeddedPKCS1Support": false in your config file.
Changelog
1.9.9 (2026-02-14)
- Upgrade to eufy-security-client 3.7.0
- Feature: Add search by date for events @temp-droid in https://github.com/bropat/eufy-security-ws/pull/502
- Fix: Fixed websocket handle by @temp-droid in https://github.com/bropat/eufy-security-ws/pull/499
Install Eufy-Security-WS on Unraid in a few clicks.
Find Eufy-Security-WS in Community Apps on your Unraid server, review the template, and click Install. Unraid handles the Docker app or plugin setup from the published template.
Categories
Download Statistics
Total Downloads Over Time
Related apps
Explore more like this
Explore allLinks
Details
bropat/eufy-security-wsRuntime arguments
- Web UI
http://[IP]:[PORT:3000]- Network
bridge- Shell
sh- Privileged
- false
Template configuration
- Target
- /data
- Value
- /mnt/user/appdata/eufy-security-ws
- Target
- 3000
- Default
- 3000
- Value
- 3000
Eufy Account Username (required)
Eufy Account Password (required)
ISO 3166-1 Alpha-2 country code (default: US)
- Default
- US
- Value
- US
ISO 639 language code (default: en)
- Default
- en
- Value
- en
Label of the trusted devices (viewable with 2fa activated in Eufy App; default: random device name)
- Default
- eufyclient
Duration in seconds before an event is reset E.g. motion event (default: 10 sec.)
- Default
- 10
- Value
- 10
P2P connection setup (default: 0 ; Prefers local connection over cloud)
- Value
- 0
Polling intervall for data refresh from Eufy Cloud (default: 10 min.)
- Default
- 10
- Value
- 10
- Default
- false
- Value
- true
Suggested IP addresses for a stations (default: unset; value format: station_serial1:ipaddress1;station_serial2:ipaddress2)
- Value
- false
