Supported Valkey Commands
GLIDE supports a wide range of Valkey commands as first-class client methods. Below is a list of Valkey commands that are currently supported by GLIDE’s clients.
Available Commands
Section titled “Available Commands” ✅ Available ➖ Not Available
Bitmap
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| BITCOUNT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| BITFIELD | ✅ | ✅ | ✅ | ✅ | ✅ | ➖ |
| BITFIELD_RO | ✅ | ✅ | ✅ | ✅ | ✅ | ➖ |
| BITOP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| BITPOS | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| GETBIT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SETBIT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Bloom filter
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| BF.ADD | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| BF.CARD | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| BF.EXISTS | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| BF.INFO | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| BF.INSERT | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| BF.LOAD | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| BF.MADD | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| BF.MEXISTS | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| BF.RESERVE | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
Cluster
Connection
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| AUTH | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| CLIENT | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT CACHING | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT CAPA | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT GETNAME | ✅ | ✅ | ✅ | ✅ | ✅ | ➖ |
| CLIENT GETREDIR | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT HELP | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT ID | ✅ | ✅ | ✅ | ✅ | ✅ | ➖ |
| CLIENT IMPORT-SOURCE | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT INFO | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT KILL | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT LIST | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT NO-EVICT | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT NO-TOUCH | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT PAUSE | ✅ | ✅ | ✅ | ✅ | ➖ | ➖ |
| CLIENT REPLY | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT SETINFO | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| CLIENT SETNAME | ➖ | ➖ | ➖ | ✅ | ➖ | ➖ |
| CLIENT TRACKING | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT TRACKINGINFO | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT UNBLOCK | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| CLIENT UNPAUSE | ✅ | ✅ | ✅ | ✅ | ➖ | ➖ |
| ECHO | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HELLO | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| PING | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| QUIT | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| RESET | ✅ | ✅ | ✅ | ✅ | ➖ | ➖ |
| SELECT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Generic
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| COPY | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| DEL | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| DUMP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| EXISTS | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| EXPIRE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| EXPIREAT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| EXPIRETIME | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| KEYS | ➖ | ➖ | ✅ | ➖ | ➖ | ➖ |
| MIGRATE | ✅ | ✅ | ✅ | ✅ | ➖ | ➖ |
| MOVE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| OBJECT | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| OBJECT ENCODING | ✅ | ✅ | ✅ | ✅ | ✅ | ➖ |
| OBJECT FREQ | ✅ | ✅ | ✅ | ✅ | ✅ | ➖ |
| OBJECT HELP | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| OBJECT IDLETIME | ✅ | ✅ | ✅ | ✅ | ✅ | ➖ |
| OBJECT REFCOUNT | ✅ | ✅ | ✅ | ✅ | ✅ | ➖ |
| PERSIST | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| PEXPIRE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| PEXPIREAT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| PEXPIRETIME | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| PTTL | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| RANDOMKEY | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| RENAME | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| RENAMENX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| RESTORE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SCAN | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SORT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SORT_RO | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| TOUCH | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| TTL | ✅ | ✅ | ✅ | ✅ | ➖ | ✅ |
| TYPE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| UNLINK | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| WAIT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| WAITAOF | ➖ | ➖ | ✅ | ➖ | ✅ | ➖ |
Geospatial indices
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| GEOADD | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| GEODIST | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| GEOHASH | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| GEOPOS | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| GEORADIUS | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| GEORADIUSBYMEMBER | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| GEORADIUSBYMEMBER_RO | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| GEORADIUS_RO | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| GEOSEARCH | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| GEOSEARCHSTORE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Hash
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| HDEL | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HEXISTS | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HEXPIRE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HEXPIREAT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HEXPIRETIME | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HGET | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HGETALL | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HGETDEL | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| HGETEX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HINCRBY | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HINCRBYFLOAT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HKEYS | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HLEN | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HMGET | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HMSET | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
| HPERSIST | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HPEXPIRE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HPEXPIREAT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HPEXPIRETIME | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HPTTL | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HRANDFIELD | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HSCAN | ✅ | ✅ | ✅ | ✅ | ➖ | ✅ |
| HSET | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HSETEX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HSETNX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HSTRLEN | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HTTL | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| HVALS | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
HyperLogLog
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| PFADD | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| PFCOUNT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| PFDEBUG | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| PFMERGE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| PFSELFTEST | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
JSON
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| JSON.ARRAPPEND | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.ARRINDEX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.ARRINSERT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.ARRLEN | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.ARRPOP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.ARRTRIM | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.CLEAR | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.DEBUG | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| JSON.DEL | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.FORGET | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.GET | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.MGET | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.MSET | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| JSON.NUMINCRBY | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.NUMMULTBY | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.OBJKEYS | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.OBJLEN | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.RESP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.SET | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.STRAPPEND | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.STRLEN | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.TOGGLE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| JSON.TYPE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
List
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| BLMOVE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| BLMPOP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| BLPOP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| BRPOP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| BRPOPLPUSH | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| LINDEX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| LINSERT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| LLEN | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| LMOVE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| LMPOP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| LPOP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| LPOS | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| LPUSH | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| LPUSHX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| LRANGE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| LREM | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| LSET | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| LTRIM | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| RPOP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| RPOPLPUSH | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| RPUSH | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| RPUSHX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Pub/Sub
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| PSUBSCRIBE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| PUBLISH | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| PUBSUB | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| PUBSUB CHANNELS | ✅ | ✅ | ✅ | ✅ | ➖ | ➖ |
| PUBSUB HELP | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| PUBSUB NUMPAT | ✅ | ✅ | ✅ | ✅ | ➖ | ➖ |
| PUBSUB NUMSUB | ✅ | ✅ | ✅ | ✅ | ➖ | ➖ |
| PUBSUB SHARDCHANNELS | ✅ | ✅ | ✅ | ✅ | ➖ | ➖ |
| PUBSUB SHARDNUMSUB | ✅ | ✅ | ✅ | ✅ | ➖ | ➖ |
| PUNSUBSCRIBE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SPUBLISH | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| SSUBSCRIBE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SUBSCRIBE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SUNSUBSCRIBE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| UNSUBSCRIBE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Scripting and Functions
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| EVAL | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| EVALSHA | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| EVALSHA_RO | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| EVAL_RO | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FCALL | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FCALL_RO | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FUNCTION | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| FUNCTION DELETE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FUNCTION DUMP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FUNCTION FLUSH | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FUNCTION HELP | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| FUNCTION KILL | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FUNCTION LIST | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FUNCTION LOAD | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FUNCTION RESTORE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FUNCTION STATS | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SCRIPT | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| SCRIPT DEBUG | ➖ | ➖ | ✅ | ➖ | ➖ | ➖ |
| SCRIPT EXISTS | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SCRIPT FLUSH | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SCRIPT HELP | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| SCRIPT KILL | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SCRIPT LOAD | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SCRIPT SHOW | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Search
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| FT.AGGREGATE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FT.CREATE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FT.DROPINDEX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FT.INFO | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FT.SEARCH | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| FT._LIST | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Server
Set
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| SADD | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SCARD | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SDIFF | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SDIFFSTORE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SINTER | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SINTERCARD | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SINTERSTORE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SISMEMBER | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SMEMBERS | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SMISMEMBER | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SMOVE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SPOP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SRANDMEMBER | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SREM | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SSCAN | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SUNION | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SUNIONSTORE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Sorted Set
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| BZMPOP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| BZPOPMAX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| BZPOPMIN | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZADD | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZCARD | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZCOUNT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZDIFF | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZDIFFSTORE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZINCRBY | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZINTER | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZINTERCARD | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZINTERSTORE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZLEXCOUNT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZMPOP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZMSCORE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZPOPMAX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZPOPMIN | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZRANDMEMBER | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZRANGE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZRANGEBYLEX | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
| ZRANGEBYSCORE | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
| ZRANGESTORE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZRANK | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZREM | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZREMRANGEBYLEX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZREMRANGEBYRANK | ✅ | ✅ | ✅ | ✅ | ➖ | ✅ |
| ZREMRANGEBYSCORE | ✅ | ✅ | ✅ | ✅ | ➖ | ✅ |
| ZREVRANGE | ➖ | ➖ | ➖ | ➖ | ✅ | ➖ |
| ZREVRANGEBYLEX | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| ZREVRANGEBYSCORE | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
| ZREVRANK | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZSCAN | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZSCORE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZUNION | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| ZUNIONSTORE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
Stream
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| XACK | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XADD | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XAUTOCLAIM | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XCLAIM | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XDEL | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XGROUP | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| XGROUP CREATE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XGROUP CREATECONSUMER | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XGROUP DELCONSUMER | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XGROUP DESTROY | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XGROUP HELP | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| XGROUP SETID | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XINFO | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| XINFO CONSUMERS | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XINFO GROUPS | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XINFO HELP | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| XINFO STREAM | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XLEN | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XPENDING | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XRANGE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XREAD | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XREADGROUP | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XREVRANGE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| XSETID | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| XTRIM | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
String
| Command | Python | Node.js | Java | Go | C# | PHP |
|---|---|---|---|---|---|---|
| APPEND | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| DECR | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| DECRBY | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| DELIFEQ | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| GET | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| GETDEL | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| GETEX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| GETRANGE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| GETSET | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
| INCR | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| INCRBY | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| INCRBYFLOAT | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| LCS | ✅ | ✅ | ✅ | ✅ | ➖ | ✅ |
| MGET | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| MSET | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| MSETEX | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
| MSETNX | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| PSETEX | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
| SET | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SETEX | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
| SETNX | ➖ | ➖ | ➖ | ➖ | ➖ | ✅ |
| SETRANGE | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| STRLEN | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| SUBSTR | ➖ | ➖ | ➖ | ➖ | ➖ | ➖ |
Unsupported Commands
Section titled “Unsupported Commands”The following commands are not supported by GLIDE either because they are deprecated or incompatible with GLIDE’s architecture.
Deprecated Commands
Section titled “Deprecated Commands”The following commands are deprecated by Valkey and are not planned for implementation in GLIDE. Consider using their recommended alternatives instead.
| Command | Alternative |
|---|---|
BRPOPLPUSH | BLMOVE |
CLUSTER SLAVES | CLUSTER REPLICAS |
CLUSTER SLOTS | CLUSTER SHARDS |
GEORADIUS | GEOSEARCH |
GEORADIUSBYMEMBER | GEOSEARCH |
GEORADIUSBYMEMBER_RO | GEOSEARCH |
GEORADIUS_RO | GEOSEARCH |
HMSET | HSET |
QUIT | Close the connection / client |
RPOPLPUSH | LMOVE |
SLAVEOF | REPLICAOF |
SYNC | PSYNC |
Incompatible Commands
Section titled “Incompatible Commands”These commands are incompatible with GLIDE’s current architecture and are currently not supported. If you have a strong use case, please make an issue on our Github to start a discussion.
| Command | Reason |
|---|---|
CLIENT REPLY | Would break the multiplexed response protocol |
CLIENT UNBLOCK | Requires internal connection/client IDs not exposed to users |
DEBUG | Admin/developer debugging command; will not be exposed |
DISCARD | Not compatible with GLIDE’s transaction model. |
PSYNC | Server-to-server replication protocol; puts the connection into streaming mode incompatible with client usage |
SHUTDOWN | Dangerous admin command; no plan to support unless strong use case |
Not Applicable
Section titled “Not Applicable”These commands exist in Valkey’s command registry but are not meaningful to implement as client methods.
- Parent commands (e.g.
CLUSTER,CLIENT,PUBSUB, etc.) act as namespaces and have no functionality on their own. - Any
* HELPcommands (e.g.ACL HELP,CLIENT HELP,CLUSTER HELP, etc.) returns usage information texts.