Upstash Documentation

RPOP

Pop from list tail.
2 min read

Use RPOP to remove and return elements from the tail of a list.

Without a count a single element is returned, or null when the key does not exist. With a count, up to that many elements are removed and returned in the order they were popped, and the key is deleted once the last element is gone.

Combined with LPUSH this gives a first-in, first-out queue, since producers add at the head and consumers take from the tail. Use BRPOP when a consumer should wait for work instead of polling.

Syntax#

Arguments#

ArgumentRequiredRepeatableDescription
<key>YesNoRedis key targeted by the command.
<count>NoNoNumber of elements to pop.

Response#

The reply reports the result of the operation. Error replies have the same shape in RESP2 and RESP3 and are surfaced as exceptions by the SDKs below.

ProtocolReply
RESP2Null bulk string or null array, Bulk string, or array of bulk-string values
RESP3Null, Bulk string, or array of bulk-string values
Note

Client libraries often decode bulk strings, maps, sets, and numeric strings into language-native values. The table describes the Redis wire reply.

Examples#

TCP examples use the TLS REDIS_URL from the Upstash console. REST examples use UPSTASH_REDIS_REST_URL and UPSTASH_REDIS_REST_TOKEN.

Redis CLI
@upstash/redis
upstash_redis
ioredis
node-redis
redis-py
go-redis
jedis
redis-rs