Skip to content

Redis commands

server commands (11/70 implemented)

BGSAVE

Asynchronously saves the database(s) to disk.

COMMAND

Returns detailed information about all commands.

COMMAND COUNT

Returns a count of commands.

COMMAND INFO

Returns information about one, multiple or all commands.

DBSIZE

Returns the number of keys in the database.

FLUSHALL

Removes all keys from all databases.

FLUSHDB

Remove all keys from the current database.

LASTSAVE

Returns the Unix timestamp of the last successful save to disk.

SAVE

Synchronously saves the database(s) to disk.

SWAPDB

Swaps two Redis databases.

TIME

Returns the server time.

Unsupported server commands

To implement support for a command, see here

ACL (not implemented)

A container for Access List Control commands.

ACL CAT (not implemented)

Lists the ACL categories, or the commands inside a category.

ACL DELUSER (not implemented)

Deletes ACL users, and terminates their connections.

ACL DRYRUN (not implemented)

Simulates the execution of a command by a user, without executing the command.

ACL GENPASS (not implemented)

Generates a pseudorandom, secure password that can be used to identify ACL users.

ACL GETUSER (not implemented)

Lists the ACL rules of a user.

ACL LIST (not implemented)

Dumps the effective rules in ACL file format.

ACL LOAD (not implemented)

Reloads the rules from the configured ACL file.

ACL LOG (not implemented)

Lists recent security events generated due to ACL rules.

ACL SAVE (not implemented)

Saves the effective ACL rules in the configured ACL file.

ACL SETUSER (not implemented)

Creates and modifies an ACL user and its rules.

ACL USERS (not implemented)

Lists all ACL users.

ACL WHOAMI (not implemented)

Returns the authenticated username of the current connection.

BGREWRITEAOF (not implemented)

Asynchronously rewrites the append-only file to disk.

COMMAND DOCS (not implemented)

Returns documentary information about one, multiple or all commands.

COMMAND GETKEYS (not implemented)

Extracts the key names from an arbitrary command.

COMMAND GETKEYSANDFLAGS (not implemented)

Extracts the key names and access flags for an arbitrary command.

COMMAND LIST (not implemented)

Returns a list of command names.

CONFIG (not implemented)

A container for server configuration commands.

CONFIG GET (not implemented)

Returns the effective values of configuration parameters.

CONFIG RESETSTAT (not implemented)

Resets the server's statistics.

CONFIG REWRITE (not implemented)

Persists the effective configuration to file.

CONFIG SET (not implemented)

Sets configuration parameters in-flight.

FAILOVER (not implemented)

Starts a coordinated failover from a server to one of its replicas.

INFO (not implemented)

Returns information and statistics about the server.

LATENCY (not implemented)

A container for latency diagnostics commands.

LATENCY DOCTOR (not implemented)

Returns a human-readable latency analysis report.

LATENCY GRAPH (not implemented)

Returns a latency graph for an event.

LATENCY HELP (not implemented)

Returns helpful text about the different subcommands.

LATENCY HISTOGRAM (not implemented)

Returns the cumulative distribution of latencies of a subset or all commands.

LATENCY HISTORY (not implemented)

Returns timestamp-latency samples for an event.

LATENCY LATEST (not implemented)

Returns the latest latency samples for all events.

LATENCY RESET (not implemented)

Resets the latency data for one or more events.

LOLWUT (not implemented)

Displays computer art and the Redis version

MEMORY (not implemented)

A container for memory diagnostics commands.

MEMORY DOCTOR (not implemented)

Outputs a memory problems report.

MEMORY MALLOC-STATS (not implemented)

Returns the allocator statistics.

MEMORY PURGE (not implemented)

Asks the allocator to release memory.

MEMORY STATS (not implemented)

Returns details about memory usage.

MEMORY USAGE (not implemented)

Estimates the memory usage of a key.

MODULE (not implemented)

A container for module commands.

MODULE LIST (not implemented)

Returns all loaded modules.

MODULE LOAD (not implemented)

Loads a module.

MODULE LOADEX (not implemented)

Loads a module using extended parameters.

MODULE UNLOAD (not implemented)

Unloads a module.

MONITOR (not implemented)

Listens for all requests received by the server in real-time.

PSYNC (not implemented)

An internal command used in replication.

REPLCONF (not implemented)

An internal command for configuring the replication stream.

REPLICAOF (not implemented)

Configures a server as replica of another, or promotes it to a master.

RESTORE-ASKING (not implemented)

An internal command for migrating keys in a cluster.

ROLE (not implemented)

Returns the replication role.

SHUTDOWN (not implemented)

Synchronously saves the database(s) to disk and shuts down the Redis server.

SLAVEOF (not implemented)

Sets a Redis server as a replica of another, or promotes it to being a master.

SLOWLOG (not implemented)

A container for slow log commands.

SLOWLOG GET (not implemented)

Returns the slow log's entries.

SLOWLOG HELP (not implemented)

Show helpful text about the different subcommands

SLOWLOG LEN (not implemented)

Returns the number of entries in the slow log.

SLOWLOG RESET (not implemented)

Clears all entries from the slow log.

SYNC (not implemented)

An internal command used in replication.

string commands (22/22 implemented)

APPEND

Appends a string to the value of a key. Creates the key if it doesn't exist.

DECR

Decrements the integer value of a key by one. Uses 0 as initial value if the key doesn't exist.

DECRBY

Decrements a number from the integer value of a key. Uses 0 as initial value if the key doesn't exist.

GET

Returns the string value of a key.

GETDEL

Returns the string value of a key after deleting the key.

GETEX

Returns the string value of a key after setting its expiration time.

GETRANGE

Returns a substring of the string stored at a key.

GETSET

Returns the previous string value of a key after setting it to a new value.

INCR

Increments the integer value of a key by one. Uses 0 as initial value if the key doesn't exist.

INCRBY

Increments the integer value of a key by a number. Uses 0 as initial value if the key doesn't exist.

INCRBYFLOAT

Increment the floating point value of a key by a number. Uses 0 as initial value if the key doesn't exist.

LCS

Finds the longest common substring.

MGET

Atomically returns the string values of one or more keys.

MSET

Atomically creates or modifies the string values of one or more keys.

MSETNX

Atomically modifies the string values of one or more keys only when all keys don't exist.

PSETEX

Sets both string value and expiration time in milliseconds of a key. The key is created if it doesn't exist.

SET

Sets the string value of a key, ignoring its type. The key is created if it doesn't exist.

SETEX

Sets the string value and expiration time of a key. Creates the key if it doesn't exist.

SETNX

Set the string value of a key only when the key doesn't exist.

SETRANGE

Overwrites a part of a string value with another by an offset. Creates the key if it doesn't exist.

STRLEN

Returns the length of a string value.

SUBSTR

Returns a substring from a string value.

Unsupported cluster commands

To implement support for a command, see here

ASKING (not implemented)

Signals that a cluster client is following an -ASK redirect.

CLUSTER (not implemented)

A container for Redis Cluster commands.

CLUSTER ADDSLOTS (not implemented)

Assigns new hash slots to a node.

CLUSTER ADDSLOTSRANGE (not implemented)

Assigns new hash slot ranges to a node.

CLUSTER BUMPEPOCH (not implemented)

Advances the cluster config epoch.

CLUSTER COUNT-FAILURE-REPORTS (not implemented)

Returns the number of active failure reports active for a node.

CLUSTER COUNTKEYSINSLOT (not implemented)

Returns the number of keys in a hash slot.

CLUSTER DELSLOTS (not implemented)

Sets hash slots as unbound for a node.

CLUSTER DELSLOTSRANGE (not implemented)

Sets hash slot ranges as unbound for a node.

CLUSTER FAILOVER (not implemented)

Forces a replica to perform a manual failover of its master.

CLUSTER FLUSHSLOTS (not implemented)

Deletes all slots information from a node.

CLUSTER FORGET (not implemented)

Removes a node from the nodes table.

CLUSTER GETKEYSINSLOT (not implemented)

Returns the key names in a hash slot.

CLUSTER HELP (not implemented)

Returns helpful text about the different subcommands.

CLUSTER INFO (not implemented)

Returns information about the state of a node.

CLUSTER KEYSLOT (not implemented)

Returns the hash slot for a key.

Returns a list of all TCP links to and from peer nodes.

CLUSTER MEET (not implemented)

Forces a node to handshake with another node.

CLUSTER MYID (not implemented)

Returns the ID of a node.

CLUSTER MYSHARDID (not implemented)

Returns the shard ID of a node.

CLUSTER NODES (not implemented)

Returns the cluster configuration for a node.

CLUSTER REPLICAS (not implemented)

Lists the replica nodes of a master node.

CLUSTER REPLICATE (not implemented)

Configure a node as replica of a master node.

CLUSTER RESET (not implemented)

Resets a node.

CLUSTER SAVECONFIG (not implemented)

Forces a node to save the cluster configuration to disk.

CLUSTER SET-CONFIG-EPOCH (not implemented)

Sets the configuration epoch for a new node.

CLUSTER SETSLOT (not implemented)

Binds a hash slot to a node.

CLUSTER SHARDS (not implemented)

Returns the mapping of cluster slots to shards.

CLUSTER SLAVES (not implemented)

Lists the replica nodes of a master node.

CLUSTER SLOTS (not implemented)

Returns the mapping of cluster slots to nodes.

READONLY (not implemented)

Enables read-only queries for a connection to a Redis Cluster replica node.

READWRITE (not implemented)

Enables read-write queries for a connection to a Reids Cluster replica node.

connection commands (3/25 implemented)

ECHO

Returns the given string.

PING

Returns the server's liveliness response.

SELECT

Changes the selected database.

Unsupported connection commands

To implement support for a command, see here

AUTH (not implemented)

Authenticates the connection.

CLIENT (not implemented)

A container for client connection commands.

CLIENT CACHING (not implemented)

Instructs the server whether to track the keys in the next request.

CLIENT GETNAME (not implemented)

Returns the name of the connection.

CLIENT GETREDIR (not implemented)

Returns the client ID to which the connection's tracking notifications are redirected.

CLIENT ID (not implemented)

Returns the unique client ID of the connection.

CLIENT INFO (not implemented)

Returns information about the connection.

CLIENT KILL (not implemented)

Terminates open connections.

CLIENT LIST (not implemented)

Lists open connections.

CLIENT NO-EVICT (not implemented)

Sets the client eviction mode of the connection.

CLIENT NO-TOUCH (not implemented)

Controls whether commands sent by the client affect the LRU/LFU of accessed keys.

CLIENT PAUSE (not implemented)

Suspends commands processing.

CLIENT REPLY (not implemented)

Instructs the server whether to reply to commands.

CLIENT SETINFO (not implemented)

Sets information specific to the client or connection.

CLIENT SETNAME (not implemented)

Sets the connection name.

CLIENT TRACKING (not implemented)

Controls server-assisted client-side caching for the connection.

CLIENT TRACKINGINFO (not implemented)

Returns information about server-assisted client-side caching for the connection.

CLIENT UNBLOCK (not implemented)

Unblocks a client blocked by a blocking command from a different connection.

CLIENT UNPAUSE (not implemented)

Resumes processing commands from paused clients.

HELLO (not implemented)

Handshakes with the Redis server.

QUIT (not implemented)

Closes the connection.

RESET (not implemented)

Resets the connection.

bitmap commands (6/6 implemented)

BITCOUNT

Counts the number of set bits (population counting) in a string.

BITFIELD

Performs arbitrary bitfield integer operations on strings.

BITOP

Performs bitwise operations on multiple strings, and stores the result.

BITPOS

Finds the first set (1) or clear (0) bit in a string.

GETBIT

Returns a bit value by offset.

SETBIT

Sets or clears the bit at offset of the string value. Creates the key if it doesn't exist.

list commands (22/22 implemented)

BLMOVE

Pops an element from a list, pushes it to another list and returns it. Blocks until an element is available otherwise. Deletes the list if the last element was moved.

BLMPOP

Pops the first element from one of multiple lists. Blocks until an element is available otherwise. Deletes the list if the last element was popped.

BLPOP

Removes and returns the first element in a list. Blocks until an element is available otherwise. Deletes the list if the last element was popped.

BRPOP

Removes and returns the last element in a list. Blocks until an element is available otherwise. Deletes the list if the last element was popped.

BRPOPLPUSH

Pops an element from a list, pushes it to another list and returns it. Block until an element is available otherwise. Deletes the list if the last element was popped.

LINDEX

Returns an element from a list by its index.

LINSERT

Inserts an element before or after another element in a list.

LLEN

Returns the length of a list.

LMOVE

Returns an element after popping it from one list and pushing it to another. Deletes the list if the last element was moved.

LMPOP

Returns multiple elements from a list after removing them. Deletes the list if the last element was popped.

LPOP

Returns the first elements in a list after removing it. Deletes the list if the last element was popped.

LPOS

Returns the index of matching elements in a list.

LPUSH

Prepends one or more elements to a list. Creates the key if it doesn't exist.

LPUSHX

Prepends one or more elements to a list only when the list exists.

LRANGE

Returns a range of elements from a list.

LREM

Removes elements from a list. Deletes the list if the last element was removed.

LSET

Sets the value of an element in a list by its index.

LTRIM

Removes elements from both ends a list. Deletes the list if all elements were trimmed.

RPOP

Returns and removes the last elements of a list. Deletes the list if the last element was popped.

RPOPLPUSH

Returns the last element of a list after removing and pushing it to another list. Deletes the list if the last element was popped.

RPUSH

Appends one or more elements to a list. Creates the key if it doesn't exist.

RPUSHX

Appends an element to a list only when the list exists.

sorted-set commands (35/35 implemented)

BZMPOP

Removes and returns a member by score from one or more sorted sets. Blocks until a member is available otherwise. Deletes the sorted set if the last element was popped.

BZPOPMAX

Removes and returns the member with the highest score from one or more sorted sets. Blocks until a member available otherwise. Deletes the sorted set if the last element was popped.

BZPOPMIN

Removes and returns the member with the lowest score from one or more sorted sets. Blocks until a member is available otherwise. Deletes the sorted set if the last element was popped.

ZADD

Adds one or more members to a sorted set, or updates their scores. Creates the key if it doesn't exist.

ZCARD

Returns the number of members in a sorted set.

ZCOUNT

Returns the count of members in a sorted set that have scores within a range.

ZDIFF

Returns the difference between multiple sorted sets.

ZDIFFSTORE

Stores the difference of multiple sorted sets in a key.

ZINCRBY

Increments the score of a member in a sorted set.

ZINTER

Returns the intersect of multiple sorted sets.

ZINTERCARD

Returns the number of members of the intersect of multiple sorted sets.

ZINTERSTORE

Stores the intersect of multiple sorted sets in a key.

ZLEXCOUNT

Returns the number of members in a sorted set within a lexicographical range.

ZMPOP

Returns the highest- or lowest-scoring members from one or more sorted sets after removing them. Deletes the sorted set if the last member was popped.

ZMSCORE

Returns the score of one or more members in a sorted set.

ZPOPMAX

Returns the highest-scoring members from a sorted set after removing them. Deletes the sorted set if the last member was popped.

ZPOPMIN

Returns the lowest-scoring members from a sorted set after removing them. Deletes the sorted set if the last member was popped.

ZRANDMEMBER

Returns one or more random members from a sorted set.

ZRANGE

Returns members in a sorted set within a range of indexes.

ZRANGEBYLEX

Returns members in a sorted set within a lexicographical range.

ZRANGEBYSCORE

Returns members in a sorted set within a range of scores.

ZRANGESTORE

Stores a range of members from sorted set in a key.

ZRANK

Returns the index of a member in a sorted set ordered by ascending scores.

ZREM

Removes one or more members from a sorted set. Deletes the sorted set if all members were removed.

ZREMRANGEBYLEX

Removes members in a sorted set within a lexicographical range. Deletes the sorted set if all members were removed.

ZREMRANGEBYRANK

Removes members in a sorted set within a range of indexes. Deletes the sorted set if all members were removed.

ZREMRANGEBYSCORE

Removes members in a sorted set within a range of scores. Deletes the sorted set if all members were removed.

ZREVRANGE

Returns members in a sorted set within a range of indexes in reverse order.

ZREVRANGEBYLEX

Returns members in a sorted set within a lexicographical range in reverse order.

ZREVRANGEBYSCORE

Returns members in a sorted set within a range of scores in reverse order.

ZREVRANK

Returns the index of a member in a sorted set ordered by descending scores.

ZSCAN

Iterates over members and scores of a sorted set.

ZSCORE

Returns the score of a member in a sorted set.

ZUNION

Returns the union of multiple sorted sets.

ZUNIONSTORE

Stores the union of multiple sorted sets in a key.

generic commands (20/33 implemented)

DEL

Deletes one or more keys.

DUMP

Returns a serialized representation of the value stored at a key.

EXISTS

Determines whether one or more keys exist.

EXPIRE

Sets the expiration time of a key in seconds.

EXPIREAT

Sets the expiration time of a key to a Unix timestamp.

KEYS

Returns all key names that match a pattern.

MOVE

Moves a key to another database.

PERSIST

Removes the expiration time of a key.

PEXPIRE

Sets the expiration time of a key in milliseconds.

PEXPIREAT

Sets the expiration time of a key to a Unix milliseconds timestamp.

PTTL

Returns the expiration time in milliseconds of a key.

RANDOMKEY

Returns a random key name from the database.

RENAME

Renames a key and overwrites the destination.

RENAMENX

Renames a key only when the target key name doesn't exist.

RESTORE

Creates a key from the serialized representation of a value.

SCAN

Iterates over the key names in the database.

SORT

Sorts the elements in a list, a set, or a sorted set, optionally storing the result.

TTL

Returns the expiration time in seconds of a key.

TYPE

Determines the type of value stored at a key.

Asynchronously deletes one or more keys.

Unsupported generic commands

To implement support for a command, see here

COPY (not implemented)

Copies the value of a key to a new key.

EXPIRETIME (not implemented)

Returns the expiration time of a key as a Unix timestamp.

MIGRATE (not implemented)

Atomically transfers a key from one Redis instance to another.

OBJECT (not implemented)

A container for object introspection commands.

OBJECT ENCODING (not implemented)

Returns the internal encoding of a Redis object.

OBJECT FREQ (not implemented)

Returns the logarithmic access frequency counter of a Redis object.

OBJECT IDLETIME (not implemented)

Returns the time since the last access to a Redis object.

OBJECT REFCOUNT (not implemented)

Returns the reference count of a value of a key.

PEXPIRETIME (not implemented)

Returns the expiration time of a key as a Unix milliseconds timestamp.

SORT_RO (not implemented)

Returns the sorted elements of a list, a set, or a sorted set.

TOUCH (not implemented)

Returns the number of existing keys out of those specified after updating the time they were last accessed.

WAIT (not implemented)

Blocks until the asynchronous replication of all preceding write commands sent by the connection is completed.

WAITAOF (not implemented)

Blocks until all of the preceding write commands sent by the connection are written to the append-only file of the master and/or replicas.

transactions commands (5/5 implemented)

DISCARD

Discards a transaction.

EXEC

Executes all commands in a transaction.

MULTI

Starts a transaction.

UNWATCH

Forgets about watched keys of a transaction.

WATCH

Monitors changes to keys to determine the execution of a transaction.

scripting commands (7/22 implemented)

EVAL

Executes a server-side Lua script.

EVALSHA

Executes a server-side Lua script by SHA1 digest.

SCRIPT

A container for Lua scripts management commands.

SCRIPT EXISTS

Determines whether server-side Lua scripts exist in the script cache.

SCRIPT FLUSH

Removes all server-side Lua scripts from the script cache.

SCRIPT HELP

Returns helpful text about the different subcommands.

SCRIPT LOAD

Loads a server-side Lua script to the script cache.

Unsupported scripting commands

To implement support for a command, see here

EVALSHA_RO (not implemented)

Executes a read-only server-side Lua script by SHA1 digest.

EVAL_RO (not implemented)

Executes a read-only server-side Lua script.

FCALL (not implemented)

Invokes a function.

FCALL_RO (not implemented)

Invokes a read-only function.

FUNCTION (not implemented)

A container for function commands.

FUNCTION DELETE (not implemented)

Deletes a library and its functions.

FUNCTION DUMP (not implemented)

Dumps all libraries into a serialized binary payload.

FUNCTION FLUSH (not implemented)

Deletes all libraries and functions.

FUNCTION KILL (not implemented)

Terminates a function during execution.

FUNCTION LIST (not implemented)

Returns information about all libraries.

FUNCTION LOAD (not implemented)

Creates a library.

FUNCTION RESTORE (not implemented)

Restores all libraries from a payload.

FUNCTION STATS (not implemented)

Returns information about a function during execution.

SCRIPT DEBUG (not implemented)

Sets the debug mode of server-side Lua scripts.

SCRIPT KILL (not implemented)

Terminates a server-side Lua script during execution.

geo commands (10/10 implemented)

GEOADD

Adds one or more members to a geospatial index. The key is created if it doesn't exist.

GEODIST

Returns the distance between two members of a geospatial index.

GEOHASH

Returns members from a geospatial index as geohash strings.

GEOPOS

Returns the longitude and latitude of members from a geospatial index.

GEORADIUS

Queries a geospatial index for members within a distance from a coordinate, optionally stores the result.

GEORADIUSBYMEMBER

Queries a geospatial index for members within a distance from a member, optionally stores the result.

GEORADIUSBYMEMBER_RO

Returns members from a geospatial index that are within a distance from a member.

GEORADIUS_RO

Returns members from a geospatial index that are within a distance from a coordinate.

GEOSEARCH

Queries a geospatial index for members inside an area of a box or a circle.

GEOSEARCHSTORE

Queries a geospatial index for members inside an area of a box or a circle, optionally stores the result.

hash commands (16/16 implemented)

HDEL

Deletes one or more fields and their values from a hash. Deletes the hash if no fields remain.

HEXISTS

Determines whether a field exists in a hash.

HGET

Returns the value of a field in a hash.

HGETALL

Returns all fields and values in a hash.

HINCRBY

Increments the integer value of a field in a hash by a number. Uses 0 as initial value if the field doesn't exist.

HINCRBYFLOAT

Increments the floating point value of a field by a number. Uses 0 as initial value if the field doesn't exist.

HKEYS

Returns all fields in a hash.

HLEN

Returns the number of fields in a hash.

HMGET

Returns the values of all fields in a hash.

HMSET

Sets the values of multiple fields.

HRANDFIELD

Returns one or more random fields from a hash.

HSCAN

Iterates over fields and values of a hash.

HSET

Creates or modifies the value of a field in a hash.

HSETNX

Sets the value of a field in a hash only when the field doesn't exist.

HSTRLEN

Returns the length of the value of a field.

HVALS

Returns all values in a hash.

hyperloglog commands (3/3 implemented)

PFADD

Adds elements to a HyperLogLog key. Creates the key if it doesn't exist.

PFCOUNT

Returns the approximated cardinality of the set(s) observed by the HyperLogLog key(s).

PFMERGE

Merges one or more HyperLogLog values into a single key.

pubsub commands (15/15 implemented)

PSUBSCRIBE

Listens for messages published to channels that match one or more patterns.

PUBLISH

Posts a message to a channel.

PUBSUB

A container for Pub/Sub commands.

PUBSUB CHANNELS

Returns the active channels.

PUBSUB HELP

Returns helpful text about the different subcommands.

PUBSUB NUMPAT

Returns a count of unique pattern subscriptions.

PUBSUB NUMSUB

Returns a count of subscribers to channels.

PUBSUB SHARDCHANNELS

Returns the active shard channels.

PUBSUB SHARDNUMSUB

Returns the count of subscribers of shard channels.

PUNSUBSCRIBE

Stops listening to messages published to channels that match one or more patterns.

SPUBLISH

Post a message to a shard channel

SSUBSCRIBE

Listens for messages published to shard channels.

SUBSCRIBE

Listens for messages published to channels.

SUNSUBSCRIBE

Stops listening to messages posted to shard channels.

UNSUBSCRIBE

Stops listening to messages posted to channels.

set commands (17/17 implemented)

SADD

Adds one or more members to a set. Creates the key if it doesn't exist.

SCARD

Returns the number of members in a set.

SDIFF

Returns the difference of multiple sets.

SDIFFSTORE

Stores the difference of multiple sets in a key.

SINTER

Returns the intersect of multiple sets.

SINTERCARD

Returns the number of members of the intersect of multiple sets.

SINTERSTORE

Stores the intersect of multiple sets in a key.

SISMEMBER

Determines whether a member belongs to a set.

SMEMBERS

Returns all members of a set.

SMISMEMBER

Determines whether multiple members belong to a set.

SMOVE

Moves a member from one set to another.

SPOP

Returns one or more random members from a set after removing them. Deletes the set if the last member was popped.

SRANDMEMBER

Get one or multiple random members from a set

SREM

Removes one or more members from a set. Deletes the set if the last member was removed.

SSCAN

Iterates over members of a set.

SUNION

Returns the union of multiple sets.

SUNIONSTORE

Stores the union of multiple sets in a key.

stream commands (20/20 implemented)

XACK

Returns the number of messages that were successfully acknowledged by the consumer group member of a stream.

XADD

Appends a new message to a stream. Creates the key if it doesn't exist.

XAUTOCLAIM

Changes, or acquires, ownership of messages in a consumer group, as if the messages were delivered to as consumer group member.

XCLAIM

Changes, or acquires, ownership of a message in a consumer group, as if the message was delivered a consumer group member.

XDEL

Returns the number of messages after removing them from a stream.

XGROUP CREATE

Creates a consumer group.

XGROUP CREATECONSUMER

Creates a consumer in a consumer group.

XGROUP DELCONSUMER

Deletes a consumer from a consumer group.

XGROUP DESTROY

Destroys a consumer group.

XGROUP SETID

Sets the last-delivered ID of a consumer group.

XINFO CONSUMERS

Returns a list of the consumers in a consumer group.

XINFO GROUPS

Returns a list of the consumer groups of a stream.

XINFO STREAM

Returns information about a stream.

XLEN

Return the number of messages in a stream.

XPENDING

Returns the information and entries from a stream consumer group's pending entries list.

XRANGE

Returns the messages from a stream within a range of IDs.

XREAD

Returns messages from multiple streams with IDs greater than the ones requested. Blocks until a message is available otherwise.

XREADGROUP

Returns new or historical messages from a stream for a consumer in a group. Blocks until a message is available otherwise.

XREVRANGE

Returns the messages from a stream within a range of IDs in reverse order.

XTRIM

Deletes messages from the beginning of a stream.