# Upstash Redis > Serverless, Redis-compatible database with a REST API and global replication. Every Upstash Redis page, grouped by sidebar section. Links point to the Markdown version of each page; drop the `.md` suffix for HTML. The index of all Upstash docs is https://upstash.com/docs/llms.txt. Search them with GET https://upstash.com/docs/search?q=. ## Overall - [Upstash Redis](https://upstash.com/docs/redis.md): Serverless, Redis-compatible database with a REST API and global replication. - [Getting Started](https://upstash.com/docs/redis/overall/getstarted.md): Create an Upstash Redis database in seconds - [Pricing & Limits](https://upstash.com/docs/redis/overall/pricing.md) - [Redis® API Compatibility: supported commands, modules, and protocols](https://upstash.com/docs/redis/overall/compatibility.md) - [Changelog](https://upstash.com/docs/redis/overall/changelog.md) - [Use Cases](https://upstash.com/docs/redis/overall/usecases.md) - [Compare](https://upstash.com/docs/redis/overall/compare.md) - [Prod Pack & Enterprise](https://upstash.com/docs/redis/overall/enterprise.md) - [llms.txt](https://upstash.com/docs/redis/overall/llms-txt.md) ## Quickstarts - [AWS Lambda](https://upstash.com/docs/redis/quickstarts/aws-lambda.md) - [SST](https://upstash.com/docs/redis/quickstarts/sst.md) - [Laravel](https://upstash.com/docs/redis/quickstarts/laravel.md) - [Azure Functions](https://upstash.com/docs/redis/quickstarts/azure-functions.md) - [Google Cloud Run functions](https://upstash.com/docs/redis/quickstarts/google-cloud-functions.md) - [Elixir](https://upstash.com/docs/redis/quickstarts/elixir.md): Tutorial on Using Upstash Redis In Your Phoenix App and Deploying it on Fly. - [Fly.io](https://upstash.com/docs/redis/quickstarts/fly.md) - [Cloudflare Workers](https://upstash.com/docs/redis/quickstarts/cloudflareworkers.md) - [Fastly](https://upstash.com/docs/redis/quickstarts/fastlycompute.md) - [DigitalOcean](https://upstash.com/docs/redis/quickstarts/digitalocean.md) - [Supabase Functions](https://upstash.com/docs/redis/quickstarts/supabase.md) - [Deno Deploy](https://upstash.com/docs/redis/quickstarts/deno-deploy.md) - [Koyeb](https://upstash.com/docs/redis/quickstarts/koyeb.md) ## Quickstarts > Vercel Functions - [App Router](https://upstash.com/docs/redis/quickstarts/vercel-functions-app-router.md) - [Pages Router](https://upstash.com/docs/redis/quickstarts/vercel-functions-pages-router.md) ## Quickstarts > Next.js 16 - [App Router](https://upstash.com/docs/redis/quickstarts/nextjs-app-router.md) - [Pages Router](https://upstash.com/docs/redis/quickstarts/nextjs-pages-router.md) ## Quickstarts > Python - [FastAPI](https://upstash.com/docs/redis/quickstarts/fastapi.md) - [Flask](https://upstash.com/docs/redis/quickstarts/flask.md) - [Django](https://upstash.com/docs/redis/quickstarts/django.md) - [AWS Lambda](https://upstash.com/docs/redis/quickstarts/python-aws-lambda.md) - [Vercel Python Runtime](https://upstash.com/docs/redis/quickstarts/vercel-python-runtime.md) ## How To - [Connect Your Client](https://upstash.com/docs/redis/howto/connect-client.md) - [Connect with @upstash/redis](https://upstash.com/docs/redis/howto/connect-with-upstash-redis.md) - [Using redis-cli](https://upstash.com/docs/redis/howto/redis-cli.md): Connect to your Upstash Redis database with redis-cli. Learn how to install it, connect over TLS, run commands, and when to use TCP versus HTTP. - [Upgrade Your Database](https://upstash.com/docs/redis/howto/upgrade-database.md) - [Metrics and Charts](https://upstash.com/docs/redis/howto/metrics-and-charts.md) - [Insights](https://upstash.com/docs/redis/howto/insights.md): See how your Redis database is routed, how it performs, how close it is to its limits, and what its keyspace holds. - [Monitor your usage](https://upstash.com/docs/redis/howto/monitoryourusage.md) - [Import/Export Data](https://upstash.com/docs/redis/howto/importexport.md) - [Listen Keyspace Notifications](https://upstash.com/docs/redis/howto/keyspacenotifications.md) - [Use IP Allowlist](https://upstash.com/docs/redis/howto/ipallowlist.md) - [Read Your Writes](https://upstash.com/docs/redis/howto/readyourwrites.md) - [Migrate Regional to Global Database](https://upstash.com/docs/redis/howto/migratefromregionaltoglobal.md) ## SDKs > Typescript - [Overview](https://upstash.com/docs/redis/sdks/ts/overview.md) - [Get Started](https://upstash.com/docs/redis/sdks/ts/getstarted.md) - [Deployment](https://upstash.com/docs/redis/sdks/ts/deployment.md) - [Advanced](https://upstash.com/docs/redis/sdks/ts/advanced.md) - [Retries](https://upstash.com/docs/redis/sdks/ts/retries.md) - [Troubleshooting](https://upstash.com/docs/redis/sdks/ts/troubleshooting.md) - [Developing or Testing](https://upstash.com/docs/redis/sdks/ts/developing.md) ## SDKs > Typescript > Commands - [Overview](https://upstash.com/docs/redis/sdks/ts/commands/overview.md): Available Commands in @upstash/redis - [Transactions](https://upstash.com/docs/redis/sdks/ts/commands/transaction.md): Transactions ## SDKs > Typescript > Commands > Array - [ARSET](https://upstash.com/docs/redis/sdks/ts/commands/array/arset.md): Write consecutive values starting at an array index. - [ARMSET](https://upstash.com/docs/redis/sdks/ts/commands/array/armset.md): Write values at several array indexes. - [ARGET](https://upstash.com/docs/redis/sdks/ts/commands/array/arget.md): Read the value at an array index. - [ARMGET](https://upstash.com/docs/redis/sdks/ts/commands/array/armget.md): Read several array slots in request order. - [ARGETRANGE](https://upstash.com/docs/redis/sdks/ts/commands/array/argetrange.md): Read every slot in an inclusive array range. - [ARSCAN](https://upstash.com/docs/redis/sdks/ts/commands/array/arscan.md): Read occupied array slots with their indexes. - [ARGREP](https://upstash.com/docs/redis/sdks/ts/commands/array/argrep.md): Search array values using one or more predicates. - [ARDEL](https://upstash.com/docs/redis/sdks/ts/commands/array/ardel.md): Delete array values without shifting later indexes. - [ARDELRANGE](https://upstash.com/docs/redis/sdks/ts/commands/array/ardelrange.md): Delete occupied slots in one or more inclusive ranges. - [ARCOUNT](https://upstash.com/docs/redis/sdks/ts/commands/array/arcount.md): Count the occupied slots in an array. - [ARLEN](https://upstash.com/docs/redis/sdks/ts/commands/array/arlen.md): Get the highest occupied array index plus one. - [ARINSERT](https://upstash.com/docs/redis/sdks/ts/commands/array/arinsert.md): Append values after the array append cursor. - [ARRING](https://upstash.com/docs/redis/sdks/ts/commands/array/arring.md): Append values to a fixed-size ring buffer. - [ARLASTITEMS](https://upstash.com/docs/redis/sdks/ts/commands/array/arlastitems.md): Read the most recently appended array values. - [ARNEXT](https://upstash.com/docs/redis/sdks/ts/commands/array/arnext.md): Read the next append index without moving the cursor. - [ARSEEK](https://upstash.com/docs/redis/sdks/ts/commands/array/arseek.md): Choose the index where the next append will write. - [AROP](https://upstash.com/docs/redis/sdks/ts/commands/array/arop.md): Aggregate values in an inclusive array range. - [ARINFO](https://upstash.com/docs/redis/sdks/ts/commands/array/arinfo.md): Inspect array size, storage layout, and append position. ## SDKs > Typescript > Commands > Auth - [ECHO](https://upstash.com/docs/redis/sdks/ts/commands/auth/echo.md) - [PING](https://upstash.com/docs/redis/sdks/ts/commands/auth/ping.md): Send a ping to the server and get a response if the server is alive. ## SDKs > Typescript > Commands > Connection - [CLIENT SETINFO](https://upstash.com/docs/redis/sdks/ts/commands/connection/client_setinfo.md): Set client library name and version information. ## SDKs > Typescript > Commands > Bitmap - [BITCOUNT](https://upstash.com/docs/redis/sdks/ts/commands/bitmap/bitcount.md): Count the number of set bits. - [BITOP](https://upstash.com/docs/redis/sdks/ts/commands/bitmap/bitop.md): Perform bitwise operations between strings. - [BITPOS](https://upstash.com/docs/redis/sdks/ts/commands/bitmap/bitpos.md): Find the position of the first set or clear bit (bit with a value of 1 or 0) in a Redis string key. - [GETBIT](https://upstash.com/docs/redis/sdks/ts/commands/bitmap/getbit.md): Retrieve a single bit. - [SETBIT](https://upstash.com/docs/redis/sdks/ts/commands/bitmap/setbit.md): Set a single bit in a string. ## SDKs > Typescript > Commands > Functions - [FCALL](https://upstash.com/docs/redis/sdks/ts/commands/functions/call.md): Invoke a function. - [FCALL_RO](https://upstash.com/docs/redis/sdks/ts/commands/functions/call_ro.md): Invoke a read-only function - [FUNCTION DELETE](https://upstash.com/docs/redis/sdks/ts/commands/functions/delete.md): Delete a library and all its functions. - [FUNCTION FLUSH](https://upstash.com/docs/redis/sdks/ts/commands/functions/flush.md): Delete all the libraries and functions. - [FUNCTION LIST](https://upstash.com/docs/redis/sdks/ts/commands/functions/list.md): List details about the registered libraries and functions. - [FUNCTION LOAD](https://upstash.com/docs/redis/sdks/ts/commands/functions/load.md): Load a library to Redis. - [FUNCTION STATS](https://upstash.com/docs/redis/sdks/ts/commands/functions/stats.md): Return information about the function running engine. ## SDKs > Typescript > Commands > Generic - [DEL](https://upstash.com/docs/redis/sdks/ts/commands/generic/del.md): Removes the specified keys. A key is ignored if it does not exist. - [EXISTS](https://upstash.com/docs/redis/sdks/ts/commands/generic/exists.md): Check if a key exists. - [EXPIRE](https://upstash.com/docs/redis/sdks/ts/commands/generic/expire.md): Sets a timeout on key. The key will automatically be deleted. - [EXPIREAT](https://upstash.com/docs/redis/sdks/ts/commands/generic/expireat.md): Sets a timeout on key. The key will automatically be deleted. - [KEYS](https://upstash.com/docs/redis/sdks/ts/commands/generic/keys.md): Returns all keys matching pattern. - [PERSIST](https://upstash.com/docs/redis/sdks/ts/commands/generic/persist.md): Remove any timeout set on the key. - [PEXPIRE](https://upstash.com/docs/redis/sdks/ts/commands/generic/pexpire.md): Sets a timeout on key. After the timeout has expired, the key will automatically be deleted. - [PEXPIREAT](https://upstash.com/docs/redis/sdks/ts/commands/generic/pexpireat.md): Sets a timeout on key. After the timeout has expired, the key will automatically be deleted. - [PTTL](https://upstash.com/docs/redis/sdks/ts/commands/generic/pttl.md): Return the expiration in milliseconds of a key. - [RANDOMKEY](https://upstash.com/docs/redis/sdks/ts/commands/generic/randomkey.md): Returns a random key from database - [RENAME](https://upstash.com/docs/redis/sdks/ts/commands/generic/rename.md): Rename a key - [RENAMENX](https://upstash.com/docs/redis/sdks/ts/commands/generic/renamenx.md): Rename a key if it does not already exist. - [SCAN](https://upstash.com/docs/redis/sdks/ts/commands/generic/scan.md): Scan the database for keys. - [TOUCH](https://upstash.com/docs/redis/sdks/ts/commands/generic/touch.md): Alters the last access time of one or more keys - [TTL](https://upstash.com/docs/redis/sdks/ts/commands/generic/ttl.md): Return the expiration in seconds of a key. - [TYPE](https://upstash.com/docs/redis/sdks/ts/commands/generic/type.md): Get the type of a key. - [UNLINK](https://upstash.com/docs/redis/sdks/ts/commands/generic/unlink.md): Removes the specified keys. A key is ignored if it does not exist. ## SDKs > Typescript > Commands > Hash - [HDEL](https://upstash.com/docs/redis/sdks/ts/commands/hash/hdel.md): Deletes one or more hash fields. - [HEXISTS](https://upstash.com/docs/redis/sdks/ts/commands/hash/hexists.md): Checks if a field exists in a hash. - [HEXPIRE](https://upstash.com/docs/redis/sdks/ts/commands/hash/hexpire.md): Sets an expiration time for one or more fields in a hash. - [HEXPIREAT](https://upstash.com/docs/redis/sdks/ts/commands/hash/hexpireat.md): Sets an expiration time for field(s) in a hash in seconds since the Unix epoch. - [HEXPIRETIME](https://upstash.com/docs/redis/sdks/ts/commands/hash/hexpiretime.md): Retrieves the expiration time of field(s) in a hash in seconds. - [HGET](https://upstash.com/docs/redis/sdks/ts/commands/hash/hget.md): Retrieves the value of a hash field. - [HGETALL](https://upstash.com/docs/redis/sdks/ts/commands/hash/hgetall.md): Retrieves all fields from a hash. - [HGETDEL](https://upstash.com/docs/redis/sdks/ts/commands/hash/hgetdel.md): Get and delete hash fields atomically. - [HGETEX](https://upstash.com/docs/redis/sdks/ts/commands/hash/hgetex.md): Get hash fields with expiration support. - [HINCRBY](https://upstash.com/docs/redis/sdks/ts/commands/hash/hincrby.md): Increments the value of a hash field by a given amount - [HINCRBYFLOAT](https://upstash.com/docs/redis/sdks/ts/commands/hash/hincrbyfloat.md): Increments the value of a hash field by a given float value. - [HKEYS](https://upstash.com/docs/redis/sdks/ts/commands/hash/hkeys.md): Return all field names in the hash stored at key. - [HLEN](https://upstash.com/docs/redis/sdks/ts/commands/hash/hlen.md): Returns the number of fields contained in the hash stored at key. - [HMGET](https://upstash.com/docs/redis/sdks/ts/commands/hash/hmget.md): Return the requested fields and their values. - [HRANDFIELD](https://upstash.com/docs/redis/sdks/ts/commands/hash/hrandfield.md): Return a random field from a hash - [HSCAN](https://upstash.com/docs/redis/sdks/ts/commands/hash/hscan.md): Scan a hash for fields. - [HSET](https://upstash.com/docs/redis/sdks/ts/commands/hash/hset.md): Write one or more fields to a hash. - [HSETEX](https://upstash.com/docs/redis/sdks/ts/commands/hash/hsetex.md): Set hash fields with expiration support. - [HPERSIST](https://upstash.com/docs/redis/sdks/ts/commands/hash/hpersist.md): Remove the expiration from one or more fields in a hash. - [HPEXPIRE](https://upstash.com/docs/redis/sdks/ts/commands/hash/hpexpire.md): Sets an expiration time for a field in a hash in milliseconds. - [HPEXPIREAT](https://upstash.com/docs/redis/sdks/ts/commands/hash/hpexpireat.md): Sets an expiration time for field(s) in a hash in milliseconds since the Unix epoch. - [HPEXPIRETIME](https://upstash.com/docs/redis/sdks/ts/commands/hash/hpexpiretime.md): Retrieves the expiration time of a field in a hash in milliseconds. - [HPTTL](https://upstash.com/docs/redis/sdks/ts/commands/hash/hpttl.md): Retrieves the remaining time-to-live (TTL) for field(s) in a hash in milliseconds. - [HSETNX](https://upstash.com/docs/redis/sdks/ts/commands/hash/hsetnx.md): Write a field to a hash but only if the field does not exist. - [HSTRLEN](https://upstash.com/docs/redis/sdks/ts/commands/hash/hstrlen.md): Returns the string length of a value in a hash. - [HTTL](https://upstash.com/docs/redis/sdks/ts/commands/hash/httl.md): Retrieves the remaining time-to-live (TTL) for field(s) in a hash in seconds. - [HVALS](https://upstash.com/docs/redis/sdks/ts/commands/hash/hvals.md): Returns all values in the hash stored at key. ## SDKs > Typescript > Commands > Json - [JSON.ARRAPPEND](https://upstash.com/docs/redis/sdks/ts/commands/json/arrappend.md): Append values to the array at path in the JSON document at key. - [JSON.ARRINDEX](https://upstash.com/docs/redis/sdks/ts/commands/json/arrindex.md): Search for the first occurrence of a JSON value in an array. - [JSON.ARRINSERT](https://upstash.com/docs/redis/sdks/ts/commands/json/arrinsert.md): Insert the json values into the array at path before the index (shifts to the right). - [JSON.ARRLEN](https://upstash.com/docs/redis/sdks/ts/commands/json/arrlen.md): Report the length of the JSON array at `path` in `key`. - [JSON.ARRPOP](https://upstash.com/docs/redis/sdks/ts/commands/json/arrpop.md): Remove and return an element from the index in the array. By default the last element from an array is popped. - [JSON.ARRTRIM](https://upstash.com/docs/redis/sdks/ts/commands/json/arrtrim.md): Trim an array so that it contains only the specified inclusive range of elements. - [JSON.CLEAR](https://upstash.com/docs/redis/sdks/ts/commands/json/clear.md): Clear container values (arrays/objects) and set numeric values to 0. - [JSON.DEL](https://upstash.com/docs/redis/sdks/ts/commands/json/del.md): Delete a key from a JSON document. - [JSON.FORGET](https://upstash.com/docs/redis/sdks/ts/commands/json/forget.md): Delete a key from a JSON document. - [JSON.GET](https://upstash.com/docs/redis/sdks/ts/commands/json/get.md): Get a single value from a JSON document. - [JSON.MERGE](https://upstash.com/docs/redis/sdks/ts/commands/json/merge.md): Merges the JSON value at path in key with the provided value. - [JSON.MGET](https://upstash.com/docs/redis/sdks/ts/commands/json/mget.md): Get the same path from multiple JSON documents. - [JSON.MSET](https://upstash.com/docs/redis/sdks/ts/commands/json/mset.md): Sets multiple JSON values at multiple paths in multiple keys. - [JSON.NUMINCRBY](https://upstash.com/docs/redis/sdks/ts/commands/json/numincrby.md): Increment the number value stored at `path` by number. - [JSON.NUMMULTBY](https://upstash.com/docs/redis/sdks/ts/commands/json/nummultby.md): Multiply the number value stored at `path` by number. - [JSON.OBJKEYS](https://upstash.com/docs/redis/sdks/ts/commands/json/objkeys.md): Return the keys in the object that`s referenced by path. - [JSON.OBJLEN](https://upstash.com/docs/redis/sdks/ts/commands/json/objlen.md): Report the number of keys in the JSON object at `path` in `key`. - [JSON.SET](https://upstash.com/docs/redis/sdks/ts/commands/json/set.md): Set the JSON value at path in key. - [JSON.STRAPPEND](https://upstash.com/docs/redis/sdks/ts/commands/json/strappend.md): Append the json-string values to the string at path. - [JSON.STRLEN](https://upstash.com/docs/redis/sdks/ts/commands/json/strlen.md): Report the length of the JSON String at path in key - [JSON.TOGGLE](https://upstash.com/docs/redis/sdks/ts/commands/json/toggle.md): Toggle a boolean value stored at `path`. - [JSON.TYPE](https://upstash.com/docs/redis/sdks/ts/commands/json/type.md): Report the type of JSON value at `path`. ## SDKs > Typescript > Commands > List - [LINDEX](https://upstash.com/docs/redis/sdks/ts/commands/list/lindex.md): Returns the element at index index in the list stored at key. - [LINSERT](https://upstash.com/docs/redis/sdks/ts/commands/list/linsert.md): Insert an element before or after another element in a list - [LLEN](https://upstash.com/docs/redis/sdks/ts/commands/list/llen.md): Returns the length of the list stored at key. - [LMOVE](https://upstash.com/docs/redis/sdks/ts/commands/list/lmove.md): Move an element from one list to another. - [LPOP](https://upstash.com/docs/redis/sdks/ts/commands/list/lpop.md): Remove and return the first element(s) of a list - [LPOS](https://upstash.com/docs/redis/sdks/ts/commands/list/lpos.md): Returns the index of matching elements inside a list. - [LPUSH](https://upstash.com/docs/redis/sdks/ts/commands/list/lpush.md): Push an element at the head of the list. - [LPUSHX](https://upstash.com/docs/redis/sdks/ts/commands/list/lpushx.md): Push an element at the head of the list only if the list exists. - [LRANGE](https://upstash.com/docs/redis/sdks/ts/commands/list/lrange.md): Returns the specified elements of the list stored at key. - [LREM](https://upstash.com/docs/redis/sdks/ts/commands/list/lrem.md): Remove the first `count` occurrences of an element from a list. - [LSET](https://upstash.com/docs/redis/sdks/ts/commands/list/lset.md): Set a value at a specific index. - [LTRIM](https://upstash.com/docs/redis/sdks/ts/commands/list/ltrim.md): Trim a list to the specified range - [RPOP](https://upstash.com/docs/redis/sdks/ts/commands/list/rpop.md): Remove and return the last element(s) of a list - [RPUSH](https://upstash.com/docs/redis/sdks/ts/commands/list/rpush.md): Push an element at the end of the list. - [RPUSHX](https://upstash.com/docs/redis/sdks/ts/commands/list/rpushx.md): Push an element at the end of the list only if the list exists. ## SDKs > Typescript > Commands > PubSub - [PUBLISH](https://upstash.com/docs/redis/sdks/ts/commands/pubsub/publish.md): Publish a message to a channel - [SUBSCRIBE](https://upstash.com/docs/redis/sdks/ts/commands/pubsub/subscribe.md): Subscribe to a channel - [PSUBSCRIBE](https://upstash.com/docs/redis/sdks/ts/commands/pubsub/psubscribe.md): Subscribe to a channel by patterns/wildcards ## SDKs > Typescript > Commands > Scripts - [EVAL](https://upstash.com/docs/redis/sdks/ts/commands/scripts/eval.md): Evaluate a Lua script server side. - [EVAL_RO](https://upstash.com/docs/redis/sdks/ts/commands/scripts/eval_ro.md): Evaluate a read-only Lua script server side. - [EVALSHA](https://upstash.com/docs/redis/sdks/ts/commands/scripts/evalsha.md): Evaluate a cached Lua script server side. - [EVALSHA_RO](https://upstash.com/docs/redis/sdks/ts/commands/scripts/evalsha_ro.md): Evaluate a cached read-only Lua script server side. - [SCRIPT EXISTS](https://upstash.com/docs/redis/sdks/ts/commands/scripts/script_exists.md): Check if scripts exist in the script cache. - [SCRIPT FLUSH](https://upstash.com/docs/redis/sdks/ts/commands/scripts/script_flush.md): Removes all scripts from the script cache. - [SCRIPT LOAD](https://upstash.com/docs/redis/sdks/ts/commands/scripts/script_load.md): Load the specified Lua script into the script cache. ## SDKs > Typescript > Commands > Server - [DBSIZE](https://upstash.com/docs/redis/sdks/ts/commands/server/dbsize.md): Count the number of keys in the database. - [FLUSHALL](https://upstash.com/docs/redis/sdks/ts/commands/server/flushall.md) - [FLUSHDB](https://upstash.com/docs/redis/sdks/ts/commands/server/flushdb.md) ## SDKs > Typescript > Commands > Set - [SADD](https://upstash.com/docs/redis/sdks/ts/commands/set/sadd.md): Adds one or more members to a set. - [SCARD](https://upstash.com/docs/redis/sdks/ts/commands/set/scard.md): Return how many members are in a set - [SDIFF](https://upstash.com/docs/redis/sdks/ts/commands/set/sdiff.md): Return the difference between sets - [SDIFFSTORE](https://upstash.com/docs/redis/sdks/ts/commands/set/sdiffstore.md): Write the difference between sets to a new set - [SINTER](https://upstash.com/docs/redis/sdks/ts/commands/set/sinter.md): Return the intersection between sets - [SINTERSTORE](https://upstash.com/docs/redis/sdks/ts/commands/set/sinterstore.md): Return the intersection between sets and store the resulting set in a key - [SISMEMBER](https://upstash.com/docs/redis/sdks/ts/commands/set/sismember.md): Check if a member exists in a set - [SMEMBERS](https://upstash.com/docs/redis/sdks/ts/commands/set/smembers.md): Return all the members of a set - [SMISMEMBER](https://upstash.com/docs/redis/sdks/ts/commands/set/smismember.md): Check if multiple members exist in a set - [SMOVE](https://upstash.com/docs/redis/sdks/ts/commands/set/smove.md): Move a member from one set to another - [SPOP](https://upstash.com/docs/redis/sdks/ts/commands/set/spop.md): Removes and returns one or more random members from a set. - [SRANDMEMBER](https://upstash.com/docs/redis/sdks/ts/commands/set/srandmember.md): Returns one or more random members from a set. - [SREM](https://upstash.com/docs/redis/sdks/ts/commands/set/srem.md): Remove one or more members from a set - [SSCAN](https://upstash.com/docs/redis/sdks/ts/commands/set/sscan.md): Scan a set - [SUNION](https://upstash.com/docs/redis/sdks/ts/commands/set/sunion.md): Return the union between sets - [SUNIONSTORE](https://upstash.com/docs/redis/sdks/ts/commands/set/sunionstore.md): Return the union between sets and store the resulting set in a key ## SDKs > Typescript > Commands > Sorted Set - [ZADD](https://upstash.com/docs/redis/sdks/ts/commands/zset/zadd.md): Add a member to a sorted set, or update its score if it already exists. - [ZCARD](https://upstash.com/docs/redis/sdks/ts/commands/zset/zcard.md): Returns the number of elements in the sorted set stored at key. - [ZCOUNT](https://upstash.com/docs/redis/sdks/ts/commands/zset/zcount.md): Returns the number of elements in the sorted set stored at key filterd by score. - [ZDIFFSTORE](https://upstash.com/docs/redis/sdks/ts/commands/zset/zdiffstore.md): Writes the difference between sets to a new key. - [ZINCRBY](https://upstash.com/docs/redis/sdks/ts/commands/zset/zincrby.md): Increment the score of a member. - [ZINTERSTORE](https://upstash.com/docs/redis/sdks/ts/commands/zset/zinterstore.md): Writes the intersection between sets to a new key. - [ZLEXCOUNT](https://upstash.com/docs/redis/sdks/ts/commands/zset/zlexcount.md): Returns the number of elements in the sorted set stored at key filtered by lex. - [ZMSCORE](https://upstash.com/docs/redis/sdks/ts/commands/zset/zmscore.md): Returns the scores of multiple members. - [ZPOPMAX](https://upstash.com/docs/redis/sdks/ts/commands/zset/zpopmax.md): Removes and returns up to count members with the highest scores in the sorted set stored at key. - [ZPOPMIN](https://upstash.com/docs/redis/sdks/ts/commands/zset/zpopmin.md): Removes and returns up to count members with the lowest scores in the sorted set stored at key. - [ZRANGE](https://upstash.com/docs/redis/sdks/ts/commands/zset/zrange.md): Returns the specified range of elements in the sorted set stored at key. - [ZRANK](https://upstash.com/docs/redis/sdks/ts/commands/zset/zrank.md): Returns the rank of a member - [ZREM](https://upstash.com/docs/redis/sdks/ts/commands/zset/zrem.md): Remove one or more members from a sorted set - [ZREMRANGEBYLEX](https://upstash.com/docs/redis/sdks/ts/commands/zset/zremrangebylex.md): Remove all members in a sorted set between the given lexicographical range. - [ZREMRANGEBYRANK](https://upstash.com/docs/redis/sdks/ts/commands/zset/zremrangebyrank.md): Remove all members in a sorted set between the given ranks. - [ZREMRANGEBYSCORE](https://upstash.com/docs/redis/sdks/ts/commands/zset/zremrangebyscore.md): Remove all members in a sorted set between the given scores. - [ZREVRANK](https://upstash.com/docs/redis/sdks/ts/commands/zset/zrevrank.md): Returns the rank of a member in a sorted set, with scores ordered from high to low. - [ZSCAN](https://upstash.com/docs/redis/sdks/ts/commands/zset/zscan.md): Scan a sorted set - [ZSCORE](https://upstash.com/docs/redis/sdks/ts/commands/zset/zscore.md): Returns the scores of a member. - [ZUNIONSTORE](https://upstash.com/docs/redis/sdks/ts/commands/zset/zunionstore.md): Writes the union between sets to a new key. ## SDKs > Typescript > Commands > Stream - [XACK](https://upstash.com/docs/redis/sdks/ts/commands/stream/xack.md): Removes one or multiple messages from the pending entries list of a stream consumer group. - [XACKDEL](https://upstash.com/docs/redis/sdks/ts/commands/stream/xackdel.md): Acknowledge and delete stream entries atomically. - [XADD](https://upstash.com/docs/redis/sdks/ts/commands/stream/xadd.md): Appends one or more new entries to a stream. - [XAUTOCLAIM](https://upstash.com/docs/redis/sdks/ts/commands/stream/xautoclaim.md): Changes the ownership of pending messages from one consumer to another in a stream consumer group. - [XCLAIM](https://upstash.com/docs/redis/sdks/ts/commands/stream/xclaim.md): Changes the ownership of pending messages from one consumer to another in a stream consumer group. - [XDEL](https://upstash.com/docs/redis/sdks/ts/commands/stream/xdel.md): Removes the specified entries from a stream, and returns the number of entries deleted. - [XDELEX](https://upstash.com/docs/redis/sdks/ts/commands/stream/xdelex.md): Extended delete for streams with reference control. - [XGROUP](https://upstash.com/docs/redis/sdks/ts/commands/stream/xgroup.md): Manage consumer groups for Redis streams. - [XINFO](https://upstash.com/docs/redis/sdks/ts/commands/stream/xinfo.md): Returns information about streams, consumer groups, and consumers. - [XLEN](https://upstash.com/docs/redis/sdks/ts/commands/stream/xlen.md): Returns the number of entries inside a stream. - [XPENDING](https://upstash.com/docs/redis/sdks/ts/commands/stream/xpending.md): Returns information about pending messages in a stream consumer group. - [XRANGE](https://upstash.com/docs/redis/sdks/ts/commands/stream/xrange.md): Returns stream entries matching a given range of IDs. - [XREAD](https://upstash.com/docs/redis/sdks/ts/commands/stream/xread.md): Reads data from one or multiple streams, starting from the specified IDs. - [XREADGROUP](https://upstash.com/docs/redis/sdks/ts/commands/stream/xreadgroup.md): Reads data from a stream as part of a consumer group. - [XREVRANGE](https://upstash.com/docs/redis/sdks/ts/commands/stream/xrevrange.md): Returns stream entries matching a given range of IDs in reverse order. - [XTRIM](https://upstash.com/docs/redis/sdks/ts/commands/stream/xtrim.md): Trims the stream by removing entries to keep it at a reasonable size. ## SDKs > Typescript > Commands > String - [APPEND](https://upstash.com/docs/redis/sdks/ts/commands/string/append.md): Append a value to a string stored at key. - [DECR](https://upstash.com/docs/redis/sdks/ts/commands/string/decr.md): Decrement the integer value of a key by one - [DECRBY](https://upstash.com/docs/redis/sdks/ts/commands/string/decrby.md): Decrement the integer value of a key by a given number. - [GET](https://upstash.com/docs/redis/sdks/ts/commands/string/get.md): Return the value of the specified key or `null` if the key doesn't exist. - [GETDEL](https://upstash.com/docs/redis/sdks/ts/commands/string/getdel.md): Return the value of the specified key and delete the key. - [GETRANGE](https://upstash.com/docs/redis/sdks/ts/commands/string/getrange.md): Return a substring of value at the specified key. - [GETSET](https://upstash.com/docs/redis/sdks/ts/commands/string/getset.md): Return the value of the specified key and replace it with a new value. - [INCR](https://upstash.com/docs/redis/sdks/ts/commands/string/incr.md): Increment the integer value of a key by one - [INCRBY](https://upstash.com/docs/redis/sdks/ts/commands/string/incrby.md): Increment the integer value of a key by a given number. - [INCRBYFLOAT](https://upstash.com/docs/redis/sdks/ts/commands/string/incrbyfloat.md): Increment the float value of a key by a given number. - [MGET](https://upstash.com/docs/redis/sdks/ts/commands/string/mget.md): Load multiple keys from Redis in one go. - [MSET](https://upstash.com/docs/redis/sdks/ts/commands/string/mset.md): Set multiple keys in one go. - [MSETNX](https://upstash.com/docs/redis/sdks/ts/commands/string/msetnx.md): Set multiple keys in one go unless they exist already. - [SET](https://upstash.com/docs/redis/sdks/ts/commands/string/set.md): Set a key to hold a string value. - [SETRANGE](https://upstash.com/docs/redis/sdks/ts/commands/string/setrange.md): Writes the value of key at offset. - [STRLEN](https://upstash.com/docs/redis/sdks/ts/commands/string/strlen.md): Return the length of a string stored at a key. ## SDKs > Typescript > Pipelining - [Pipeline & Transaction](https://upstash.com/docs/redis/sdks/ts/pipelining/pipeline-transaction.md) - [Auto-Pipelining](https://upstash.com/docs/redis/sdks/ts/pipelining/auto-pipeline.md) ## SDKs > Python - [Overview](https://upstash.com/docs/redis/sdks/py/overview.md) - [Getting Started](https://upstash.com/docs/redis/sdks/py/gettingstarted.md) - [Features](https://upstash.com/docs/redis/sdks/py/features.md) ## SDKs > Python > Commands - [Overview](https://upstash.com/docs/redis/sdks/py/commands/overview.md): Available Commands in upstash-redis ## SDKs > Python > Commands > Array - [ARSET](https://upstash.com/docs/redis/sdks/py/commands/array/arset.md): Write consecutive values starting at an array index. - [ARMSET](https://upstash.com/docs/redis/sdks/py/commands/array/armset.md): Write values at several array indexes. - [ARGET](https://upstash.com/docs/redis/sdks/py/commands/array/arget.md): Read the value at an array index. - [ARMGET](https://upstash.com/docs/redis/sdks/py/commands/array/armget.md): Read several array slots in request order. - [ARGETRANGE](https://upstash.com/docs/redis/sdks/py/commands/array/argetrange.md): Read every slot in an inclusive array range. - [ARSCAN](https://upstash.com/docs/redis/sdks/py/commands/array/arscan.md): Read occupied array slots with their indexes. - [ARGREP](https://upstash.com/docs/redis/sdks/py/commands/array/argrep.md): Search array values using one or more predicates. - [ARDEL](https://upstash.com/docs/redis/sdks/py/commands/array/ardel.md): Delete array values without shifting later indexes. - [ARDELRANGE](https://upstash.com/docs/redis/sdks/py/commands/array/ardelrange.md): Delete occupied slots in one or more inclusive ranges. - [ARCOUNT](https://upstash.com/docs/redis/sdks/py/commands/array/arcount.md): Count the occupied slots in an array. - [ARLEN](https://upstash.com/docs/redis/sdks/py/commands/array/arlen.md): Get the highest occupied array index plus one. - [ARINSERT](https://upstash.com/docs/redis/sdks/py/commands/array/arinsert.md): Append values after the array append cursor. - [ARRING](https://upstash.com/docs/redis/sdks/py/commands/array/arring.md): Append values to a fixed-size ring buffer. - [ARLASTITEMS](https://upstash.com/docs/redis/sdks/py/commands/array/arlastitems.md): Read the most recently appended array values. - [ARNEXT](https://upstash.com/docs/redis/sdks/py/commands/array/arnext.md): Read the next append index without moving the cursor. - [ARSEEK](https://upstash.com/docs/redis/sdks/py/commands/array/arseek.md): Choose the index where the next append will write. - [AROP](https://upstash.com/docs/redis/sdks/py/commands/array/arop.md): Aggregate values in an inclusive array range. - [ARINFO](https://upstash.com/docs/redis/sdks/py/commands/array/arinfo.md): Inspect array size, storage layout, and append position. ## SDKs > Python > Commands > Auth - [ECHO](https://upstash.com/docs/redis/sdks/py/commands/auth/echo.md) - [PING](https://upstash.com/docs/redis/sdks/py/commands/auth/ping.md): Send a ping to the server and get a response if the server is alive. ## SDKs > Python > Commands > Connection - [CLIENT SETINFO](https://upstash.com/docs/redis/sdks/py/commands/connection/client_setinfo.md): Set client library name and version information. ## SDKs > Python > Commands > Bitmap - [BITCOUNT](https://upstash.com/docs/redis/sdks/py/commands/bitmap/bitcount.md): Count the number of set bits. - [BITFIELD](https://upstash.com/docs/redis/sdks/py/commands/bitmap/bitfield.md): Sets or gets parts of a bitfield - [BITOP](https://upstash.com/docs/redis/sdks/py/commands/bitmap/bitop.md): Perform bitwise operations between strings. - [BITPOS](https://upstash.com/docs/redis/sdks/py/commands/bitmap/bitpos.md): Find the position of the first set or clear bit (bit with a value of 1 or 0) in a Redis string key. - [GETBIT](https://upstash.com/docs/redis/sdks/py/commands/bitmap/getbit.md): Retrieve a single bit. ## SDKs > Python > Commands > Generic - [DEL](https://upstash.com/docs/redis/sdks/py/commands/generic/del.md): Removes the specified keys. A key is ignored if it does not exist. - [EXISTS](https://upstash.com/docs/redis/sdks/py/commands/generic/exists.md): Check if a key exists. - [EXPIRE](https://upstash.com/docs/redis/sdks/py/commands/generic/expire.md): Sets a timeout on key. The key will automatically be deleted. - [EXPIREAT](https://upstash.com/docs/redis/sdks/py/commands/generic/expireat.md): Sets a timeout on key. The key will automatically be deleted. - [KEYS](https://upstash.com/docs/redis/sdks/py/commands/generic/keys.md): Returns all keys matching pattern. - [PERSIST](https://upstash.com/docs/redis/sdks/py/commands/generic/persist.md): Remove any timeout set on the key. - [PEXPIRE](https://upstash.com/docs/redis/sdks/py/commands/generic/pexpire.md): Sets a timeout on key. After the timeout has expired, the key will automatically be deleted. - [PEXPIREAT](https://upstash.com/docs/redis/sdks/py/commands/generic/pexpireat.md): Sets a timeout on key. After the timeout has expired, the key will automatically be deleted. - [PTTL](https://upstash.com/docs/redis/sdks/py/commands/generic/pttl.md): Return the expiration in milliseconds of a key. - [RANDOMKEY](https://upstash.com/docs/redis/sdks/py/commands/generic/randomkey.md): Returns a random key from database - [RENAME](https://upstash.com/docs/redis/sdks/py/commands/generic/rename.md): Rename a key - [RENAMENX](https://upstash.com/docs/redis/sdks/py/commands/generic/renamenx.md): Rename a key if it does not already exist. - [SCAN](https://upstash.com/docs/redis/sdks/py/commands/generic/scan.md): Scan the database for keys. - [TOUCH](https://upstash.com/docs/redis/sdks/py/commands/generic/touch.md): Alters the last access time of one or more keys - [TTL](https://upstash.com/docs/redis/sdks/py/commands/generic/ttl.md): Return the expiration in seconds of a key. - [TYPE](https://upstash.com/docs/redis/sdks/py/commands/generic/type.md): Get the type of a key. - [UNLINK](https://upstash.com/docs/redis/sdks/py/commands/generic/unlink.md): Removes the specified keys. A key is ignored if it does not exist. ## SDKs > Python > Commands > Hash - [HDEL](https://upstash.com/docs/redis/sdks/py/commands/hash/hdel.md): Deletes one or more hash fields. - [HEXISTS](https://upstash.com/docs/redis/sdks/py/commands/hash/hexists.md): Checks if a field exists in a hash. - [HEXPIRE](https://upstash.com/docs/redis/sdks/py/commands/hash/hexpire.md): Set a timeout on a hash field in seconds. - [HEXPIREAT](https://upstash.com/docs/redis/sdks/py/commands/hash/hexpireat.md): Sets an expiration time for field(s) in a hash in seconds since the Unix epoch. - [HEXPIRETIME](https://upstash.com/docs/redis/sdks/py/commands/hash/hexpiretime.md): Retrieves the expiration time of field(s) in a hash in seconds. - [HGET](https://upstash.com/docs/redis/sdks/py/commands/hash/hget.md): Retrieves the value of a hash field. - [HGETALL](https://upstash.com/docs/redis/sdks/py/commands/hash/hgetall.md): Retrieves all fields from a hash. - [HGETDEL](https://upstash.com/docs/redis/sdks/py/commands/hash/hgetdel.md): Get and delete hash fields atomically. - [HGETEX](https://upstash.com/docs/redis/sdks/py/commands/hash/hgetex.md): Get hash fields with expiration support. - [HINCRBY](https://upstash.com/docs/redis/sdks/py/commands/hash/hincrby.md): Increments the value of a hash field by a given amount - [HINCRBYFLOAT](https://upstash.com/docs/redis/sdks/py/commands/hash/hincrbyfloat.md): Increments the value of a hash field by a given float value. - [HKEYS](https://upstash.com/docs/redis/sdks/py/commands/hash/hkeys.md): Return all field names in the hash stored at key. - [HLEN](https://upstash.com/docs/redis/sdks/py/commands/hash/hlen.md): Returns the number of fields contained in the hash stored at key. - [HMGET](https://upstash.com/docs/redis/sdks/py/commands/hash/hmget.md): Return the requested fields and their values. - [HRANDFIELD](https://upstash.com/docs/redis/sdks/py/commands/hash/hrandfield.md): Return a random field from a hash - [HSCAN](https://upstash.com/docs/redis/sdks/py/commands/hash/hscan.md): Scan a hash for fields. - [HSET](https://upstash.com/docs/redis/sdks/py/commands/hash/hset.md): Write one or more fields to a hash. - [HPERSIST](https://upstash.com/docs/redis/sdks/py/commands/hash/hpersist.md): Remove the expiration from one or more hash fields. - [HPEXPIRE](https://upstash.com/docs/redis/sdks/py/commands/hash/hpexpire.md): Set a timeout on a hash field in milliseconds. - [HPEXPIREAT](https://upstash.com/docs/redis/sdks/py/commands/hash/hpexpireat.md): Sets an expiration time for field(s) in a hash in milliseconds since the Unix epoch. - [HPEXPIRETIME](https://upstash.com/docs/redis/sdks/py/commands/hash/hpexpiretime.md): Retrieves the expiration time of a field in a hash in milliseconds. - [HPTTL](https://upstash.com/docs/redis/sdks/py/commands/hash/hpttl.md): Retrieves the remaining time-to-live (TTL) for field(s) in a hash in milliseconds. - [HMSET](https://upstash.com/docs/redis/sdks/py/commands/hash/hmset.md): Write multiple fields to a hash. - [HSETEX](https://upstash.com/docs/redis/sdks/py/commands/hash/hsetex.md): Set hash fields with expiration support. - [HSETNX](https://upstash.com/docs/redis/sdks/py/commands/hash/hsetnx.md): Write a field to a hash but only if the field does not exist. - [HSTRLEN](https://upstash.com/docs/redis/sdks/py/commands/hash/hstrlen.md): Returns the string length of a value in a hash. - [HTTL](https://upstash.com/docs/redis/sdks/py/commands/hash/httl.md): Retrieves the remaining time-to-live (TTL) for field(s) in a hash in seconds. - [HVALS](https://upstash.com/docs/redis/sdks/py/commands/hash/hvals.md): Returns all values in the hash stored at key. ## SDKs > Python > Commands > Json - [JSON.ARRAPPEND](https://upstash.com/docs/redis/sdks/py/commands/json/arrappend.md): Append values to the array at path in the JSON document at key. - [JSON.ARRINDEX](https://upstash.com/docs/redis/sdks/py/commands/json/arrindex.md): Search for the first occurrence of a JSON value in an array. - [JSON.ARRINSERT](https://upstash.com/docs/redis/sdks/py/commands/json/arrinsert.md): Insert the json values into the array at path before the index (shifts to the right). - [JSON.ARRLEN](https://upstash.com/docs/redis/sdks/py/commands/json/arrlen.md): Report the length of the JSON array at `path` in `key`. - [JSON.ARRPOP](https://upstash.com/docs/redis/sdks/py/commands/json/arrpop.md): Remove and return an element from the index in the array. By default the last element from an array is popped. - [JSON.ARRTRIM](https://upstash.com/docs/redis/sdks/py/commands/json/arrtrim.md): Trim an array so that it contains only the specified inclusive range of elements. - [JSON.CLEAR](https://upstash.com/docs/redis/sdks/py/commands/json/clear.md): Clear container values (arrays/objects) and set numeric values to 0. - [JSON.DEL](https://upstash.com/docs/redis/sdks/py/commands/json/del.md): Delete a key from a JSON document. - [JSON.FORGET](https://upstash.com/docs/redis/sdks/py/commands/json/forget.md): Delete a key from a JSON document. - [JSON.GET](https://upstash.com/docs/redis/sdks/py/commands/json/get.md): Get a single value from a JSON document. - [JSON.MERGE](https://upstash.com/docs/redis/sdks/py/commands/json/merge.md): Merges the JSON value at path in key with the provided value. - [JSON.MGET](https://upstash.com/docs/redis/sdks/py/commands/json/mget.md): Get the same path from multiple JSON documents. - [JSON.MSET](https://upstash.com/docs/redis/sdks/py/commands/json/mset.md): Sets multiple JSON values at multiple paths in multiple keys. - [JSON.NUMINCRBY](https://upstash.com/docs/redis/sdks/py/commands/json/numincrby.md): Increment the number value stored at `path` by number. - [JSON.NUMMULTBY](https://upstash.com/docs/redis/sdks/py/commands/json/nummultby.md): Multiply the number value stored at `path` by number. - [JSON.OBJKEYS](https://upstash.com/docs/redis/sdks/py/commands/json/objkeys.md): Return the keys in the object that`s referenced by path. - [JSON.OBJLEN](https://upstash.com/docs/redis/sdks/py/commands/json/objlen.md): Report the number of keys in the JSON object at `path` in `key`. - [JSON.RESP](https://upstash.com/docs/redis/sdks/py/commands/json/resp.md): Return the value at the path in Redis serialization protocol format. - [JSON.SET](https://upstash.com/docs/redis/sdks/py/commands/json/set.md): Set the JSON value at path in key. - [JSON.STRAPPEND](https://upstash.com/docs/redis/sdks/py/commands/json/strappend.md): Append the json-string values to the string at path. - [JSON.STRLEN](https://upstash.com/docs/redis/sdks/py/commands/json/strlen.md): Report the length of the JSON String at path in key - [JSON.TOGGLE](https://upstash.com/docs/redis/sdks/py/commands/json/toggle.md): Toggle a boolean value stored at `path`. - [JSON.TYPE](https://upstash.com/docs/redis/sdks/py/commands/json/type.md): Report the type of JSON value at `path`. ## SDKs > Python > Commands > List - [LINDEX](https://upstash.com/docs/redis/sdks/py/commands/list/lindex.md): Returns the element at index index in the list stored at key. - [LINSERT](https://upstash.com/docs/redis/sdks/py/commands/list/linsert.md): Insert an element before or after another element in a list - [LLEN](https://upstash.com/docs/redis/sdks/py/commands/list/llen.md): Returns the length of the list stored at key. - [LMOVE](https://upstash.com/docs/redis/sdks/py/commands/list/lmove.md): Move an element from one list to another. - [LPOP](https://upstash.com/docs/redis/sdks/py/commands/list/lpop.md): Remove and return the first element(s) of a list - [LPOS](https://upstash.com/docs/redis/sdks/py/commands/list/lpos.md): Returns the index of matching elements inside a list. - [LPUSH](https://upstash.com/docs/redis/sdks/py/commands/list/lpush.md): Push an element at the head of the list. - [LPUSHX](https://upstash.com/docs/redis/sdks/py/commands/list/lpushx.md): Push an element at the head of the list only if the list exists. - [LRANGE](https://upstash.com/docs/redis/sdks/py/commands/list/lrange.md): Returns the specified elements of the list stored at key. - [LREM](https://upstash.com/docs/redis/sdks/py/commands/list/lrem.md): Remove the first `count` occurrences of an element from a list. - [LSET](https://upstash.com/docs/redis/sdks/py/commands/list/lset.md): Set a value at a specific index. - [LTRIM](https://upstash.com/docs/redis/sdks/py/commands/list/ltrim.md): Trim a list to the specified range - [RPOP](https://upstash.com/docs/redis/sdks/py/commands/list/rpop.md): Remove and return the last element(s) of a list - [RPUSH](https://upstash.com/docs/redis/sdks/py/commands/list/rpush.md): Push an element at the end of the list. - [RPUSHX](https://upstash.com/docs/redis/sdks/py/commands/list/rpushx.md): Push an element at the end of the list only if the list exists. ## SDKs > Python > Commands > PubSub - [PUBLISH](https://upstash.com/docs/redis/sdks/py/commands/pubsub/publish.md): Publish a message to a channel ## SDKs > Python > Commands > Scripts - [EVAL](https://upstash.com/docs/redis/sdks/py/commands/scripts/eval.md): Evaluate a Lua script server side. - [EVAL_RO](https://upstash.com/docs/redis/sdks/py/commands/scripts/eval_ro.md): Evaluate a read-only Lua script server side. - [EVALSHA](https://upstash.com/docs/redis/sdks/py/commands/scripts/evalsha.md): Evaluate a cached Lua script server side. - [EVALSHA_RO](https://upstash.com/docs/redis/sdks/py/commands/scripts/evalsha_ro.md): Evaluate a cached read-only Lua script server side. - [SCRIPT EXISTS](https://upstash.com/docs/redis/sdks/py/commands/scripts/script_exists.md): Check if scripts exist in the script cache. - [SCRIPT FLUSH](https://upstash.com/docs/redis/sdks/py/commands/scripts/script_flush.md): Removes all scripts from the script cache. - [SCRIPT LOAD](https://upstash.com/docs/redis/sdks/py/commands/scripts/script_load.md): Load the specified Lua script into the script cache. ## SDKs > Python > Commands > Server - [DBSIZE](https://upstash.com/docs/redis/sdks/py/commands/server/dbsize.md): Count the number of keys in the database. - [FLUSHALL](https://upstash.com/docs/redis/sdks/py/commands/server/flushall.md) - [FLUSHDB](https://upstash.com/docs/redis/sdks/py/commands/server/flushdb.md) ## SDKs > Python > Commands > Set - [SADD](https://upstash.com/docs/redis/sdks/py/commands/set/sadd.md): Adds one or more members to a set. - [SCARD](https://upstash.com/docs/redis/sdks/py/commands/set/scard.md): Return how many members are in a set - [SDIFF](https://upstash.com/docs/redis/sdks/py/commands/set/sdiff.md): Return the difference between sets - [SDIFFSTORE](https://upstash.com/docs/redis/sdks/py/commands/set/sdiffstore.md): Write the difference between sets to a new set - [SINTER](https://upstash.com/docs/redis/sdks/py/commands/set/sinter.md): Return the intersection between sets - [SINTER](https://upstash.com/docs/redis/sdks/py/commands/set/sinterstore.md): Return the intersection between sets and store the resulting set in a key - [SISMEMBER](https://upstash.com/docs/redis/sdks/py/commands/set/sismember.md): Check if a member exists in a set - [SMEMBERS](https://upstash.com/docs/redis/sdks/py/commands/set/smembers.md): Return all the members of a set - [SMISMEMBER](https://upstash.com/docs/redis/sdks/py/commands/set/smismember.md): Check if multiple members exist in a set - [SMOVE](https://upstash.com/docs/redis/sdks/py/commands/set/smove.md): Move a member from one set to another - [SPOP](https://upstash.com/docs/redis/sdks/py/commands/set/spop.md): Removes and returns one or more random members from a set. - [SRANDMEMBER](https://upstash.com/docs/redis/sdks/py/commands/set/srandmember.md): Returns one or more random members from a set. - [SREM](https://upstash.com/docs/redis/sdks/py/commands/set/srem.md): Remove one or more members from a set - [SSCAN](https://upstash.com/docs/redis/sdks/py/commands/set/sscan.md): Scan a set - [SUNION](https://upstash.com/docs/redis/sdks/py/commands/set/sunion.md): Return the union between sets - [SUNIONSTORE](https://upstash.com/docs/redis/sdks/py/commands/set/sunionstore.md): Return the union between sets and store the resulting set in a key ## SDKs > Python > Commands > Sorted Set - [ZADD](https://upstash.com/docs/redis/sdks/py/commands/zset/zadd.md): Add a member to a sorted set, or update its score if it already exists. - [ZCARD](https://upstash.com/docs/redis/sdks/py/commands/zset/zcard.md): Returns the number of elements in the sorted set stored at key. - [ZCOUNT](https://upstash.com/docs/redis/sdks/py/commands/zset/zcount.md): Returns the number of elements in the sorted set stored at key filterd by score. - [ZDIFF](https://upstash.com/docs/redis/sdks/py/commands/zset/zdiff.md): Returns the difference between sets. - [ZDIFFSTORE](https://upstash.com/docs/redis/sdks/py/commands/zset/zdiffstore.md): Writes the difference between sets to a new key. - [ZINCRBY](https://upstash.com/docs/redis/sdks/py/commands/zset/zincrby.md): Increment the score of a member. - [ZINTER](https://upstash.com/docs/redis/sdks/py/commands/zset/zinter.md): Returns the intersection between sets. - [ZINTERSTORE](https://upstash.com/docs/redis/sdks/py/commands/zset/zinterstore.md): Calculates the intersection of sets and stores the result in a key - [ZLEXCOUNT](https://upstash.com/docs/redis/sdks/py/commands/zset/zlexcount.md): Returns the number of elements in the sorted set stored at key filterd by lex. - [ZMSCORE](https://upstash.com/docs/redis/sdks/py/commands/zset/zmscore.md): Returns the scores of multiple members. - [ZPOPMAX](https://upstash.com/docs/redis/sdks/py/commands/zset/zpopmax.md): Removes and returns up to count members with the highest scores in the sorted set stored at key. - [ZPOPMIN](https://upstash.com/docs/redis/sdks/py/commands/zset/zpopmin.md): Removes and returns up to count members with the lowest scores in the sorted set stored at key. - [ZRANDMEMBER](https://upstash.com/docs/redis/sdks/py/commands/zset/zrandmember.md): Returns one or more random members from a sorted set, optionally with their scores. - [ZRANGE](https://upstash.com/docs/redis/sdks/py/commands/zset/zrange.md): Returns the specified range of elements in the sorted set stored at key. - [ZRANK](https://upstash.com/docs/redis/sdks/py/commands/zset/zrank.md): Returns the rank of a member - [ZREM](https://upstash.com/docs/redis/sdks/py/commands/zset/zrem.md): Remove one or more members from a sorted set - [ZREMRANGEBYLEX](https://upstash.com/docs/redis/sdks/py/commands/zset/zremrangebylex.md): Remove all members in a sorted set between the given lexicographical range. - [ZREMRANGEBYRANK](https://upstash.com/docs/redis/sdks/py/commands/zset/zremrangebyrank.md): Remove all members in a sorted set between the given ranks. - [ZREMRANGEBYSCORE](https://upstash.com/docs/redis/sdks/py/commands/zset/zremrangebyscore.md): Remove all members in a sorted set between the given scores. - [ZREVRANK](https://upstash.com/docs/redis/sdks/py/commands/zset/zrevrank.md): Returns the rank of a member in a sorted set, with scores ordered from high to low. - [ZSCAN](https://upstash.com/docs/redis/sdks/py/commands/zset/zscan.md): Scan a sorted set - [ZSCORE](https://upstash.com/docs/redis/sdks/py/commands/zset/zscore.md): Returns the scores of a member. - [ZINTER](https://upstash.com/docs/redis/sdks/py/commands/zset/zunion.md): Returns the intersection between sets. - [ZUNIONSTORE](https://upstash.com/docs/redis/sdks/py/commands/zset/zunionstore.md): Writes the union between sets to a new key. ## SDKs > Python > Commands > Stream - [XACK](https://upstash.com/docs/redis/sdks/py/commands/stream/xack.md): Removes one or multiple messages from the pending entries list of a stream consumer group. - [XACKDEL](https://upstash.com/docs/redis/sdks/py/commands/stream/xackdel.md): Acknowledge and delete stream entries atomically. - [XADD](https://upstash.com/docs/redis/sdks/py/commands/stream/xadd.md): Appends one or more new entries to a stream. - [XAUTOCLAIM](https://upstash.com/docs/redis/sdks/py/commands/stream/xautoclaim.md): Changes the ownership of pending messages from one consumer to another in a stream consumer group automatically. - [XCLAIM](https://upstash.com/docs/redis/sdks/py/commands/stream/xclaim.md): Changes the ownership of pending messages from one consumer to another in a stream consumer group. - [XDEL](https://upstash.com/docs/redis/sdks/py/commands/stream/xdel.md): Removes the specified entries from a stream, and returns the number of entries deleted. - [XDELEX](https://upstash.com/docs/redis/sdks/py/commands/stream/xdelex.md): Extended delete for streams with reference control. - [XGROUP CREATE](https://upstash.com/docs/redis/sdks/py/commands/stream/xgroup_create.md): Create a new consumer group for a Redis stream. - [XGROUP CREATECONSUMER](https://upstash.com/docs/redis/sdks/py/commands/stream/xgroup_createconsumer.md): Create a new consumer in an existing consumer group. - [XGROUP DELCONSUMER](https://upstash.com/docs/redis/sdks/py/commands/stream/xgroup_delconsumer.md): Delete a consumer from a consumer group. - [XGROUP DESTROY](https://upstash.com/docs/redis/sdks/py/commands/stream/xgroup_destroy.md): Delete an entire consumer group. - [XGROUP SETID](https://upstash.com/docs/redis/sdks/py/commands/stream/xgroup_setid.md): Set the last delivered ID for a consumer group. - [XINFO CONSUMERS](https://upstash.com/docs/redis/sdks/py/commands/stream/xinfo_consumers.md): List all consumers in a consumer group. - [XINFO GROUPS](https://upstash.com/docs/redis/sdks/py/commands/stream/xinfo_groups.md): List all consumer groups for a stream. - [XLEN](https://upstash.com/docs/redis/sdks/py/commands/stream/xlen.md): Returns the number of entries inside a stream. - [XPENDING](https://upstash.com/docs/redis/sdks/py/commands/stream/xpending.md): Returns information about pending messages in a stream consumer group. - [XRANGE](https://upstash.com/docs/redis/sdks/py/commands/stream/xrange.md): Returns stream entries matching a given range of IDs. - [XREAD](https://upstash.com/docs/redis/sdks/py/commands/stream/xread.md): Reads data from one or multiple streams, starting from the specified IDs. - [XREADGROUP](https://upstash.com/docs/redis/sdks/py/commands/stream/xreadgroup.md): Reads data from a stream as part of a consumer group. - [XREVRANGE](https://upstash.com/docs/redis/sdks/py/commands/stream/xrevrange.md): Returns stream entries matching a given range of IDs in reverse order. - [XTRIM](https://upstash.com/docs/redis/sdks/py/commands/stream/xtrim.md): Trims the stream by removing entries to keep it at a reasonable size. ## SDKs > Python > Commands > String - [APPEND](https://upstash.com/docs/redis/sdks/py/commands/string/append.md): Append a value to a string stored at key. - [DECR](https://upstash.com/docs/redis/sdks/py/commands/string/decr.md): Decrement the integer value of a key by one - [DECRBY](https://upstash.com/docs/redis/sdks/py/commands/string/decrby.md): Decrement the integer value of a key by a given number. - [GET](https://upstash.com/docs/redis/sdks/py/commands/string/get.md): Return the value of the specified key or `None` if the key doesn't exist. - [GETDEL](https://upstash.com/docs/redis/sdks/py/commands/string/getdel.md): Return the value of the specified key and delete the key. - [GETRANGE](https://upstash.com/docs/redis/sdks/py/commands/string/getrange.md): Return a substring of value at the specified key. - [GETSET](https://upstash.com/docs/redis/sdks/py/commands/string/getset.md): Return the value of the specified key and replace it with a new value. - [INCR](https://upstash.com/docs/redis/sdks/py/commands/string/incr.md): Increment the integer value of a key by one - [INCRBYFLOAT](https://upstash.com/docs/redis/sdks/py/commands/string/incrbyfloat.md): Increment the float value of a key by a given number. - [MGET](https://upstash.com/docs/redis/sdks/py/commands/string/mget.md): Load multiple keys from Redis in one go. - [MSET](https://upstash.com/docs/redis/sdks/py/commands/string/mset.md): Set multiple keys in one go. - [MSETNX](https://upstash.com/docs/redis/sdks/py/commands/string/msetnx.md): Set multiple keys in one go unless they exist already. - [SET](https://upstash.com/docs/redis/sdks/py/commands/string/set.md): Set a key to hold a string value. - [SETRANGE](https://upstash.com/docs/redis/sdks/py/commands/string/setrange.md): Writes the value of key at offset. - [STRLEN](https://upstash.com/docs/redis/sdks/py/commands/string/strlen.md): Return the length of a string stored at a key. ## SDKs > AgentKit - [Vercel AI SDK Memory, RAG & Chat History with Redis](https://upstash.com/docs/redis/sdks/agentkit/ai-sdk.md): Add long-term memory, RAG, and chat history to the Vercel AI SDK with Upstash Redis — drop-in tools for generateText and streamText, no separate vector database. - [Memory, Chat History, RAG, Rate Limiting & Sandboxes for the Vercel Eve Agent Framework](https://upstash.com/docs/redis/sdks/agentkit/eve.md): Add long-term memory, searchable chat history, RAG, rate limiting, tool caching, and sandboxes to Vercel's Eve agent framework with Upstash Redis — no separate vector database. - [TanStack AI Persistence, Resumable Streams & Memory with Redis](https://upstash.com/docs/redis/sdks/agentkit/tanstack-ai.md): Production backends for TanStack AI on Upstash Redis — chat persistence, resumable streams, distributed locks, long-term memory, tool caching, rate limiting, and RAG tools. - [Long-Running MCP Tools with Redis and QStash](https://upstash.com/docs/redis/sdks/agentkit/mcp-tasks.md): Durable long-running tools for MCP servers: a tool answers with a task id at once, the work runs on QStash or Upstash Workflow, and the model polls for the result. Works in every MCP client. - [MCP Events with Redis and QStash](https://upstash.com/docs/redis/sdks/agentkit/mcp-events.md): Let agents subscribe to events on your MCP server and get a signed webhook when one happens. Subscriptions live in Upstash Redis and deliveries are retried by QStash. ## SDKs - [Upstash Redis MCP](https://upstash.com/docs/redis/sdks/mcp.md) - [Realtime](https://upstash.com/docs/redis/sdks/realtime.md) - [Agent Analytics](https://upstash.com/docs/redis/sdks/agent-analytics.md) - [Redis Analytics](https://upstash.com/docs/redis/sdks/redis-analytics.md) ## Features - [Global Database](https://upstash.com/docs/redis/features/globaldatabase.md) - [REST API](https://upstash.com/docs/redis/features/restapi.md): Access your Upstash Redis database over HTTP, from serverless and edge runtimes where TCP connections are restricted. - [Backup/Restore](https://upstash.com/docs/redis/features/backup.md) - [Durable Storage](https://upstash.com/docs/redis/features/durability.md): This article explains the persistence provided by Upstash databases. - [Replication](https://upstash.com/docs/redis/features/replication.md) - [Key-Based Locking](https://upstash.com/docs/redis/features/key-locking.md): Key-based locks for concurrent command execution - [Eviction](https://upstash.com/docs/redis/features/eviction.md) - [Security](https://upstash.com/docs/redis/features/security.md) - [Credential Protection](https://upstash.com/docs/redis/features/credential-protection.md) - [Consistency](https://upstash.com/docs/redis/features/consistency.md) - [Auto Upgrade](https://upstash.com/docs/redis/features/auto-upgrade.md) ## Search - [Introduction](https://upstash.com/docs/redis/search/introduction.md) - [Quickstart](https://upstash.com/docs/redis/search/getting-started.md) - [Indices](https://upstash.com/docs/redis/search/index-management.md) - [Document Updates](https://upstash.com/docs/redis/search/document-updates.md) - [Schemas](https://upstash.com/docs/redis/search/schema-definition.md) - [Queries](https://upstash.com/docs/redis/search/querying.md) - [Searching Streams](https://upstash.com/docs/redis/search/streams.md): Index and search individual Redis stream entries. - [Aggregations](https://upstash.com/docs/redis/search/aggregations.md) - [Counting](https://upstash.com/docs/redis/search/counting.md) - [Aliases](https://upstash.com/docs/redis/search/aliases.md) - [Command Reference](https://upstash.com/docs/redis/search/command-reference.md): Browse the commands supported by Upstash Redis Search. - [Troubleshooting](https://upstash.com/docs/redis/search/troubleshooting.md) ## Search > Adapters - [ioredis](https://upstash.com/docs/redis/search/adapters/ioredis.md): Use Redis Search with ioredis via the @upstash/search-ioredis adapter - [node-redis](https://upstash.com/docs/redis/search/adapters/node-redis.md): Use Redis Search with node-redis via the @upstash/search-redis adapter ## Search > Query Operators > Boolean Operators - [Overview](https://upstash.com/docs/redis/search/query-operators/boolean-operators/overview.md) - [$must](https://upstash.com/docs/redis/search/query-operators/boolean-operators/must.md) - [$should](https://upstash.com/docs/redis/search/query-operators/boolean-operators/should.md) - [$mustNot](https://upstash.com/docs/redis/search/query-operators/boolean-operators/must-not.md) - [$boost](https://upstash.com/docs/redis/search/query-operators/boolean-operators/boost.md) ## Search > Query Operators > Field Operators - [Overview](https://upstash.com/docs/redis/search/query-operators/field-operators/overview.md) - [Smart Matching](https://upstash.com/docs/redis/search/query-operators/field-operators/smart-matching.md) - [$eq](https://upstash.com/docs/redis/search/query-operators/field-operators/eq.md) - [$in](https://upstash.com/docs/redis/search/query-operators/field-operators/in.md) - [Range Operators](https://upstash.com/docs/redis/search/query-operators/field-operators/range-operators.md) - [$phrase](https://upstash.com/docs/redis/search/query-operators/field-operators/phrase.md) - [$fuzzy](https://upstash.com/docs/redis/search/query-operators/field-operators/fuzzy.md) - [$regex](https://upstash.com/docs/redis/search/query-operators/field-operators/regex.md) - [$boost](https://upstash.com/docs/redis/search/query-operators/field-operators/boost.md) ## Search > Aggregation Operators > Metric Aggregations - [Overview](https://upstash.com/docs/redis/search/aggregation-operators/metric-aggregations/overview.md) - [$avg](https://upstash.com/docs/redis/search/aggregation-operators/metric-aggregations/avg.md) - [$sum](https://upstash.com/docs/redis/search/aggregation-operators/metric-aggregations/sum.md) - [$min](https://upstash.com/docs/redis/search/aggregation-operators/metric-aggregations/min.md) - [$max](https://upstash.com/docs/redis/search/aggregation-operators/metric-aggregations/max.md) - [$count](https://upstash.com/docs/redis/search/aggregation-operators/metric-aggregations/count.md) - [$cardinality](https://upstash.com/docs/redis/search/aggregation-operators/metric-aggregations/cardinality.md) - [$stats](https://upstash.com/docs/redis/search/aggregation-operators/metric-aggregations/stats.md) - [$extendedStats](https://upstash.com/docs/redis/search/aggregation-operators/metric-aggregations/extended-stats.md) - [$percentiles](https://upstash.com/docs/redis/search/aggregation-operators/metric-aggregations/percentiles.md) ## Search > Aggregation Operators > Bucket Aggregations - [Overview](https://upstash.com/docs/redis/search/aggregation-operators/bucket-aggregations/overview.md) - [$terms](https://upstash.com/docs/redis/search/aggregation-operators/bucket-aggregations/terms.md) - [$range](https://upstash.com/docs/redis/search/aggregation-operators/bucket-aggregations/range.md) - [$histogram](https://upstash.com/docs/redis/search/aggregation-operators/bucket-aggregations/histogram.md) - [$dateHistogram](https://upstash.com/docs/redis/search/aggregation-operators/bucket-aggregations/date-histogram.md) - [$composite](https://upstash.com/docs/redis/search/aggregation-operators/bucket-aggregations/composite.md) - [$facet](https://upstash.com/docs/redis/search/aggregation-operators/bucket-aggregations/facet.md) ## Search > Recipes - [Overview](https://upstash.com/docs/redis/search/recipes/overview.md) - [E-commerce Search](https://upstash.com/docs/redis/search/recipes/e-commerce-search.md) - [Blog Search](https://upstash.com/docs/redis/search/recipes/blog-search.md) - [User Directory](https://upstash.com/docs/redis/search/recipes/user-directory.md) ## Security & Compliance - [Production Checklist](https://upstash.com/docs/redis/help/production-checklist.md) - [Shared Responsibility Model](https://upstash.com/docs/redis/help/shared-responsibility-model.md) - [Managing Healthcare Data](https://upstash.com/docs/redis/help/managing-healthcare-data.md) ## Integrations - [DrizzleORM with Upstash Redis](https://upstash.com/docs/redis/integrations/drizzle.md) - [Datadog - Upstash Redis Integration](https://upstash.com/docs/redis/howto/datadog.md) - [Prometheus - Upstash Redis Integration](https://upstash.com/docs/redis/integrations/prometheus.md) - [BullMQ with Upstash Redis](https://upstash.com/docs/redis/integrations/bullmq.md) - [effect-mq with Upstash Redis](https://upstash.com/docs/redis/integrations/effect-mq.md) - [Sidekiq with Upstash Redis](https://upstash.com/docs/redis/integrations/sidekiq.md) - [Vercel - Upstash Redis Integration](https://upstash.com/docs/redis/howto/vercelintegration.md) - [Replit Templates](https://upstash.com/docs/redis/integrations/replit-templates.md) - [EMQX - Upstash Redis Integration](https://upstash.com/docs/redis/howto/emqxintegration.md) - [Celery with Upstash Redis](https://upstash.com/docs/redis/integrations/celery.md) - [n8n with Upstash Redis](https://upstash.com/docs/redis/integrations/n8n.md) ## Tutorials - [Caching in Laravel with Redis](https://upstash.com/docs/redis/tutorials/laravel_caching.md) - [Build a Real-Time Chat Application with Serverless Redis](https://upstash.com/docs/redis/tutorials/python_realtime_chat.md) - [Manage Sessions in Python with Serverless Redis](https://upstash.com/docs/redis/tutorials/python_session.md) - [Rate Limiting for Your FastAPI App](https://upstash.com/docs/redis/tutorials/python_rate_limiting.md) - [Multithreaded Web Scraping with Redis Caching](https://upstash.com/docs/redis/tutorials/python_multithreading.md) - [Redis as a Cache for Your FastAPI App](https://upstash.com/docs/redis/tutorials/python_fastapi_caching.md) - [Building a URL Shortener with Redis](https://upstash.com/docs/redis/tutorials/python_url_shortener.md) - [Deploy a Serverless API with AWS CDK and AWS Lambda](https://upstash.com/docs/redis/tutorials/api_with_cdk.md) - [Agent Memory with Redis Search](https://upstash.com/docs/redis/tutorials/agent_memory.md): Build short-term and long-term memory for AI agents on Upstash Redis. Store working memory with TTLs and recall long-term memories with Redis Search full-text queries. - [TanStack AI Chat Persistance](https://upstash.com/docs/redis/tutorials/tanstack_chat_persistence.md): Use Upstash Redis to persist TanStack AI chat histories across reloads, navigation, and devices with a simple adapter. - [Autocomplete API with Serverless Redis](https://upstash.com/docs/redis/tutorials/auto_complete_with_serverless_redis.md) - [Build Stateful Applications with AWS App Runner and Serverless Redis](https://upstash.com/docs/redis/tutorials/aws_app_runner_with_redis.md): This tutorial shows how to create a serverless and stateful application using AWS App Runner and Redis - [Session Management on Google Cloud Run with Serverless Redis](https://upstash.com/docs/redis/tutorials/cloud_run_sessions.md): This tutorial shows how to manage user sessions on Google Cloud Run using Serverless Redis. - [Use Redis in Cloudflare Workers](https://upstash.com/docs/redis/tutorials/cloudflare_workers_with_redis.md) - [Cloudflare Workers with Websockets and Redis](https://upstash.com/docs/redis/tutorials/cloudflare_websockets_redis.md) - [Build a Leaderboard API At Edge using Cloudflare Workers and Redis](https://upstash.com/docs/redis/tutorials/edge_leaderboard.md): This tutorial shows how to build a Leaderboard API At Edge using Cloudflare Workers and Redis. - [Express Session with Serverless Redis](https://upstash.com/docs/redis/tutorials/express_session.md): This tutorial shows how to use Upstash as the session storage of your Express application. - [Serverless Golang API with Redis](https://upstash.com/docs/redis/tutorials/goapi.md) - [Build a Serverless Histogram API with Redis](https://upstash.com/docs/redis/tutorials/histogram.md): This tutorial shows how to build a histogram API with Redis. - [Job Processing and Event Queue with Serverless Redis](https://upstash.com/docs/redis/tutorials/job_processing.md): This tutorial shows how to use Upstash Redis for job/task processing. - [Redis Queue: From FIFO Lists to a Job Queue](https://upstash.com/docs/redis/tutorials/redis_queue.md): How to build FIFO, reliable, and blocking queues on Upstash Redis, then a delayed and prioritized job queue with a dead-letter queue. - [Next.js with Redis](https://upstash.com/docs/redis/tutorials/nextjs_with_redis.md) - [Building a Serverless Notification API for Your Web Application with Redis](https://upstash.com/docs/redis/tutorials/notification.md): This tutorial shows how to create a Serverless Notification API for Your Web Application with Redis. - [Nuxt with Redis](https://upstash.com/docs/redis/tutorials/nuxtjs_with_redis.md): This tutorial shows how to use Upstash inside your Nuxt application. - [Serverless Python API with Redis](https://upstash.com/docs/redis/tutorials/pythonapi.md) - [AWS Lambda Rate Limiting with Serverless Redis](https://upstash.com/docs/redis/tutorials/rate-limiting.md) - [Serverless Redisson](https://upstash.com/docs/redis/tutorials/redisson.md): This tutorial shows how to use Upstash with Redisson client. - [Roadmap Voting App with Serverless Redis](https://upstash.com/docs/redis/tutorials/roadmapvotingapp.md): This is a single page application powered by upstash and next.js. - [Serverless API with Java and Redis](https://upstash.com/docs/redis/tutorials/serverless_java_redis.md) - [Using AWS SAM](https://upstash.com/docs/redis/tutorials/using_aws_sam.md) - [Serverless Redis on Google Cloud Run functions](https://upstash.com/docs/redis/tutorials/using_google_cloud_functions.md) - [Using Serverless Framework](https://upstash.com/docs/redis/tutorials/using_serverless_framework.md) ## Troubleshooting - [Unexpected Increase in Command Count](https://upstash.com/docs/redis/troubleshooting/command_count_increases_unexpectedly.md) - [Connecting with Read-Only Access](https://upstash.com/docs/redis/troubleshooting/readonly_connection.md) - [NOAUTH Authentication Required](https://upstash.com/docs/redis/troubleshooting/no_auth.md) - [WRONGPASS invalid or missing auth token](https://upstash.com/docs/redis/troubleshooting/http_unauthorized.md) - [Error read ECONNRESET](https://upstash.com/docs/redis/troubleshooting/econn_reset.md) - [ERR max concurrent connections exceeded](https://upstash.com/docs/redis/troubleshooting/max_concurrent_connections.md) - [ERR max request size exceeded](https://upstash.com/docs/redis/troubleshooting/max_request_size_exceeded.md) - [ERR max single record size exceeded](https://upstash.com/docs/redis/troubleshooting/max_record_size_exceeded.md) - [ERR max key size exceeded](https://upstash.com/docs/redis/troubleshooting/max_key_size_exceeded.md) - [ERR DB capacity quota exceeded](https://upstash.com/docs/redis/troubleshooting/db_capacity_quota_exceeded.md) - [ERR max requests limit exceeded](https://upstash.com/docs/redis/troubleshooting/max_requests_limit.md) - [ERR XReadGroup is cancelled](https://upstash.com/docs/redis/troubleshooting/stream_pel_limit.md) ## Help - [Frequently Asked Questions](https://upstash.com/docs/redis/help/faq.md) ## Help > Support - [Support & Contact Us](https://upstash.com/docs/redis/help/support.md) - [Uptime Monitor](https://upstash.com/docs/redis/help/uptime.md) - [Legal](https://upstash.com/docs/redis/help/legal.md) - [Compliance](https://upstash.com/docs/redis/help/compliance.md) - [Integration with Third Parties & Partnerships](https://upstash.com/docs/redis/help/integration.md) ## Command Reference - [Redis command reference](https://upstash.com/docs/redis/commands/overview.md): Browse the Redis commands supported by Upstash, organized by category. ## Command Reference > Array - [Array commands](https://upstash.com/docs/redis/commands/array/overview.md): Commands for storing values in a sparse, index-addressed array. - [ARSET](https://upstash.com/docs/redis/commands/array/arset.md): Set contiguous array values from an index. - [ARMSET](https://upstash.com/docs/redis/commands/array/armset.md): Set values at several array indexes. - [ARGET](https://upstash.com/docs/redis/commands/array/arget.md): Get the value at an array index. - [ARMGET](https://upstash.com/docs/redis/commands/array/armget.md): Get the values at several array indexes. - [ARGETRANGE](https://upstash.com/docs/redis/commands/array/argetrange.md): Get array values in an index range. - [ARSCAN](https://upstash.com/docs/redis/commands/array/arscan.md): Scan the populated slots of an array. - [ARGREP](https://upstash.com/docs/redis/commands/array/argrep.md): Search array values with predicates. - [ARDEL](https://upstash.com/docs/redis/commands/array/ardel.md): Delete values at the given array indexes. - [ARDELRANGE](https://upstash.com/docs/redis/commands/array/ardelrange.md): Delete array values in one or more index ranges. - [ARCOUNT](https://upstash.com/docs/redis/commands/array/arcount.md): Count the values stored in an array. - [ARLEN](https://upstash.com/docs/redis/commands/array/arlen.md): Get the length of an array. - [ARINSERT](https://upstash.com/docs/redis/commands/array/arinsert.md): Append values to an array. - [ARRING](https://upstash.com/docs/redis/commands/array/arring.md): Append values to a fixed-size ring. - [ARLASTITEMS](https://upstash.com/docs/redis/commands/array/arlastitems.md): Read the most recently written array values. - [ARNEXT](https://upstash.com/docs/redis/commands/array/arnext.md): Get the index the next append will use. - [ARSEEK](https://upstash.com/docs/redis/commands/array/arseek.md): Move the array append cursor. - [AROP](https://upstash.com/docs/redis/commands/array/arop.md): Aggregate array values in an index range. - [ARINFO](https://upstash.com/docs/redis/commands/array/arinfo.md): Inspect the internal layout of an array. ## Command Reference > Bitmap - [Bitmap commands](https://upstash.com/docs/redis/commands/bitmap/overview.md): Commands for manipulating individual bits and bit fields in string values. - [BITCOUNT](https://upstash.com/docs/redis/commands/bitmap/bitcount.md): Count set bits in a string. - [BITFIELD](https://upstash.com/docs/redis/commands/bitmap/bitfield.md): Perform arbitrary bitfield operations. - [BITFIELD_RO](https://upstash.com/docs/redis/commands/bitmap/bitfield-ro.md): Read bitfield values. - [BITOP](https://upstash.com/docs/redis/commands/bitmap/bitop.md): Perform bitwise operations between strings. - [BITPOS](https://upstash.com/docs/redis/commands/bitmap/bitpos.md): Find first bit set or clear in a string. - [GETBIT](https://upstash.com/docs/redis/commands/bitmap/getbit.md): Get the bit value at offset. - [SETBIT](https://upstash.com/docs/redis/commands/bitmap/setbit.md): Set or clear the bit at offset. ## Command Reference > Connection - [Connection commands](https://upstash.com/docs/redis/commands/connection/overview.md): Commands for authenticating, inspecting, and managing client connections. - [AUTH](https://upstash.com/docs/redis/commands/connection/auth.md): Authenticate to the server. - [CLIENT GETNAME](https://upstash.com/docs/redis/commands/connection/client-getname.md): Get the current connection name. - [CLIENT ID](https://upstash.com/docs/redis/commands/connection/client-id.md): Get the current client ID. - [CLIENT INFO](https://upstash.com/docs/redis/commands/connection/client-info.md): Get info about current connection. - [CLIENT LIST](https://upstash.com/docs/redis/commands/connection/client-list.md): List all client connections. - [CLIENT SETINFO](https://upstash.com/docs/redis/commands/connection/client-setinfo.md): Set client connection attributes. - [CLIENT SETNAME](https://upstash.com/docs/redis/commands/connection/client-setname.md): Set the connection name. - [ECHO](https://upstash.com/docs/redis/commands/connection/echo.md): Echo the given string. - [HELLO](https://upstash.com/docs/redis/commands/connection/hello.md): Handshake with Redis protocol. - [PING](https://upstash.com/docs/redis/commands/connection/ping.md): Ping the server. - [QUIT](https://upstash.com/docs/redis/commands/connection/quit.md): Close the connection. - [RESET](https://upstash.com/docs/redis/commands/connection/reset.md): Reset the connection. - [SELECT](https://upstash.com/docs/redis/commands/connection/select.md): Select the database by index. ## Command Reference > Functions - [Functions commands](https://upstash.com/docs/redis/commands/functions/overview.md): Commands for loading, managing, and invoking Redis functions. - [FCALL](https://upstash.com/docs/redis/commands/functions/fcall.md): Call a function. - [FCALL_RO](https://upstash.com/docs/redis/commands/functions/fcall-ro.md): Call a read-only function. - [FUNCTION DELETE](https://upstash.com/docs/redis/commands/functions/function-delete.md): Delete a library. - [FUNCTION FLUSH](https://upstash.com/docs/redis/commands/functions/function-flush.md): Delete all libraries. - [FUNCTION KILL](https://upstash.com/docs/redis/commands/functions/function-kill.md): Kill a running function. - [FUNCTION LIST](https://upstash.com/docs/redis/commands/functions/function-list.md): List all libraries. - [FUNCTION LOAD](https://upstash.com/docs/redis/commands/functions/function-load.md): Load a library. - [FUNCTION STATS](https://upstash.com/docs/redis/commands/functions/function-stats.md): Get function execution stats. ## Command Reference > Generic - [Generic commands](https://upstash.com/docs/redis/commands/generic/overview.md): Commands for managing keys, expiration, serialization, and database-wide key operations. - [COPY](https://upstash.com/docs/redis/commands/generic/copy.md): Copy a key to another key. - [DEL](https://upstash.com/docs/redis/commands/generic/del.md): Delete one or more keys. - [DUMP](https://upstash.com/docs/redis/commands/generic/dump.md): Serialize a key's value. - [EXISTS](https://upstash.com/docs/redis/commands/generic/exists.md): Check if keys exist. - [EXPIRE](https://upstash.com/docs/redis/commands/generic/expire.md): Set a key's TTL in seconds. - [EXPIREAT](https://upstash.com/docs/redis/commands/generic/expireat.md): Set expiry as Unix timestamp. - [EXPIRETIME](https://upstash.com/docs/redis/commands/generic/expiretime.md): Get expiry as Unix timestamp. - [KEYS](https://upstash.com/docs/redis/commands/generic/keys.md): Find keys matching a pattern. - [MEMORY USAGE](https://upstash.com/docs/redis/commands/generic/memory-usage.md): Estimate memory used by a key. - [PERSIST](https://upstash.com/docs/redis/commands/generic/persist.md): Remove the expiration from a key. - [PEXPIRE](https://upstash.com/docs/redis/commands/generic/pexpire.md): Set a key's TTL in milliseconds. - [PEXPIREAT](https://upstash.com/docs/redis/commands/generic/pexpireat.md): Set expiry as Unix ms timestamp. - [PEXPIRETIME](https://upstash.com/docs/redis/commands/generic/pexpiretime.md): Get expiry as Unix ms timestamp. - [PTTL](https://upstash.com/docs/redis/commands/generic/pttl.md): Get TTL in milliseconds. - [RANDOMKEY](https://upstash.com/docs/redis/commands/generic/randomkey.md): Return a random key. - [RENAME](https://upstash.com/docs/redis/commands/generic/rename.md): Rename a key. - [RENAMENX](https://upstash.com/docs/redis/commands/generic/renamenx.md): Rename a key if new key doesn't exist. - [RESTORE](https://upstash.com/docs/redis/commands/generic/restore.md): Deserialize and restore a key. - [SCAN](https://upstash.com/docs/redis/commands/generic/scan.md): Incrementally iterate keys. - [TOUCH](https://upstash.com/docs/redis/commands/generic/touch.md): Update last access time of keys. - [TTL](https://upstash.com/docs/redis/commands/generic/ttl.md): Get TTL in seconds. - [TYPE](https://upstash.com/docs/redis/commands/generic/type.md): Get the type of a key. - [UNLINK](https://upstash.com/docs/redis/commands/generic/unlink.md): Delete keys asynchronously. - [WAIT](https://upstash.com/docs/redis/commands/generic/wait.md): Wait for replica acknowledgements. - [WAITAOF](https://upstash.com/docs/redis/commands/generic/waitaof.md): Wait for local and replica persistence. ## Command Reference > Geo - [Geo commands](https://upstash.com/docs/redis/commands/geo/overview.md): Commands for storing and querying geospatial data. - [GEOADD](https://upstash.com/docs/redis/commands/geo/geoadd.md): Add geospatial items. - [GEODIST](https://upstash.com/docs/redis/commands/geo/geodist.md): Get distance between two members. - [GEOHASH](https://upstash.com/docs/redis/commands/geo/geohash.md): Get geohash strings for members. - [GEOPOS](https://upstash.com/docs/redis/commands/geo/geopos.md): Get coordinates of members. - [GEORADIUS](https://upstash.com/docs/redis/commands/geo/georadius.md): Find members within a radius of a point. - [GEORADIUS_RO](https://upstash.com/docs/redis/commands/geo/georadius-ro.md): Find members within a radius of a point. - [GEORADIUSBYMEMBER](https://upstash.com/docs/redis/commands/geo/georadiusbymember.md): Find members within a radius of another member. - [GEORADIUSBYMEMBER_RO](https://upstash.com/docs/redis/commands/geo/georadiusbymember-ro.md): Find members within a radius of another member. - [GEOSEARCH](https://upstash.com/docs/redis/commands/geo/geosearch.md): Search for members in an area. - [GEOSEARCHSTORE](https://upstash.com/docs/redis/commands/geo/geosearchstore.md): Store geosearch results. ## Command Reference > Hash - [Hash commands](https://upstash.com/docs/redis/commands/hash/overview.md): Commands for storing and manipulating field-value collections. - [HDEL](https://upstash.com/docs/redis/commands/hash/hdel.md): Delete one or more hash fields. - [HEXISTS](https://upstash.com/docs/redis/commands/hash/hexists.md): Check if a hash field exists. - [HEXPIRE](https://upstash.com/docs/redis/commands/hash/hexpire.md): Set field TTL in seconds. - [HEXPIREAT](https://upstash.com/docs/redis/commands/hash/hexpireat.md): Set field expiry as timestamp. - [HEXPIRETIME](https://upstash.com/docs/redis/commands/hash/hexpiretime.md): Get field expiry as timestamp. - [HGET](https://upstash.com/docs/redis/commands/hash/hget.md): Get the value of a hash field. - [HGETALL](https://upstash.com/docs/redis/commands/hash/hgetall.md): Get all fields and values. - [HGETDEL](https://upstash.com/docs/redis/commands/hash/hgetdel.md): Get and delete hash fields. - [HGETEX](https://upstash.com/docs/redis/commands/hash/hgetex.md): Get fields and set their expiry. - [HINCRBY](https://upstash.com/docs/redis/commands/hash/hincrby.md): Increment integer value of a field. - [HINCRBYFLOAT](https://upstash.com/docs/redis/commands/hash/hincrbyfloat.md): Increment float value of a field. - [HKEYS](https://upstash.com/docs/redis/commands/hash/hkeys.md): Get all fields in a hash. - [HLEN](https://upstash.com/docs/redis/commands/hash/hlen.md): Get number of fields in a hash. - [HMGET](https://upstash.com/docs/redis/commands/hash/hmget.md): Get values of multiple fields. - [HMSET](https://upstash.com/docs/redis/commands/hash/hmset.md): Set multiple hash fields. - [HPERSIST](https://upstash.com/docs/redis/commands/hash/hpersist.md): Remove field expiration. - [HPEXPIRE](https://upstash.com/docs/redis/commands/hash/hpexpire.md): Set field TTL in milliseconds. - [HPEXPIREAT](https://upstash.com/docs/redis/commands/hash/hpexpireat.md): Set field expiry as ms timestamp. - [HPEXPIRETIME](https://upstash.com/docs/redis/commands/hash/hpexpiretime.md): Get field expiry as ms timestamp. - [HPTTL](https://upstash.com/docs/redis/commands/hash/hpttl.md): Get field TTL in milliseconds. - [HRANDFIELD](https://upstash.com/docs/redis/commands/hash/hrandfield.md): Get random fields from a hash. - [HSCAN](https://upstash.com/docs/redis/commands/hash/hscan.md): Incrementally iterate hash fields. - [HSET](https://upstash.com/docs/redis/commands/hash/hset.md): Set hash field values. - [HSETEX](https://upstash.com/docs/redis/commands/hash/hsetex.md): Set fields with expiration. - [HSETNX](https://upstash.com/docs/redis/commands/hash/hsetnx.md): Set field only if it doesn't exist. - [HSTRLEN](https://upstash.com/docs/redis/commands/hash/hstrlen.md): Get length of a field's value. - [HTTL](https://upstash.com/docs/redis/commands/hash/httl.md): Get field TTL in seconds. - [HVALS](https://upstash.com/docs/redis/commands/hash/hvals.md): Get all values in a hash. ## Command Reference > HyperLogLog - [HyperLogLog commands](https://upstash.com/docs/redis/commands/hyperloglog/overview.md): Commands for probabilistic cardinality estimation. - [PFADD](https://upstash.com/docs/redis/commands/hyperloglog/pfadd.md): Add elements to HyperLogLog. - [PFCOUNT](https://upstash.com/docs/redis/commands/hyperloglog/pfcount.md): Get estimated cardinality. - [PFMERGE](https://upstash.com/docs/redis/commands/hyperloglog/pfmerge.md): Merge multiple HyperLogLogs. ## Command Reference > JSON - [JSON commands](https://upstash.com/docs/redis/commands/json/overview.md): Commands for storing and manipulating JSON values. - [JSON.ARRAPPEND](https://upstash.com/docs/redis/commands/json/json-arrappend.md): Append values to JSON array. - [JSON.ARRINDEX](https://upstash.com/docs/redis/commands/json/json-arrindex.md): Find index of value in array. - [JSON.ARRINSERT](https://upstash.com/docs/redis/commands/json/json-arrinsert.md): Insert values into JSON array. - [JSON.ARRLEN](https://upstash.com/docs/redis/commands/json/json-arrlen.md): Get JSON array length. - [JSON.ARRPOP](https://upstash.com/docs/redis/commands/json/json-arrpop.md): Pop value from JSON array. - [JSON.ARRTRIM](https://upstash.com/docs/redis/commands/json/json-arrtrim.md): Trim JSON array to range. - [JSON.CLEAR](https://upstash.com/docs/redis/commands/json/json-clear.md): Clear JSON values. - [JSON.DEL](https://upstash.com/docs/redis/commands/json/json-del.md): Delete JSON values. - [JSON.DEBUG](https://upstash.com/docs/redis/commands/json/json-debug.md): Inspect JSON memory usage. - [JSON.FORGET](https://upstash.com/docs/redis/commands/json/json-forget.md): Delete JSON values (alias of JSON.DEL). - [JSON.GET](https://upstash.com/docs/redis/commands/json/json-get.md): Get JSON values. - [JSON.MERGE](https://upstash.com/docs/redis/commands/json/json-merge.md): Merge JSON values. - [JSON.MGET](https://upstash.com/docs/redis/commands/json/json-mget.md): Get values from multiple keys. - [JSON.MSET](https://upstash.com/docs/redis/commands/json/json-mset.md): Set values in multiple keys. - [JSON.NUMINCRBY](https://upstash.com/docs/redis/commands/json/json-numincrby.md): Increment JSON number. - [JSON.NUMMULTBY](https://upstash.com/docs/redis/commands/json/json-nummultby.md): Multiply JSON number. - [JSON.OBJKEYS](https://upstash.com/docs/redis/commands/json/json-objkeys.md): Get JSON object keys. - [JSON.OBJLEN](https://upstash.com/docs/redis/commands/json/json-objlen.md): Get JSON object size. - [JSON.RESP](https://upstash.com/docs/redis/commands/json/json-resp.md): Get JSON in RESP format. - [JSON.SET](https://upstash.com/docs/redis/commands/json/json-set.md): Set JSON value. - [JSON.STRAPPEND](https://upstash.com/docs/redis/commands/json/json-strappend.md): Append to JSON string. - [JSON.STRLEN](https://upstash.com/docs/redis/commands/json/json-strlen.md): Get JSON string length. - [JSON.TOGGLE](https://upstash.com/docs/redis/commands/json/json-toggle.md): Toggle JSON boolean. - [JSON.TYPE](https://upstash.com/docs/redis/commands/json/json-type.md): Get JSON value type. ## Command Reference > List - [List commands](https://upstash.com/docs/redis/commands/list/overview.md): Commands for storing and manipulating ordered collections. - [BLMOVE](https://upstash.com/docs/redis/commands/list/blmove.md): Move an element between lists, blocking until one arrives. - [BLMPOP](https://upstash.com/docs/redis/commands/list/blmpop.md): Pop from the first non-empty list, blocking until one arrives. - [BLPOP](https://upstash.com/docs/redis/commands/list/blpop.md): Pop from the head of a list, blocking until an element arrives. - [BRPOP](https://upstash.com/docs/redis/commands/list/brpop.md): Pop from the tail of a list, blocking until an element arrives. - [BRPOPLPUSH](https://upstash.com/docs/redis/commands/list/brpoplpush.md): Pop from a list's tail and push it to another, blocking until an element arrives. - [LINDEX](https://upstash.com/docs/redis/commands/list/lindex.md): Get element by index. - [LINSERT](https://upstash.com/docs/redis/commands/list/linsert.md): Insert before or after pivot. - [LLEN](https://upstash.com/docs/redis/commands/list/llen.md): Get list length. - [LMOVE](https://upstash.com/docs/redis/commands/list/lmove.md): Move element between lists. - [LMPOP](https://upstash.com/docs/redis/commands/list/lmpop.md): Pop from the first non-empty list. - [LPOP](https://upstash.com/docs/redis/commands/list/lpop.md): Pop from list head. - [LPOS](https://upstash.com/docs/redis/commands/list/lpos.md): Find the position of an element. - [LPUSH](https://upstash.com/docs/redis/commands/list/lpush.md): Push to list head. - [LPUSHX](https://upstash.com/docs/redis/commands/list/lpushx.md): Push to head if list exists. - [LRANGE](https://upstash.com/docs/redis/commands/list/lrange.md): Get range of elements. - [LREM](https://upstash.com/docs/redis/commands/list/lrem.md): Remove elements by value. - [LSET](https://upstash.com/docs/redis/commands/list/lset.md): Set element at index. - [LTRIM](https://upstash.com/docs/redis/commands/list/ltrim.md): Trim list to range. - [RPOP](https://upstash.com/docs/redis/commands/list/rpop.md): Pop from list tail. - [RPOPLPUSH](https://upstash.com/docs/redis/commands/list/rpoplpush.md): Pop from tail and push to head. - [RPUSH](https://upstash.com/docs/redis/commands/list/rpush.md): Push to list tail. - [RPUSHX](https://upstash.com/docs/redis/commands/list/rpushx.md): Push to tail if list exists. ## Command Reference > Pub/Sub - [Pub/Sub commands](https://upstash.com/docs/redis/commands/pub-sub/overview.md): Commands for publishing messages and managing channel subscriptions. - [PSUBSCRIBE](https://upstash.com/docs/redis/commands/pub-sub/psubscribe.md): Subscribe to pattern channels. - [PUBLISH](https://upstash.com/docs/redis/commands/pub-sub/publish.md): Publish message to channel. - [PUBSUB](https://upstash.com/docs/redis/commands/pub-sub/pubsub.md): Inspect pub/sub state. - [PUNSUBSCRIBE](https://upstash.com/docs/redis/commands/pub-sub/punsubscribe.md): Unsubscribe from patterns. - [SUBSCRIBE](https://upstash.com/docs/redis/commands/pub-sub/subscribe.md): Subscribe to channels. - [UNSUBSCRIBE](https://upstash.com/docs/redis/commands/pub-sub/unsubscribe.md): Unsubscribe from channels. ## Command Reference > Scripting - [Scripting commands](https://upstash.com/docs/redis/commands/scripting/overview.md): Commands for loading and executing Lua scripts. - [EVAL](https://upstash.com/docs/redis/commands/scripting/eval.md): Execute a Lua script. - [EVAL_RO](https://upstash.com/docs/redis/commands/scripting/eval-ro.md): Execute read-only Lua script. - [EVALSHA](https://upstash.com/docs/redis/commands/scripting/evalsha.md): Execute cached Lua script by SHA. - [EVALSHA_RO](https://upstash.com/docs/redis/commands/scripting/evalsha-ro.md): Run a cached script that does not write. - [SCRIPT EXISTS](https://upstash.com/docs/redis/commands/scripting/script-exists.md): Check if scripts exist in cache. - [SCRIPT FLUSH](https://upstash.com/docs/redis/commands/scripting/script-flush.md): Clear the script cache. - [SCRIPT KILL](https://upstash.com/docs/redis/commands/scripting/script-kill.md): Stop a running read-only script. - [SCRIPT LOAD](https://upstash.com/docs/redis/commands/scripting/script-load.md): Load script into cache. ## Command Reference > Search - [Search commands](https://upstash.com/docs/redis/commands/search/overview.md): Commands for creating, querying, and managing Upstash Redis Search indexes. - [SEARCH.CREATE](https://upstash.com/docs/redis/commands/search/search-create.md): Create a search index. - [SEARCH.DROP](https://upstash.com/docs/redis/commands/search/search-drop.md): Drop a search index without deleting its keys. - [SEARCH.DESCRIBE](https://upstash.com/docs/redis/commands/search/search-describe.md): Return metadata about a search index. - [SEARCH.WAITINDEXING](https://upstash.com/docs/redis/commands/search/search-waitindexing.md): Wait until pending index updates are visible. - [SEARCH.LISTINDEXES](https://upstash.com/docs/redis/commands/search/search-listindexes.md): List search indexes in the database. - [SEARCH.QUERY](https://upstash.com/docs/redis/commands/search/search-query.md): Search documents with a JSON filter. - [SEARCH.COUNT](https://upstash.com/docs/redis/commands/search/search-count.md): Count documents matching a query. - [SEARCH.AGGREGATE](https://upstash.com/docs/redis/commands/search/search-aggregate.md): Compute analytics over matching documents. - [SEARCH.ALIASADD](https://upstash.com/docs/redis/commands/search/search-aliasadd.md): Create or update a search index alias. - [SEARCH.ALIASDEL](https://upstash.com/docs/redis/commands/search/search-aliasdel.md): Delete a search index alias. - [SEARCH.LISTALIASES](https://upstash.com/docs/redis/commands/search/search-listaliases.md): List search index aliases. ## Command Reference > Server - [Server commands](https://upstash.com/docs/redis/commands/server/overview.md): Commands for inspecting and managing the Redis server. - [ACL CAT](https://upstash.com/docs/redis/commands/server/acl-cat.md): List command categories. - [ACL DELUSER](https://upstash.com/docs/redis/commands/server/acl-deluser.md): Delete one or more ACL users. - [ACL GENPASS](https://upstash.com/docs/redis/commands/server/acl-genpass.md): Generate a cryptographically strong random password. - [ACL GENTOKEN](https://upstash.com/docs/redis/commands/server/acl-gentoken.md): Generate a REST token that can be used as a SETUSER password. - [ACL GETUSER](https://upstash.com/docs/redis/commands/server/acl-getuser.md): Get the user's details. - [ACL LIST](https://upstash.com/docs/redis/commands/server/acl-list.md): Show users details in config file format. - [ACL LOAD](https://upstash.com/docs/redis/commands/server/acl-load.md): Reload ACL definitions from the primary node. - [ACL LOG](https://upstash.com/docs/redis/commands/server/acl-log.md): Show the ACL log entries. - [ACL RESTTOKEN](https://upstash.com/docs/redis/commands/server/acl-resttoken.md): Generate a REST token for an existing user. - [ACL SAVE](https://upstash.com/docs/redis/commands/server/acl-save.md): Push ACL definitions to replica nodes. - [ACL SETUSER](https://upstash.com/docs/redis/commands/server/acl-setuser.md): Create or modify a user with the specified attributes. - [ACL USERS](https://upstash.com/docs/redis/commands/server/acl-users.md): List all the registered usernames. - [ACL WHOAMI](https://upstash.com/docs/redis/commands/server/acl-whoami.md): Return the current connection username. - [COMMAND](https://upstash.com/docs/redis/commands/server/command.md): Get command metadata. - [CONFIG GET](https://upstash.com/docs/redis/commands/server/config-get.md): Read runtime configuration. - [CONFIG SET](https://upstash.com/docs/redis/commands/server/config-set.md): Change runtime configuration. - [DBSIZE](https://upstash.com/docs/redis/commands/server/dbsize.md): Get number of keys in database. - [FLUSHALL](https://upstash.com/docs/redis/commands/server/flushall.md): Delete all keys in all databases. - [FLUSHDB](https://upstash.com/docs/redis/commands/server/flushdb.md): Delete all keys in current database. - [INFO](https://upstash.com/docs/redis/commands/server/info.md): Get server statistics and information. - [MONITOR](https://upstash.com/docs/redis/commands/server/monitor.md): Stream all commands received. - [TIME](https://upstash.com/docs/redis/commands/server/time.md): Get current server time. ## Command Reference > Set - [Set commands](https://upstash.com/docs/redis/commands/set/overview.md): Commands for storing and manipulating unordered collections of unique members. - [SADD](https://upstash.com/docs/redis/commands/set/sadd.md): Add members to a set. - [SCARD](https://upstash.com/docs/redis/commands/set/scard.md): Get set cardinality. - [SDIFF](https://upstash.com/docs/redis/commands/set/sdiff.md): Get set difference. - [SDIFFCARD](https://upstash.com/docs/redis/commands/set/sdiffcard.md): Get set difference cardinality. - [SDIFFSTORE](https://upstash.com/docs/redis/commands/set/sdiffstore.md): Store set difference. - [SINTER](https://upstash.com/docs/redis/commands/set/sinter.md): Get set intersection. - [SINTERCARD](https://upstash.com/docs/redis/commands/set/sintercard.md): Get intersection cardinality. - [SINTERSTORE](https://upstash.com/docs/redis/commands/set/sinterstore.md): Store set intersection. - [SISMEMBER](https://upstash.com/docs/redis/commands/set/sismember.md): Check if member exists in set. - [SMEMBERS](https://upstash.com/docs/redis/commands/set/smembers.md): Get all set members. - [SMISMEMBER](https://upstash.com/docs/redis/commands/set/smismember.md): Check membership of several values. - [SMOVE](https://upstash.com/docs/redis/commands/set/smove.md): Move member between sets. - [SPOP](https://upstash.com/docs/redis/commands/set/spop.md): Remove and return random members. - [SRANDMEMBER](https://upstash.com/docs/redis/commands/set/srandmember.md): Get random members. - [SREM](https://upstash.com/docs/redis/commands/set/srem.md): Remove members from a set. - [SSCAN](https://upstash.com/docs/redis/commands/set/sscan.md): Incrementally iterate set members. - [SUNION](https://upstash.com/docs/redis/commands/set/sunion.md): Get set union. - [SUNIONCARD](https://upstash.com/docs/redis/commands/set/sunioncard.md): Get set union cardinality. - [SUNIONSTORE](https://upstash.com/docs/redis/commands/set/sunionstore.md): Store set union. ## Command Reference > Sorted Set - [Sorted Set commands](https://upstash.com/docs/redis/commands/sorted-set/overview.md): Commands for storing and manipulating scored collections. - [BZMPOP](https://upstash.com/docs/redis/commands/sorted-set/bzmpop.md): Pop from the first non-empty sorted set, blocking until one arrives. - [BZPOPMAX](https://upstash.com/docs/redis/commands/sorted-set/bzpopmax.md): Pop the highest-scoring member, blocking until one arrives. - [BZPOPMIN](https://upstash.com/docs/redis/commands/sorted-set/bzpopmin.md): Pop the lowest-scoring member, blocking until one arrives. - [ZADD](https://upstash.com/docs/redis/commands/sorted-set/zadd.md): Add members with scores. - [ZCARD](https://upstash.com/docs/redis/commands/sorted-set/zcard.md): Get sorted set cardinality. - [ZCOUNT](https://upstash.com/docs/redis/commands/sorted-set/zcount.md): Count members in score range. - [ZDIFF](https://upstash.com/docs/redis/commands/sorted-set/zdiff.md): Get sorted set difference. - [ZDIFFSTORE](https://upstash.com/docs/redis/commands/sorted-set/zdiffstore.md): Store sorted set difference. - [ZINCRBY](https://upstash.com/docs/redis/commands/sorted-set/zincrby.md): Increment member's score. - [ZINTER](https://upstash.com/docs/redis/commands/sorted-set/zinter.md): Get sorted set intersection. - [ZINTERCARD](https://upstash.com/docs/redis/commands/sorted-set/zintercard.md): Get intersection cardinality. - [ZINTERSTORE](https://upstash.com/docs/redis/commands/sorted-set/zinterstore.md): Store sorted set intersection. - [ZLEXCOUNT](https://upstash.com/docs/redis/commands/sorted-set/zlexcount.md): Count members in lex range. - [ZMPOP](https://upstash.com/docs/redis/commands/sorted-set/zmpop.md): Pop from the first non-empty sorted set. - [ZMSCORE](https://upstash.com/docs/redis/commands/sorted-set/zmscore.md): Get scores of multiple members. - [ZPOPMAX](https://upstash.com/docs/redis/commands/sorted-set/zpopmax.md): Pop members with highest scores. - [ZPOPMIN](https://upstash.com/docs/redis/commands/sorted-set/zpopmin.md): Pop members with lowest scores. - [ZRANDMEMBER](https://upstash.com/docs/redis/commands/sorted-set/zrandmember.md): Get random members. - [ZRANGE](https://upstash.com/docs/redis/commands/sorted-set/zrange.md): Get members by index, score, or lex range. - [ZRANGEBYLEX](https://upstash.com/docs/redis/commands/sorted-set/zrangebylex.md): Get members by lex range. - [ZRANGEBYSCORE](https://upstash.com/docs/redis/commands/sorted-set/zrangebyscore.md): Get members by score range. - [ZRANGESTORE](https://upstash.com/docs/redis/commands/sorted-set/zrangestore.md): Store the result of a range query. - [ZRANK](https://upstash.com/docs/redis/commands/sorted-set/zrank.md): Get member's rank. - [ZREM](https://upstash.com/docs/redis/commands/sorted-set/zrem.md): Remove members. - [ZREMRANGEBYLEX](https://upstash.com/docs/redis/commands/sorted-set/zremrangebylex.md): Remove members by lex range. - [ZREMRANGEBYRANK](https://upstash.com/docs/redis/commands/sorted-set/zremrangebyrank.md): Remove members by rank range. - [ZREMRANGEBYSCORE](https://upstash.com/docs/redis/commands/sorted-set/zremrangebyscore.md): Remove members by score range. - [ZREVRANGE](https://upstash.com/docs/redis/commands/sorted-set/zrevrange.md): Get members in reverse order. - [ZREVRANGEBYLEX](https://upstash.com/docs/redis/commands/sorted-set/zrevrangebylex.md): List members in a lexicographic range, in reverse order. - [ZREVRANGEBYSCORE](https://upstash.com/docs/redis/commands/sorted-set/zrevrangebyscore.md): List members in a score range, highest score first. - [ZREVRANK](https://upstash.com/docs/redis/commands/sorted-set/zrevrank.md): Get member's reverse rank. - [ZSCAN](https://upstash.com/docs/redis/commands/sorted-set/zscan.md): Incrementally iterate sorted set. - [ZSCORE](https://upstash.com/docs/redis/commands/sorted-set/zscore.md): Get member's score. - [ZUNION](https://upstash.com/docs/redis/commands/sorted-set/zunion.md): Get sorted set union. - [ZUNIONSTORE](https://upstash.com/docs/redis/commands/sorted-set/zunionstore.md): Store sorted set union. ## Command Reference > Streams - [Streams commands](https://upstash.com/docs/redis/commands/streams/overview.md): Commands for append-only logs, consumer groups, and message processing. - [XACK](https://upstash.com/docs/redis/commands/streams/xack.md): Acknowledge stream messages. - [XACKDEL](https://upstash.com/docs/redis/commands/streams/xackdel.md): Acknowledge and delete messages. - [XADD](https://upstash.com/docs/redis/commands/streams/xadd.md): Add entry to stream. - [XAUTOCLAIM](https://upstash.com/docs/redis/commands/streams/xautoclaim.md): Auto-claim idle messages. - [XCLAIM](https://upstash.com/docs/redis/commands/streams/xclaim.md): Claim pending messages. - [XDEL](https://upstash.com/docs/redis/commands/streams/xdel.md): Delete stream entries. - [XDELEX](https://upstash.com/docs/redis/commands/streams/xdelex.md): Delete entries with reference control. - [XGROUP](https://upstash.com/docs/redis/commands/streams/xgroup.md): Manage consumer groups. - [XINFO CONSUMERS](https://upstash.com/docs/redis/commands/streams/xinfo-consumers.md): List group consumers. - [XINFO GROUPS](https://upstash.com/docs/redis/commands/streams/xinfo-groups.md): List stream groups. - [XINFO STREAM](https://upstash.com/docs/redis/commands/streams/xinfo-stream.md): Get stream info. - [XLEN](https://upstash.com/docs/redis/commands/streams/xlen.md): Get stream length. - [XPENDING](https://upstash.com/docs/redis/commands/streams/xpending.md): Get pending messages info. - [XRANGE](https://upstash.com/docs/redis/commands/streams/xrange.md): Get range of stream entries. - [XREAD](https://upstash.com/docs/redis/commands/streams/xread.md): Read stream entries. - [XREADGROUP](https://upstash.com/docs/redis/commands/streams/xreadgroup.md): Read as consumer group. - [XREVRANGE](https://upstash.com/docs/redis/commands/streams/xrevrange.md): Get range in reverse order. - [XTRIM](https://upstash.com/docs/redis/commands/streams/xtrim.md): Trim stream to max length. ## Command Reference > String - [String commands](https://upstash.com/docs/redis/commands/string/overview.md): Commands for storing and manipulating string values. - [APPEND](https://upstash.com/docs/redis/commands/string/append.md): Append value to a string. - [DECR](https://upstash.com/docs/redis/commands/string/decr.md): Decrement integer value by 1. - [DECRBY](https://upstash.com/docs/redis/commands/string/decrby.md): Decrement integer by amount. - [DELEX](https://upstash.com/docs/redis/commands/string/delex.md): Delete a string when a condition matches. - [DIGEST](https://upstash.com/docs/redis/commands/string/digest.md): Get the digest of a string value. - [GET](https://upstash.com/docs/redis/commands/string/get.md): Get string value. - [GETDEL](https://upstash.com/docs/redis/commands/string/getdel.md): Get value and delete key. - [GETEX](https://upstash.com/docs/redis/commands/string/getex.md): Get value and set expiration. - [GETRANGE](https://upstash.com/docs/redis/commands/string/getrange.md): Get substring of string. - [GETSET](https://upstash.com/docs/redis/commands/string/getset.md): Set value and return old value. - [INCR](https://upstash.com/docs/redis/commands/string/incr.md): Increment integer value by 1. - [INCRBY](https://upstash.com/docs/redis/commands/string/incrby.md): Increment integer by amount. - [INCRBYFLOAT](https://upstash.com/docs/redis/commands/string/incrbyfloat.md): Increment float by amount. - [MGET](https://upstash.com/docs/redis/commands/string/mget.md): Get values of multiple keys. - [MSET](https://upstash.com/docs/redis/commands/string/mset.md): Set multiple keys at once. - [MSETEX](https://upstash.com/docs/redis/commands/string/msetex.md): Set multiple keys with one expiration. - [MSETNX](https://upstash.com/docs/redis/commands/string/msetnx.md): Set multiple keys if none exist. - [PSETEX](https://upstash.com/docs/redis/commands/string/psetex.md): Set value with ms expiration. - [SET](https://upstash.com/docs/redis/commands/string/set.md): Set string value. - [SETEX](https://upstash.com/docs/redis/commands/string/setex.md): Set value with expiration. - [SETNX](https://upstash.com/docs/redis/commands/string/setnx.md): Set value if key doesn't exist. - [SETRANGE](https://upstash.com/docs/redis/commands/string/setrange.md): Overwrite part of string. - [STRLEN](https://upstash.com/docs/redis/commands/string/strlen.md): Get string length. ## Command Reference > Transactions - [Transactions commands](https://upstash.com/docs/redis/commands/transactions/overview.md): Commands for grouping operations into atomic transactions. - [DISCARD](https://upstash.com/docs/redis/commands/transactions/discard.md): Discard queued commands. - [EXEC](https://upstash.com/docs/redis/commands/transactions/exec.md): Execute queued commands. - [MULTI](https://upstash.com/docs/redis/commands/transactions/multi.md): Start a transaction. - [UNWATCH](https://upstash.com/docs/redis/commands/transactions/unwatch.md): Unwatch all keys. - [WATCH](https://upstash.com/docs/redis/commands/transactions/watch.md): Watch keys for changes. ## Command Reference > Vector - [Vector commands](https://upstash.com/docs/redis/commands/vector/overview.md): Commands for storing embeddings and running nearest-neighbour search inside Redis. - [VECTOR.CREATE](https://upstash.com/docs/redis/commands/vector/vector-create.md): Create a vector index. - [VECTOR.ADD](https://upstash.com/docs/redis/commands/vector/vector-add.md): Add or replace a vector in an index. - [VECTOR.GET](https://upstash.com/docs/redis/commands/vector/vector-get.md): Get the vector stored under an ID. - [VECTOR.QUERY](https://upstash.com/docs/redis/commands/vector/vector-query.md): Find the nearest vectors to a query vector. - [VECTOR.DEL](https://upstash.com/docs/redis/commands/vector/vector-del.md): Remove a vector from an index. - [VECTOR.COUNT](https://upstash.com/docs/redis/commands/vector/vector-count.md): Count the vectors in an index. - [VECTOR.INFO](https://upstash.com/docs/redis/commands/vector/vector-info.md): Get the configuration of a vector index. - [VECTOR.DROP](https://upstash.com/docs/redis/commands/vector/vector-drop.md): Delete a vector index. ## Rate Limit > TypeScript - [Overview](https://upstash.com/docs/redis/sdks/ratelimit-ts/overview.md) - [Getting Started](https://upstash.com/docs/redis/sdks/ratelimit-ts/gettingstarted.md) - [Methods](https://upstash.com/docs/redis/sdks/ratelimit-ts/methods.md) - [Features](https://upstash.com/docs/redis/sdks/ratelimit-ts/features.md) - [Traffic Protection](https://upstash.com/docs/redis/sdks/ratelimit-ts/traffic-protection.md) - [Ratelimiting Algorithms](https://upstash.com/docs/redis/sdks/ratelimit-ts/algorithms.md) - [Costs](https://upstash.com/docs/redis/sdks/ratelimit-ts/costs.md) ## Rate Limit > TypeScript > Integrations > Strapi - [Upstash Ratelimit Strapi Integration](https://upstash.com/docs/redis/integrations/ratelimit/strapi/getting-started.md) - [Configure Upstash Ratelimit Strapi Plugin](https://upstash.com/docs/redis/integrations/ratelimit/strapi/configurations.md) ## Rate Limit > Python - [Overview](https://upstash.com/docs/redis/sdks/ratelimit-py/overview.md) - [Getting Started](https://upstash.com/docs/redis/sdks/ratelimit-py/gettingstarted.md) - [Features](https://upstash.com/docs/redis/sdks/ratelimit-py/features.md) - [Ratelimiting Algorithms](https://upstash.com/docs/redis/sdks/ratelimit-py/algorithms.md)