Documentation: Command Reference

Bitmap

Operations on the Bitmap data type


BITCOUNT Counts the number of set bits (population counting) in a string.
BITFIELD Performs arbitrary bitfield integer operations on strings.
BITFIELD_RO Performs arbitrary read-only 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.

Cluster

Valkey Cluster management


ASKING Signals that a cluster client is following an -ASK redirect.
CLUSTER A container for Cluster commands.
CLUSTER ADDSLOTS Assigns new hash slots to a node.
CLUSTER ADDSLOTSRANGE Assigns new hash slot ranges to a node.
CLUSTER BUMPEPOCH Advances the cluster config epoch.
CLUSTER COUNT-FAILURE-REPORTS Returns the number of active failure reports active for a node.
CLUSTER COUNTKEYSINSLOT Returns the number of keys in a hash slot.
CLUSTER DELSLOTS Sets hash slots as unbound for a node.
CLUSTER DELSLOTSRANGE Sets hash slot ranges as unbound for a node.
CLUSTER FAILOVER Forces a replica to perform a manual failover of its primary.
CLUSTER FLUSHSLOTS Deletes all slots information from a node.
CLUSTER FORGET Removes a node from the nodes table.
CLUSTER GETKEYSINSLOT Returns the key names in a hash slot.
CLUSTER HELP Returns helpful text about the different subcommands.
CLUSTER INFO Returns information about the state of a node.
CLUSTER KEYSLOT Returns the hash slot for a key.
CLUSTER LINKS Returns a list of all TCP links to and from peer nodes.
CLUSTER MEET Forces a node to handshake with another node.
CLUSTER MYID Returns the ID of a node.
CLUSTER MYSHARDID Returns the shard ID of a node.
CLUSTER NODES Returns the cluster configuration for a node.
CLUSTER REPLICAS Lists the replica nodes of a primary node.
CLUSTER REPLICATE Configure a node as replica of a primary node.
CLUSTER RESET Resets a node.
CLUSTER SAVECONFIG Forces a node to save the cluster configuration to disk.
CLUSTER SET-CONFIG-EPOCH Sets the configuration epoch for a new node.
CLUSTER SETSLOT Binds a hash slot to a node.
CLUSTER SHARDS Returns the mapping of cluster slots to shards.
CLUSTER SLAVES Lists the replica nodes of a primary node.
CLUSTER SLOT-STATS Return an array of slot usage statistics for slots assigned to the current node.
CLUSTER SLOTS Returns the mapping of cluster slots to nodes.
READONLY Enables read-only queries for a connection to a Valkey replica node.
READWRITE Enables read-write queries for a connection to a Valkey replica node.

Connection

Client connections management


AUTH Authenticates the connection.
CLIENT A container for client connection commands.
CLIENT CACHING Instructs the server whether to track the keys in the next request.
CLIENT CAPA A client claims its capability.
CLIENT GETNAME Returns the name of the connection.
CLIENT GETREDIR Returns the client ID to which the connection's tracking notifications are redirected.
CLIENT HELP Returns helpful text about the different subcommands.
CLIENT ID Returns the unique client ID of the connection.
CLIENT INFO Returns information about the connection.
CLIENT KILL Terminates open connections.
CLIENT LIST Lists open connections.
CLIENT NO-EVICT Sets the client eviction mode of the connection.
CLIENT NO-TOUCH Controls whether commands sent by the client affect the LRU/LFU of accessed keys.
CLIENT PAUSE Suspends commands processing.
CLIENT REPLY Instructs the server whether to reply to commands.
CLIENT SETINFO Sets information specific to the client or connection.
CLIENT SETNAME Sets the connection name.
CLIENT TRACKING Controls server-assisted client-side caching for the connection.
CLIENT TRACKINGINFO Returns information about server-assisted client-side caching for the connection.
CLIENT UNBLOCK Unblocks a client blocked by a blocking command from a different connection.
CLIENT UNPAUSE Resumes processing commands from paused clients.
ECHO Returns the given string.
HELLO Handshakes with the server.
PING Returns the server's liveliness response.
QUIT Closes the connection.
RESET Resets the connection.
SELECT Changes the selected database.

Generic

Generic commands


COPY Copies the value of a key to a new key.
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.
EXPIRETIME Returns the expiration time of a key as a Unix timestamp.
KEYS Returns all key names that match a pattern.
MIGRATE Atomically transfers a key from one instance to another.
MOVE Moves a key to another database.
OBJECT A container for object introspection commands.
OBJECT ENCODING Returns the internal encoding of an object.
OBJECT FREQ Returns the logarithmic access frequency counter of an object.
OBJECT HELP Returns helpful text about the different subcommands.
OBJECT IDLETIME Returns the time since the last access to an object.
OBJECT REFCOUNT Returns the reference count of a value of a key.
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.
PEXPIRETIME Returns the expiration time of a key as 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.
SORT_RO Returns the sorted elements of a list, a set, or a sorted set.
TOUCH Returns the number of existing keys out of those specified after updating the time they were last accessed.
TTL Returns the expiration time in seconds of a key.
TYPE Determines the type of value stored at a key.
UNLINK Asynchronously deletes one or more keys.
WAIT Blocks until the asynchronous replication of all preceding write commands sent by the connection is completed.
WAITAOF Blocks until all of the preceding write commands sent by the connection are written to the append-only file of the primary and/or replicas.

Geospatial indices

Operations on the Geospatial Index data type


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

Operations on the Hash data type


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

Operations on the HyperLogLog data type


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).
PFDEBUG Internal commands for debugging HyperLogLog values.
PFMERGE Merges one or more HyperLogLog values into a single key.
PFSELFTEST An internal command for testing HyperLogLog values.

List

Operations on the List data type


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.

Pub/Sub

Pub/Sub commands


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.

Scripting and Functions

Valkey server-side scripting and functions


EVAL Executes a server-side Lua script.
EVALSHA Executes a server-side Lua script by SHA1 digest.
EVALSHA_RO Executes a read-only server-side Lua script by SHA1 digest.
EVAL_RO Executes a read-only server-side Lua script.
FCALL Invokes a function.
FCALL_RO Invokes a read-only function.
FUNCTION A container for function commands.
FUNCTION DELETE Deletes a library and its functions.
FUNCTION DUMP Dumps all libraries into a serialized binary payload.
FUNCTION FLUSH Deletes all libraries and functions.
FUNCTION HELP Returns helpful text about the different subcommands.
FUNCTION KILL Terminates a function during execution.
FUNCTION LIST Returns information about all libraries.
FUNCTION LOAD Creates a library.
FUNCTION RESTORE Restores all libraries from a payload.
FUNCTION STATS Returns information about a function during execution.
SCRIPT A container for Lua scripts management commands.
SCRIPT DEBUG Sets the debug mode of server-side Lua scripts.
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 KILL Terminates a server-side Lua script during execution.
SCRIPT LOAD Loads a server-side Lua script to the script cache.
SCRIPT SHOW Show server-side Lua script in the script cache.

Server

Server management commands


ACL A container for Access List Control commands.
ACL CAT Lists the ACL categories, or the commands inside a category.
ACL DELUSER Deletes ACL users, and terminates their connections.
ACL DRYRUN Simulates the execution of a command by a user, without executing the command.
ACL GENPASS Generates a pseudorandom, secure password that can be used to identify ACL users.
ACL GETUSER Lists the ACL rules of a user.
ACL HELP Returns helpful text about the different subcommands.
ACL LIST Dumps the effective rules in ACL file format.
ACL LOAD Reloads the rules from the configured ACL file.
ACL LOG Lists recent security events generated due to ACL rules.
ACL SAVE Saves the effective ACL rules in the configured ACL file.
ACL SETUSER Creates and modifies an ACL user and its rules.
ACL USERS Lists all ACL users.
ACL WHOAMI Returns the authenticated username of the current connection.
BGREWRITEAOF Asynchronously rewrites the append-only file to disk.
BGSAVE Asynchronously saves the database(s) to disk.
COMMAND Returns detailed information about all commands.
COMMAND COUNT Returns a count of commands.
COMMAND DOCS Returns documentary information about one, multiple or all commands.
COMMAND GETKEYS Extracts the key names from an arbitrary command.
COMMAND GETKEYSANDFLAGS Extracts the key names and access flags for an arbitrary command.
COMMAND HELP Returns helpful text about the different subcommands.
COMMAND INFO Returns information about one, multiple or all commands.
COMMAND LIST Returns a list of command names.
CONFIG A container for server configuration commands.
CONFIG GET Returns the effective values of configuration parameters.
CONFIG HELP Returns helpful text about the different subcommands.
CONFIG RESETSTAT Resets the server's statistics.
CONFIG REWRITE Persists the effective configuration to file.
CONFIG SET Sets configuration parameters in-flight.
DBSIZE Returns the number of keys in the database.
DEBUG A container for debugging commands.
FAILOVER Starts a coordinated failover from a server to one of its replicas.
FLUSHALL Removes all keys from all databases.
FLUSHDB Remove all keys from the current database.
INFO Returns information and statistics about the server.
LASTSAVE Returns the Unix timestamp of the last successful save to disk.
LATENCY A container for latency diagnostics commands.
LATENCY DOCTOR Returns a human-readable latency analysis report.
LATENCY GRAPH Returns a latency graph for an event.
LATENCY HELP Returns helpful text about the different subcommands.
LATENCY HISTOGRAM Returns the cumulative distribution of latencies of a subset or all commands.
LATENCY HISTORY Returns timestamp-latency samples for an event.
LATENCY LATEST Returns the latest latency samples for all events.
LATENCY RESET Resets the latency data for one or more events.
LOLWUT Displays computer art and the server version
MEMORY A container for memory diagnostics commands.
MEMORY DOCTOR Outputs a memory problems report.
MEMORY HELP Returns helpful text about the different subcommands.
MEMORY MALLOC-STATS Returns the allocator statistics.
MEMORY PURGE Asks the allocator to release memory.
MEMORY STATS Returns details about memory usage.
MEMORY USAGE Estimates the memory usage of a key.
MODULE A container for module commands.
MODULE HELP Returns helpful text about the different subcommands.
MODULE LIST Returns all loaded modules.
MODULE LOAD Loads a module.
MODULE LOADEX Loads a module using extended parameters.
MODULE UNLOAD Unloads a module.
MONITOR Listens for all requests received by the server in real-time.
PSYNC An internal command used in replication.
REPLCONF An internal command for configuring the replication stream.
REPLICAOF Configures a server as replica of another, or promotes it to a primary.
RESTORE-ASKING An internal command for migrating keys in a cluster.
ROLE Returns the replication role.
SAVE Synchronously saves the database(s) to disk.
SHUTDOWN Synchronously saves the database(s) to disk and shuts down the server.
SLAVEOF Sets a server as a replica of another, or promotes it to being a primary.
SLOWLOG A container for slow log commands.
SLOWLOG GET Returns the slow log's entries.
SLOWLOG HELP Show helpful text about the different subcommands
SLOWLOG LEN Returns the number of entries in the slow log.
SLOWLOG RESET Clears all entries from the slow log.
SWAPDB Swaps two databases.
SYNC An internal command used in replication.
TIME Returns the server time.

Set

Operations on the Set data type


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.

Sorted Set

Operations on the Sorted Set data type


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.

Stream

Operations on the Stream data type


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 A container for consumer groups commands.
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 HELP Returns helpful text about the different subcommands.
XGROUP SETID Sets the last-delivered ID of a consumer group.
XINFO A container for stream introspection commands.
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 HELP Returns helpful text about the different subcommands.
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.
XSETID An internal command for replicating stream values.
XTRIM Deletes messages from the beginning of a stream.

String

Operations on the String data type


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.

Transactions

Valkey Transaction management


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.