Supported and restricted Redis commands - Amazon ElastiCache for Redis
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

Supported and restricted Redis commands

Supported Redis commands

Supported Redis commands

The following Redis commands are supported by serverless caches. In addition to these commands, these Supported Redis JSON commands are also supported.

Bitmap Commands

  • BITCOUNT

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

    Learn more

  • BITFIELD

    Performs arbitrary bitfield integer operations on strings.

    Learn more

  • BITFIELD_RO

    Performs arbitrary read-only bitfield integer operations on strings.

    Learn more

  • BITOP

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

    Learn more

  • BITPOS

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

    Learn more

  • GETBIT

    Returns a bit value by offset.

    Learn more

  • SETBIT

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

    Learn more

Cluster Management Commands

  • CLUSTER COUNTKEYSINSLOT

    Returns the number of keys in a hash slot.

    Learn more

  • CLUSTER GETKEYSINSLOT

    Returns the key names in a hash slot.

    Learn more

  • CLUSTER INFO

    Returns information about the state of a node. In a serverless cache, returns state about the single virtual “shard” exposed to the client.

    Learn more

  • CLUSTER KEYSLOT

    Returns the hash slot for a key.

    Learn more

  • CLUSTER MYID

    Returns the ID of a node. In a serverless cache, returns state about the single virtual “shard” exposed to the client.

    Learn more

  • CLUSTER NODES

    Returns the cluster configuration for a node. In a serverless cache, returns state about the single virtual “shard” exposed to the client.

    Learn more

  • CLUSTER REPLICAS

    Lists the replica nodes of a master node. In a serverless cache, returns state about the single virtual “shard” exposed to the client.

    Learn more

  • CLUSTER SHARDS

    Returns the mapping of cluster slots to shards. In a serverless cache, returns state about the single virtual “shard” exposed to the client.

    Learn more

  • CLUSTER SLOTS

    Returns the mapping of cluster slots to nodes. In a serverless cache, returns state about the single virtual “shard” exposed to the client.

    Learn more

  • READONLY

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

    Learn more

  • READWRITE

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

    Learn more

Connection Management Commands

  • AUTH

    Authenticates the connection.

    Learn more

  • CLIENT GETNAME

    Returns the name of the connection.

    Learn more

  • CLIENT REPLY

    Instructs the server whether to reply to commands.

    Learn more

  • CLIENT SETNAME

    Sets the connection name.

    Learn more

  • ECHO

    Returns the given string.

    Learn more

  • HELLO

    Handshakes with the Redis server.

    Learn more

  • PING

    Returns the server's liveliness response.

    Learn more

  • QUIT

    Closes the connection.

    Learn more

  • RESET

    Resets the connection.

    Learn more

  • SELECT

    Changes the selected database.

    Learn more

Generic Commands

  • COPY

    Copies the value of a key to a new key.

    Learn more

  • DEL

    Deletes one or more keys.

    Learn more

  • DUMP

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

    Learn more

  • EXISTS

    Determines whether one or more keys exist.

    Learn more

  • EXPIRE

    Sets the expiration time of a key in seconds.

    Learn more

  • EXPIREAT

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

    Learn more

  • EXPIRETIME

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

    Learn more

  • PERSIST

    Removes the expiration time of a key.

    Learn more

  • PEXPIRE

    Sets the expiration time of a key in milliseconds.

    Learn more

  • PEXPIREAT

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

    Learn more

  • PEXPIRETIME

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

    Learn more

  • PTTL

    Returns the expiration time in milliseconds of a key.

    Learn more

  • RANDOMKEY

    Returns a random key name from the database.

    Learn more

  • RENAME

    Renames a key and overwrites the destination.

    Learn more

  • RENAMENX

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

    Learn more

  • RESTORE

    Creates a key from the serialized representation of a value.

    Learn more

  • SCAN

    Iterates over the key names in the database.

    Learn more

  • SORT

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

    Learn more

  • SORT_RO

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

    Learn more

  • TOUCH

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

    Learn more

  • TTL

    Returns the expiration time in seconds of a key.

    Learn more

  • TYPE

    Determines the type of value stored at a key.

    Learn more

  • UNLINK

    Asynchronously deletes one or more keys.

    Learn more

Geospatial Commands

  • GEOADD

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

    Learn more

  • GEODIST

    Returns the distance between two members of a geospatial index.

    Learn more

  • GEOHASH

    Returns members from a geospatial index as geohash strings.

    Learn more

  • GEOPOS

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

    Learn more

  • GEORADIUS

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

    Learn more

  • GEORADIUS_RO

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

    Learn more

  • GEORADIUSBYMEMBER

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

    Learn more

  • GEORADIUSBYMEMBER_RO

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

    Learn more

  • GEOSEARCH

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

    Learn more

  • GEOSEARCHSTORE

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

    Learn more

Hash Commands

  • HDEL

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

    Learn more

  • HEXISTS

    Determines whether a field exists in a hash.

    Learn more

  • HGET

    Returns the value of a field in a hash.

    Learn more

  • HGETALL

    Returns all fields and values in a hash.

    Learn more

  • 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.

    Learn more

  • HINCRBYFLOAT

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

    Learn more

  • HKEYS

    Returns all fields in a hash.

    Learn more

  • HLEN

    Returns the number of fields in a hash.

    Learn more

  • HMGET

    Returns the values of all fields in a hash.

    Learn more

  • HMSET

    Sets the values of multiple fields.

    Learn more

  • HRANDFIELD

    Returns one or more random fields from a hash.

    Learn more

  • HSCAN

    Iterates over fields and values of a hash.

    Learn more

  • HSET

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

    Learn more

  • HSETNX

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

    Learn more

  • HSTRLEN

    Returns the length of the value of a field.

    Learn more

  • HVALS

    Returns all values in a hash.

    Learn more

HyperLogLog Commands

  • PFADD

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

    Learn more

  • PFCOUNT

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

    Learn more

  • PFMERGE

    Merges one or more HyperLogLog values into a single key.

    Learn more

List Commands

  • 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.

    Learn more

  • 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.

    Learn more

  • 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.

    Learn more

  • 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.

    Learn more

  • 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.

    Learn more

  • LINDEX

    Returns an element from a list by its index.

    Learn more

  • LINSERT

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

    Learn more

  • LLEN

    Returns the length of a list.

    Learn more

  • LMOVE

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

    Learn more

  • LMPOP

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

    Learn more

  • LPOP

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

    Learn more

  • LPOS

    Returns the index of matching elements in a list.

    Learn more

  • LPUSH

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

    Learn more

  • LPUSHX

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

    Learn more

  • LRANGE

    Returns a range of elements from a list.

    Learn more

  • LREM

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

    Learn more

  • LSET

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

    Learn more

  • LTRIM

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

    Learn more

  • RPOP

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

    Learn more

  • 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.

    Learn more

  • RPUSH

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

    Learn more

  • RPUSHX

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

    Learn more

Pub/Sub Commands

Note

PUBSUB commands internally use sharded PUBSUB, so channel names will be mixed.

  • PUBLISH

    Posts a message to a channel.

    Learn more

  • PUBSUB CHANNELS

    Returns the active channels.

    Learn more

  • PUBSUB NUMSUB

    Returns a count of subscribers to channels.

    Learn more

  • PUBSUB SHARDCHANNELS

    Returns the active shard channels.

    PUBSUB-SHARDCHANNELS

  • PUBSUB SHARDNUMSUB

    Returns the count of subscribers of shard channels.

    PUBSUB-SHARDNUMSUB

  • SPUBLISH

    Post a message to a shard channel

    Learn more

  • SSUBSCRIBE

    Listens for messages published to shard channels.

    Learn more

  • SUBSCRIBE

    Listens for messages published to channels.

    Learn more

  • SUNSUBSCRIBE

    Stops listening to messages posted to shard channels.

    Learn more

  • UNSUBSCRIBE

    Stops listening to messages posted to channels.

    Learn more

Scripting Commands

  • EVAL

    Executes a server-side Lua script.

    Learn more

  • EVAL_RO

    Executes a read-only server-side Lua script.

    Learn more

  • EVALSHA

    Executes a server-side Lua script by SHA1 digest.

    Learn more

  • EVALSHA_RO

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

    Learn more

  • SCRIPT EXISTS

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

    Learn more

  • SCRIPT FLUSH

    Currently a no-op, script cache is managed by the service.

    Learn more

  • SCRIPT LOAD

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

    Learn more

Server Management Commands

  • ACL CAT

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

    Learn more

  • ACL GENPASS

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

    Learn more

  • ACL GETUSER

    Lists the ACL rules of a user.

    Learn more

  • ACL LIST

    Dumps the effective rules in ACL file format.

    Learn more

  • ACL USERS

    Lists all ACL users.

    Learn more

  • ACL WHOAMI

    Returns the authenticated username of the current connection.

    Learn more

  • DBSIZE

    Return the number of keys in the currently-selected database. This operation is not guaranteed to be atomic across all slots.

    Learn more

  • COMMAND

    Returns detailed information about all commands.

    Learn more

  • COMMAND COUNT

    Returns a count of commands.

    Learn more

  • COMMAND DOCS

    Returns documentary information about one, multiple or all commands.

    Learn more

  • COMMAND GETKEYS

    Extracts the key names from an arbitrary command.

    Learn more

  • COMMAND GETKEYSANDFLAGS

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

    Learn more

  • COMMAND INFO

    Returns information about one, multiple or all commands.

    Learn more

  • COMMAND LIST

    Returns a list of command names.

    Learn more

  • FLUSHALL

    Removes all keys from all databases. This operation is not guaranteed to be atomic across all slots.

    Learn more

  • FLUSHDB

    Remove all keys from the current database. This operation is not guaranteed to be atomic across all slots.

    Learn more

  • INFO

    Returns information and statistics about the server.

    Learn more

  • LOLWUT

    Displays computer art and the Redis version.

    Learn more

  • ROLE

    Returns the replication role.

    Learn more

  • TIME

    Returns the server time.

    Learn more

Set Commands

  • SADD

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

    Learn more

  • SCARDT

    Returns the number of members in a set.

    Learn more

  • SDIFF

    Returns the difference of multiple sets.

    Learn more

  • SDIFFSTORE

    Stores the difference of multiple sets in a key.

    Learn more

  • SINTER

    Returns the intersect of multiple sets.

    Learn more

  • SINTERCARD

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

    Learn more

  • SINTERSTORE

    Stores the intersect of multiple sets in a key.

    Learn more

  • SISMEMBER

    Determines whether a member belongs to a set.

    Learn more

  • SMEMBERS

    Returns all members of a set.

    Learn more

  • SMISMEMBER

    Determines whether multiple members belong to a set.

    Learn more

  • SMOVE

    Moves a member from one set to another.

    Learn more

  • SPOP

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

    Learn more

  • SRANDMEMBER

    Get one or multiple random members from a set

    Learn more

  • SREM

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

    Learn more

  • SSCAN

    Iterates over members of a set.

    Learn more

  • SUNION

    Returns the union of multiple sets.

    Learn more

  • SUNIONSTORE

    Stores the union of multiple sets in a key.

    Learn more

Sorted Set Commands

  • 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.

    Learn more

  • 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.

    Learn more

  • 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.

    Learn more

  • ZADD

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

    Learn more

  • ZCARD

    Returns the number of members in a sorted set.

    Learn more

  • ZCOUNT

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

    Learn more

  • ZDIFF

    Returns the difference between multiple sorted sets.

    Learn more

  • ZDIFFSTORE

    Stores the difference of multiple sorted sets in a key.

    Learn more

  • ZINCRBY

    Increments the score of a member in a sorted set.

    Learn more

  • ZINTER

    Returns the intersect of multiple sorted sets.

    Learn more

  • ZINTERCARD

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

    Learn more

  • ZINTERSTORE

    Stores the intersect of multiple sorted sets in a key.

    Learn more

  • ZLEXCOUNT

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

    Learn more

  • 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.

    Learn more

  • ZMSCORE

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

    Learn more

  • ZPOPMAX

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

    Learn more

  • ZPOPMIN

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

    Learn more

  • ZRANDMEMBER

    Returns one or more random members from a sorted set.

    Learn more

  • ZRANGE

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

    Learn more

  • ZRANGEBYLEX

    Returns members in a sorted set within a lexicographical range.

    Learn more

  • ZRANGEBYSCORE

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

    Learn more

  • ZRANGESTORE

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

    Learn more

  • ZRANK

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

    Learn more

  • ZREM

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

    Learn more

  • ZREMRANGEBYLEX

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

    Learn more

  • ZREMRANGEBYRANK

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

    Learn more

  • ZREMRANGEBYSCORE

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

    Learn more

  • ZREVRANGE

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

    Learn more

  • ZREVRANGEBYLEX

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

    Learn more

  • ZREVRANGEBYSCORE

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

    Learn more

  • ZREVRANK

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

    Learn more

  • ZSCAN

    Iterates over members and scores of a sorted set.

    Learn more

  • ZSCORE

    Returns the score of a member in a sorted set.

    Learn more

  • ZUNION

    Returns the union of multiple sorted sets.

    Learn more

  • ZUNIONSTORE

    Stores the union of multiple sorted sets in a key.

    Learn more

Stream Commands

  • XACK

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

    Learn more

  • XADD

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

    Learn more

  • XAUTOCLAIM

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

    Learn more

  • XCLAIM

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

    Learn more

  • XDEL

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

    Learn more

  • XGROUP CREATE

    Creates a consumer group.

    Learn more

  • XGROUP CREATECONSUMER

    Creates a consumer in a consumer group.

    Learn more

  • XGROUP DELCONSUMER

    Deletes a consumer from a consumer group.

    Learn more

  • XGROUP DESTROY

    Destroys a consumer group.

    Learn more

  • XGROUP SETID

    Sets the last-delivered ID of a consumer group.

    Learn more

  • XINFO CONSUMERS

    Returns a list of the consumers in a consumer group.

    Learn more

  • XINFO GROUPS

    Returns a list of the consumer groups of a stream.

    Learn more

  • XINFO STREAM

    Returns information about a stream.

    Learn more

  • XLEN

    Return the number of messages in a stream.

    Learn more

  • XPENDING

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

    Learn more

  • XRANGE

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

    Learn more

  • XREAD

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

    Learn more

  • XREADGROUP

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

    Learn more

  • XREVRANGE

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

    Learn more

  • XTRIM

    Deletes messages from the beginning of a stream.

    Learn more

String Commands

  • APPEND

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

    Learn more

  • DECR

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

    Learn more

  • DECRBY

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

    Learn more

  • GET

    Returns the string value of a key.

    Learn more

  • GETDEL

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

    Learn more

  • GETEX

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

    Learn more

  • GETRANGE

    Returns a substring of the string stored at a key.

    Learn more

  • GETSET

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

    Learn more

  • INCR

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

    Learn more

  • INCRBY

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

    Learn more

  • INCRBYFLOAT

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

    Learn more

  • LCS

    Finds the longest common substring.

    Learn more

  • MGET

    Atomically returns the string values of one or more keys.

    Learn more

  • MSET

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

    Learn more

  • MSETNX

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

    Learn more

  • PSETEX

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

    Learn more

  • SET

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

    Learn more

  • SETEX

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

    Learn more

  • SETNX

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

    Learn more

  • SETRANGE

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

    Learn more

  • STRLEN

    Returns the length of a string value.

    Learn more

  • SUBSTR

    Returns a substring from a string value.

    Learn more

Transaction Commands

Restricted Redis commands

To deliver a managed service experience, ElastiCache restricts access to certain cache engine-specific commands that require advanced privileges. For caches running Redis, the following commands are unavailable:

  • acl setuser

  • acl load

  • acl save

  • acl deluser

  • bgrewriteaof

  • bgsave

  • cluster addslot

  • cluster addslotsrange

  • cluster bumpepoch

  • cluster delslot

  • cluster delslotsrange

  • cluster failover

  • cluster flushslots

  • cluster forget

  • cluster links

  • cluster meet

  • cluster setslot

  • config

  • debug

  • migrate

  • psync

  • replicaof

  • save

  • slaveof

  • shutdown

  • sync

In addition, the following commands are unavailable for serverless caches:

  • acl log

  • client caching

  • client getredir

  • client id

  • client info

  • client kill

  • client list

  • client no-evict

  • client pause

  • client tracking

  • client trackinginfo

  • client unblock

  • client unpause

  • cluster count-failure-reports

  • fcall

  • fcall_ro

  • function

  • function delete

  • function dump

  • function flush

  • function help

  • function kill

  • function list

  • function load

  • function restore

  • function stats

  • keys

  • lastsave

  • latency

  • latency doctor

  • latency graph

  • latency help

  • latency histogram

  • latency history

  • latency latest

  • latency reset

  • memory

  • memory doctor

  • memory help

  • memory malloc-stats

  • memory purge

  • memory stats

  • memory usage

  • monitor

  • move

  • object

  • object encoding

  • object freq

  • object help

  • object idletime

  • object refcount

  • pfdebug

  • pfselftest

  • psubscribe

  • pubsub numpat

  • punsubscribe

  • script kill

  • slowlog

  • slowlog get

  • slowlog help

  • slowlog len

  • slowlog reset

  • swapdb

  • unwatch

  • wait

  • watch