Eufy-Security-WS

Eufy-Security-WS

Docker app from Exes' Repository

Overview

A small server wrapper around eufy-security-client library to access it via a WebSocket Exposes the client library over websocket Implements almost all functionality of the client library Including live streaming https://hub.docker.com/r/bropat/eufy-security-ws/

eufy-security-ws

[!CAUTION]

🚨🚨🚨 LIBRARY DEPRECATION NOTICE 🚨🚨🚨

Active development moved to https://github.com/mega-yfue/eufy-sdk


Logo

node NPM version Downloads Total Downloads Dependency Status Known Vulnerabilities

NPM

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:

ko-fi Donate

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)

Categories

Download Statistics

2,463,730
Total Downloads
128,835
This Month
75,980
Avg / Month

Total Downloads Over Time

Loading chart...

Related apps

Explore more like this

Explore all

Details

Repository
bropat/eufy-security-ws
Last Updated2026-09-12
First Seen2024-09-02

Runtime arguments

Web UI
http://[IP]:[PORT:3000]
Network
bridge
Shell
sh
Privileged
false

Template configuration

Container Path 1Pathrw
Target
/data
Value
/mnt/user/appdata/eufy-security-ws
Container Port 1Porttcp
Target
3000
Default
3000
Value
3000
USERNAMEVariable

Eufy Account Username (required)

PASSWORDVariable

Eufy Account Password (required)

COUNTRYVariable

ISO 3166-1 Alpha-2 country code (default: US)

Default
US
Value
US
LANGUAGEVariable

ISO 639 language code (default: en)

Default
en
Value
en
TRUSTED_DEVICE_NAMEVariable

Label of the trusted devices (viewable with 2fa activated in Eufy App; default: random device name)

Default
eufyclient
EVENT_DURATION_SECONDSVariable

Duration in seconds before an event is reset E.g. motion event (default: 10 sec.)

Default
10
Value
10
P2P_CONNECTION_SETUPVariable

P2P connection setup (default: 0 ; Prefers local connection over cloud)

Value
0
POLLING_INTERVAL_MINUTESVariable

Polling intervall for data refresh from Eufy Cloud (default: 10 min.)

Default
10
Value
10
ACCEPT_INVITATIONSVariable
Default
false
Value
true
STATION_IP_ADDRESSESVariable

Suggested IP addresses for a stations (default: unset; value format: station_serial1:ipaddress1;station_serial2:ipaddress2)

DEBUGVariable
Value
false