diff --git a/common/account/add-payment-method.mdx b/common/account/add-payment-method.mdx
new file mode 100755
index 000000000..62aec3679
--- /dev/null
+++ b/common/account/add-payment-method.mdx
@@ -0,0 +1,25 @@
+---
+title: Add a Payment Method
+---
+
+Upstash does not require a credit card for Free databases. For paid databases, you need to add at least one payment method. To add one:
+
+1. Sign in to the [Upstash Console](https://console.upstash.com).
+2. Click your profile in the top right and select `Account` from the dropdown.
+3. Open the `Billing` tab.
+4. Click `Add Your Card`.
+5. Enter your name and card information in the form that appears:
+
+
+
+
+
+You can save multiple cards and pick one as the default. Payments are charged from the default card.
+
+
+
+
+
+## Payment Security
+
+Upstash does not store credit card information on its servers. Payments are processed by [Stripe](https://stripe.com/docs/security/stripe).
diff --git a/common/account/addapaymentmethod.mdx b/common/account/addapaymentmethod.mdx
deleted file mode 100755
index fd6a6cd25..000000000
--- a/common/account/addapaymentmethod.mdx
+++ /dev/null
@@ -1,29 +0,0 @@
----
-title: Add a Payment Method
----
-
-Upstash does not require a credit card for Free databases. However, for paid databases, you need to add at least one payment method. To add a payment method, follow these steps:
-
-1. Click on your profile at the top right.
-2. Select `Account` from the dropdown menu.
-3. Navigate to the `Billing` tab.
-4. On the screen, click the `Add Your Card` button.
-5. Enter your name and credit card information in the following form:
-
-
-
-
-
-You can enter multiple credit cards and set one of them as the default one. The
-payments will be charged from the default credit card.
-
-
-
-
-
-## Payment Security
-
-Upstash does not store users' credit card information in its servers. We use
-Stripe Inc payment processing company to handle payments. You can read more
-about payment security in Stripe
-[here](https://stripe.com/docs/security/stripe).
diff --git a/common/help/production-checklist.mdx b/common/help/production-checklist.mdx
index f1c3668c1..f8ed0736d 100644
--- a/common/help/production-checklist.mdx
+++ b/common/help/production-checklist.mdx
@@ -136,7 +136,7 @@ Before going live, ensure you have:
- [Prod Pack & Enterprise](/redis/overall/enterprise)
- [Backup & Restore](/redis/features/backup)
- [Global Database](/redis/features/globaldatabase)
-- [Monitoring & Metrics](/redis/howto/metricsandcharts)
+- [Monitoring & Metrics](/redis/howto/metrics-and-charts)
- [Compliance Information](/common/help/compliance)
- [Professional Support](/common/help/prosupport)
diff --git a/docs.json b/docs.json
index 61acbbaba..079d55283 100644
--- a/docs.json
+++ b/docs.json
@@ -46,7 +46,7 @@
"common/account/createaccount",
"common/account/teams",
"common/account/developerapi",
- "common/account/addapaymentmethod",
+ "common/account/add-payment-method",
"common/account/awsmarketplace",
"common/account/costexplorer",
"common/account/paymenthistory",
@@ -828,10 +828,10 @@
{
"group": "How To",
"pages": [
- "redis/howto/connectclient",
- "redis/howto/connectwithupstashredis",
- "redis/howto/upgradedatabase",
- "redis/howto/metricsandcharts",
+ "redis/howto/connect-client",
+ "redis/howto/connect-with-upstash-redis",
+ "redis/howto/upgrade-database",
+ "redis/howto/metrics-and-charts",
"redis/howto/monitoryourusage",
"redis/howto/importexport",
"redis/howto/keyspacenotifications",
@@ -1910,6 +1910,26 @@
"source": "/docs/redis",
"destination": "/redis/overall/getstarted"
},
+ {
+ "source": "/redis/howto/connectclient",
+ "destination": "/redis/howto/connect-client"
+ },
+ {
+ "source": "/redis/howto/connectwithupstashredis",
+ "destination": "/redis/howto/connect-with-upstash-redis"
+ },
+ {
+ "source": "/redis/howto/upgradedatabase",
+ "destination": "/redis/howto/upgrade-database"
+ },
+ {
+ "source": "/redis/howto/metricsandcharts",
+ "destination": "/redis/howto/metrics-and-charts"
+ },
+ {
+ "source": "/common/account/addapaymentmethod",
+ "destination": "/common/account/add-payment-method"
+ },
{
"source": "/qStash",
"destination": "/qstash"
diff --git a/img/addpaymentmethod/cardlist.png b/img/addpaymentmethod/cardlist.png
index c5030f84c..bdde26924 100644
Binary files a/img/addpaymentmethod/cardlist.png and b/img/addpaymentmethod/cardlist.png differ
diff --git a/img/addpaymentmethod/ccform.png b/img/addpaymentmethod/ccform.png
index a5e4df48b..ca1102f7f 100644
Binary files a/img/addpaymentmethod/ccform.png and b/img/addpaymentmethod/ccform.png differ
diff --git a/img/getting_started/charts.png b/img/getting_started/charts.png
index 488222b59..a92d02d67 100644
Binary files a/img/getting_started/charts.png and b/img/getting_started/charts.png differ
diff --git a/img/getting_started/database.png b/img/getting_started/database.png
index 37af5a4a2..fe974df5d 100644
Binary files a/img/getting_started/database.png and b/img/getting_started/database.png differ
diff --git a/img/metrics/connections.png b/img/metrics/connections.png
index 8effe4389..dd6c52500 100644
Binary files a/img/metrics/connections.png and b/img/metrics/connections.png differ
diff --git a/img/metrics/current-month.png b/img/metrics/current-month.png
deleted file mode 100644
index e38d96284..000000000
Binary files a/img/metrics/current-month.png and /dev/null differ
diff --git a/img/metrics/databaselist.png b/img/metrics/databaselist.png
index d21aaaafa..abc5d61aa 100644
Binary files a/img/metrics/databaselist.png and b/img/metrics/databaselist.png differ
diff --git a/img/metrics/datasize.png b/img/metrics/datasize.png
index 41ce6ce4b..806ea2242 100644
Binary files a/img/metrics/datasize.png and b/img/metrics/datasize.png differ
diff --git a/img/metrics/hitsmisses.png b/img/metrics/hitsmisses.png
index 53b1f7d79..0dff7ff1f 100644
Binary files a/img/metrics/hitsmisses.png and b/img/metrics/hitsmisses.png differ
diff --git a/img/metrics/keyspace.png b/img/metrics/keyspace.png
index 8a76bf07d..871c7f8fd 100644
Binary files a/img/metrics/keyspace.png and b/img/metrics/keyspace.png differ
diff --git a/img/metrics/latency.png b/img/metrics/latency.png
index aa4a98bdd..dd100dccd 100644
Binary files a/img/metrics/latency.png and b/img/metrics/latency.png differ
diff --git a/img/metrics/requests5days.png b/img/metrics/requests5days.png
index a929f982a..58f6f8049 100644
Binary files a/img/metrics/requests5days.png and b/img/metrics/requests5days.png differ
diff --git a/img/metrics/throughput.png b/img/metrics/throughput.png
index b1b251701..778ac74b6 100644
Binary files a/img/metrics/throughput.png and b/img/metrics/throughput.png differ
diff --git a/llms-full.txt b/llms-full.txt
index b9d2aa795..ab1077774 100644
--- a/llms-full.txt
+++ b/llms-full.txt
@@ -4073,29 +4073,25 @@ const bestModel = evaluation.sort((a, b) => a.hallucinationPct - b.hallucination
Each box is fully isolated, so one model's behavior never leaks into another's results.
# Add a Payment Method
-Source: https://upstash.com/docs/common/account/addapaymentmethod
+Source: https://upstash.com/docs/common/account/add-payment-method
-Upstash does not require a credit card for Free databases. However, for paid databases, you need to add at least one payment method. To add a payment method, follow these steps:
+Upstash does not require a credit card for Free databases. For paid databases, you need to add at least one payment method. To add one:
-1. Click on your profile at the top right.
-2. Select `Account` from the dropdown menu.
-3. Navigate to the `Billing` tab.
-4. On the screen, click the `Add Your Card` button.
-5. Enter your name and credit card information in the following form:
+1. Sign in to the [Upstash Console](https://console.upstash.com).
+2. Click your profile in the top right and select `Account` from the dropdown.
+3. Open the `Billing` tab.
+4. Click `Add Your Card`.
+5. Enter your name and card information in the form that appears:
-You can enter multiple credit cards and set one of them as the default one. The
-payments will be charged from the default credit card.
+You can save multiple cards and pick one as the default. Payments are charged from the default card.
## Payment Security
-Upstash does not store users' credit card information in its servers. We use
-Stripe Inc payment processing company to handle payments. You can read more
-about payment security in Stripe
-[here](https://stripe.com/docs/security/stripe).
+Upstash does not store credit card information on its servers. Payments are processed by [Stripe](https://stripe.com/docs/security/stripe).
# Audit Logs
Source: https://upstash.com/docs/common/account/auditlogs
@@ -4840,7 +4836,7 @@ Before going live, ensure you have:
* [Prod Pack & Enterprise](/docs/redis/overall/enterprise)
* [Backup & Restore](/docs/redis/features/backup)
* [Global Database](/docs/redis/features/globaldatabase)
-* [Monitoring & Metrics](/docs/redis/howto/metricsandcharts)
+* [Monitoring & Metrics](/docs/redis/howto/metrics-and-charts)
* [Compliance Information](/docs/common/help/compliance)
* [Professional Support](/docs/common/help/prosupport)
@@ -15565,7 +15561,7 @@ Before going live, ensure you have:
* [Prod Pack & Enterprise](/docs/redis/overall/enterprise)
* [Backup & Restore](/docs/redis/features/backup)
* [Global Database](/docs/redis/features/globaldatabase)
-* [Monitoring & Metrics](/docs/redis/howto/metricsandcharts)
+* [Monitoring & Metrics](/docs/redis/howto/metrics-and-charts)
* [Compliance Information](/docs/common/help/compliance)
* [Professional Support](/docs/common/help/prosupport)
@@ -15669,13 +15665,13 @@ You can see the average latencies for different regions in
[Upstash Latency Monitoring](https://latency.upstash.com) page
# Connect Your Client
-Source: https://upstash.com/docs/redis/howto/connectclient
+Source: https://upstash.com/docs/redis/howto/connect-client
Upstash works with Redis® API, that means you can use any Redis client with
Upstash. At the [Redis Clients](https://redis.io/clients) page you can find the
list of Redis clients in different languages.
-Probably, the easiest way to connect to your database is to use `redis-cli`.
+Simplest way to connect to your database is to use `redis-cli`.
Because it is already covered in [Getting Started](../overall/getstarted), we
will skip it here.
@@ -15686,9 +15682,10 @@ see the database page as below:
-The information required for Redis clients is displayed here as **Endpoint**,
-**Port** and **Password**. Also when you click on `Clipboard` button on **Connect to your database** section, you can copy
-the code that is required for your client.
+The connection details required for Redis clients are displayed here: **Endpoint**,
+**Port**, and **Token** (which is also the password of the database). You can also
+find the environment variables `UPSTASH_REDIS_REST_URL` and`UPSTASH_REDIS_REST_TOKEN`
+on this page.
Below, we will provide examples from popular Redis clients, but the information above should help you configure all Redis clients similarly.
@@ -15697,17 +15694,12 @@ Below, we will provide examples from popular Redis clients, but the information
to disable it.
-## upstash-redis
+## @upstash/redis
-
- Because upstash-redis is HTTP based, we recommend it for Serverless functions.
- Other TCP based clients can cause connection problems in highly concurrent use
- cases.
-
-
-**Library**: [upstash-redis](https://github.com/upstash/upstash-redis)
-
-**Example**:
+[@upstash/redis](https://github.com/upstash/redis-js) is the official SDK developed
+and maintained by Upstash. It is HTTP-based, which makes it ideal for serverless
+environments like Vercel and Cloudflare Workers. In highly concurrent serverless
+workloads, TCP-based clients can run into connection issues.
```typescript
import { Redis } from "@upstash/redis";
@@ -15727,12 +15719,12 @@ const redis = new Redis({
})();
```
+See the [Connect with @upstash/redis page](/docs/redis/howto/connect-with-upstash-redis) for more information.
+
## Node.js
**Library**: [ioredis](https://github.com/luin/ioredis)
-**Example**:
-
```javascript
const Redis = require("ioredis");
@@ -15746,8 +15738,6 @@ console.log(x);
**Library**: [redis-py](https://github.com/andymccurdy/redis-py)
-**Example**:
-
```python
import redis
r = redis.Redis(
@@ -15763,8 +15753,6 @@ print(r.get('foo'))
**Library**: [jedis](https://github.com/xetorthio/jedis)
-**Example**:
-
```java
Jedis jedis = new Jedis("YOUR_ENDPOINT", "YOUR_PORT", true);
jedis.auth("YOUR_PASSWORD");
@@ -15783,8 +15771,6 @@ System.out.println(value);
**Library**: [phpredis](https://github.com/phpredis/phpredis)
-**Example**:
-
```php
get("foo"));
**Library**: [redigo](https://github.com/gomodule/redigo)
-**Example**:
-
```go
func main() {
c, err := redis.Dial("tcp", "YOUR_ENDPOINT:YOUR_PORT", redis.DialUseTLS(true))
@@ -15836,21 +15820,22 @@ func main() {
}
```
-# Connect with upstash-redis
-Source: https://upstash.com/docs/redis/howto/connectwithupstashredis
+# Connect with @upstash/redis
+Source: https://upstash.com/docs/redis/howto/connect-with-upstash-redis
-[upstash-redis](https://github.com/upstash/redis-js)
+[@upstash/redis](https://github.com/upstash/redis-js)
is an HTTP/REST based Redis client built on top of
[Upstash REST API](/docs/redis/features/restapi). For more information,
refer to the documentation of Upstash redis client ([TypeScript](/docs/redis/sdks/ts/overview) & [Python](/docs/redis/sdks/py/overview)).
It is the only connectionless (HTTP based) Redis client and designed for:
-* Serverless functions (AWS Lambda ...)
+* Serverless functions (AWS Lambda)
* Cloudflare Workers (see
[the example](https://github.com/upstash/redis-js/tree/main/examples/cloudflare-workers-with-typescript))
-* Fastly Compute@Edge
-* Next.js, Jamstack ...
+* Fastly Compute@Edge (see
+ [the example](https://github.com/upstash/upstash-redis/tree/master/examples/fastly))
+* Next.js (see [the quickstart](/docs/redis/quickstarts/nextjs-app-router)), Jamstack
* Client side web/mobile applications
* WebAssembly
* and other environments where HTTP is preferred over TCP.
@@ -15877,30 +15862,26 @@ const redis = new Redis({
token: "UPSTASH_REDIS_REST_TOKEN",
});
-(async () => {
- try {
- const data = await redis.get("key");
- console.log(data);
- } catch (error) {
- console.error(error);
- }
-})();
+const data = await redis.get("key");
+console.log(data);
```
+
+ You can find values to set as `UPSTASH_REDIS_REST_URL` and`UPSTASH_REDIS_REST_TOKEN`
+ on the details tab of your database on [Upstash Console](https://console.upstash.com/redis).
+ See [Connect Client page](/docs/redis/howto/connect-client#database) for more information.
+
+
If you define `UPSTASH_REDIS_REST_URL` and`UPSTASH_REDIS_REST_TOKEN` environment
variables, you can load them automatically.
```typescript
import { Redis } from "@upstash/redis";
-const redis = Redis.fromEnv()(async () => {
- try {
- const data = await redis.get("key");
- console.log(data);
- } catch (error) {
- console.error(error);
- }
-})();
+const redis = Redis.fromEnv();
+
+const data = await redis.get("key");
+console.log(data);
```
# Datadog - Upstash Redis Integration
@@ -16104,7 +16085,7 @@ similar in other languages.
This example uses Redis clients. If you expect many concurrent AWS Lambda
invocation then we recommend using
- **[upstash-redis](/docs/redis/howto/connectwithupstashredis)** which is HTTP/REST
+ **[upstash-redis](/docs/redis/howto/connect-with-upstash-redis)** which is HTTP/REST
based.
@@ -16665,29 +16646,24 @@ redis-cli --tls -u $UPSTASH_REDIS_CLI_URL config get notify-keyspace-events
# Metrics and Charts
-Source: https://upstash.com/docs/redis/howto/metricsandcharts
+Source: https://upstash.com/docs/redis/howto/metrics-and-charts
-There are many metrics and charts in Upstash console. In this document, we will
-explain what each of these charts refers to. There are two pages where you can
-see charts and metrics:
+The Upstash Console exposes metrics in two places: the database list, and the detail page of a single database. This page explains what each chart shows.
## Database List
-The charts on this page give aggregated and total information about the database
-and your usage.
+The list view aggregates summary information across all of your databases.
-In this chart, all your databases are listed. You can click on the name of the
-database that you want to see detailed information. Also, the following
-information is listed for each database:
+Click a database name to open its detail page. For each row the list shows:
* The region of the database
-* The current size of the data
-* The current count of active connections: Not that if your connections are
- short-lived then you may see 0 here most of the time.
+* The plan of the database (free, pay-as-you-go, fixed, or enterprise)
-## Database Detail
+## Database Details
+
+By clicking on a database on the list page, you can navigate to its detail page.
The charts on this page show metrics that are specific to the selected database.
@@ -16695,15 +16671,17 @@ The charts on this page show metrics that are specific to the selected database.
-* This chart shows the daily cost of the database. The chart covers the last 5
- days.
+Daily cost of the database for the current billing month.
### Daily Request
-This chart shows the daily total number of requests to the database. The chart
-covers the last 5 days.
+Total number of requests per day, over the last 5 days.
+
+## Database Usage
+
+If you click on the "Usage" tab, you can see more detailed charts about the usage of your database.
### Throughput
@@ -16995,29 +16973,15 @@ See our
for details and examples about Upstash Terraform Provider.
# Upgrade Your Database
-Source: https://upstash.com/docs/redis/howto/upgradedatabase
-
-Free tier has followings restrictions:
-
-* Max 500K commands per month
-* Max 256MB data size
-* One free database per account
+Source: https://upstash.com/docs/redis/howto/upgrade-database
-If you think your database is close to reaching any of these limits, we
-recommend you to upgrade to pay-as-you-go plan which includes:
+The free tier has limits on monthly commands, data size, and the number of databases per account. See the [pricing page](https://upstash.com/pricing/redis) for the current values.
-* No limit on requests per day
-* Data size up to 100 GB
+If your database is close to any of these limits, upgrade to the pay-as-you-go plan, which removes the daily request cap and raises the data size ceiling.
-To upgrade your database, you need to have a payment method. You can add a
-payment method as described [here](/docs/common/account/addapaymentmethod). After you add
-a payment method, Upstash restarts your database and your new database starts
-with the pay-as-you-go plan.
+To upgrade, you need a payment method. Follow the steps in [Add a Payment Method](/docs/common/account/add-payment-method). Once a payment method is added, your database switches automatically to the pay-as-you-go plan.
-See the [Pricing & Limits](../overall/pricing) for limits of the
-pay-as-you-go and fixed plans. If you think, your use case will exceed those quotas,
-contact us (support@upstash.com) for our [Enterprise Plan](../overall/enterprise)
-where you can customize the limits.
+See [Pricing & Limits](../overall/pricing) for the full breakdown of the pay-as-you-go and Fixed plans. If your workload will exceed those quotas, reach out at support@upstash.com about our [Enterprise Plan](../overall/enterprise) where the limits are configurable.
During the upgrade process, you will not lose any data but your database will
@@ -18722,7 +18686,7 @@ Upstash Redis is a **highly available, infinitely scalable** Redis-compatible da
## 1. Create an Upstash Redis Database
-Once you're logged in, create a database by clicking `+ Create Database` in the upper right corner. A dialog opens up:
+Log in to the [Upstash Console](https://console.upstash.com) (or [sign up](https://console.upstash.com) for a free account). From the **Redis** tab, click `+ Create Database` in the upper right corner. A dialog opens up:
@@ -18738,7 +18702,11 @@ Once you click `Next` and select a plan, your database is running and ready to c
## 2. Connect to Your Database
-You can connect to Upstash Redis with any Redis client. For simplicity, we'll use `redis-cli`. See the [Connect Your Client](../howto/connectclient) section for connecting via our TypeScript or Python SDKs and other clients.
+You can connect to Upstash Redis with any Redis client. For simplicity, we'll use `redis-cli`. See the [Connect Your Client](../howto/connect-client) section for connecting via our TypeScript or Python SDKs and other clients.
+
+
+ You can copy the `redis-cli` command to connect to your database from the **Details** tab of your database in the Upstash Console.
+
The Redis CLI is included in the official Redis distribution. If you don't
have Redis installed, you can get it [here](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/).
@@ -18764,14 +18732,14 @@ As you run commands, you'll see updates to your database metrics in (almost) rea
Congratulations! You have created an ultra-fast Upstash Redis database! 🎉
-**New: Manage Upstash Redis From Cursor (optional)**
+**New: Manage Upstash Redis with your agent**
-Manage Upstash Redis databases from Cursor and other AI tools by using our [MCP server](/docs/redis/integrations/mcp).
+Manage Upstash Redis databases from Claude and other AI tools by using our [MCP server](/docs/agent-resources/mcp).
## Next steps
-* [Connect your client](../howto/connectclient): TypeScript, Python, Go, Java, and other Redis clients.
+* [Connect your client](../howto/connect-client): TypeScript, Python, Go, Java, and other Redis clients.
* [Use cases](/docs/redis/overall/usecases): caching, rate limiting, queues, pub/sub, AI workloads, and more.
* [Upstash Redis Search](/docs/redis/search/introduction): full-text search built into Upstash Redis.
* [REST API](/docs/redis/features/restapi): connect from edge and serverless runtimes where TCP is restricted.
@@ -18873,7 +18841,7 @@ We believe that Upstash is the best storage for your Lambda Functions because:
- [AWS Lambda](https://upstash.com/docs/redis/quickstarts/aws-lambda.md)
- [Azure Functions](https://upstash.com/docs/redis/quickstarts/azure-functions.md)
-- [ Cloudflare Workers](https://upstash.com/docs/redis/quickstarts/cloudflareworkers.md)
+- [Cloudflare Workers](https://upstash.com/docs/redis/quickstarts/cloudflareworkers.md)
- [Deno Deploy](https://upstash.com/docs/redis/quickstarts/deno-deploy.md)
- [DigitalOcean](https://upstash.com/docs/redis/quickstarts/digitalocean.md)
- [Django](https://upstash.com/docs/redis/quickstarts/django.md)
@@ -21666,23 +21634,22 @@ console.log(data)
# Overview
Source: https://upstash.com/docs/redis/sdks/ts/overview
-`@upstash/redis` is an HTTP/REST based Redis client for TypeScript, built on top
-of [Upstash REST API](https://docs.upstash.com/features/restapi).
+[@upstash/redis](https://github.com/upstash/redis-js)
+is an HTTP/REST based Redis client built on top of
+[Upstash REST API](/docs/redis/features/restapi).
-[![Tests]()](https://github.com/upstash/upstash-redis/actions/workflows/tests.yaml)
+[![Tests]()](https://github.com/upstash/redis-js/actions/workflows/tests.yaml)
![npm (scoped)]()
![npm bundle size]()
-You can find the Github Repository [here](https://github.com/upstash/upstash-redis).
-
It is the only connectionless (HTTP based) Redis client and designed for:
-* Serverless functions (AWS Lambda ...)
+* Serverless functions (AWS Lambda)
* Cloudflare Workers (see
- [the example](https://github.com/upstash/upstash-redis/tree/master/examples/cloudflare-workers))
+ [the example](https://github.com/upstash/redis-js/tree/main/examples/cloudflare-workers))
* Fastly Compute@Edge (see
- [the example](https://github.com/upstash/upstash-redis/tree/master/examples/fastly))
-* Next.js, Jamstack ...
+ [the example](https://github.com/upstash/redis-js/tree/main/examples/fastly))
+* Next.js (see [the quickstart](/docs/redis/quickstarts/nextjs-app-router)), Jamstack
* Client side web/mobile applications
* WebAssembly
* and other environments where HTTP is preferred over TCP.
@@ -28029,7 +27996,7 @@ You can upgrade your database to a paid plan, such as pay-as-you-go or a fixed p
by entering a payment method. When you entered your credit card, your database will be upgraded
automatically.
-See [here](../howto/upgradedatabase) for more information.
+See [here](../howto/upgrade-database) for more information.
# ERR max key size exceeded
Source: https://upstash.com/docs/redis/troubleshooting/max_key_size_exceeded
@@ -28137,7 +28104,7 @@ You can upgrade your database to a paid plan, such as pay-as-you-go or a fixed p
by entering a payment method. When you entered your credit card, your database will be upgraded
automatically.
-See [here](../howto/upgradedatabase) for more information.
+See [here](../howto/upgrade-database) for more information.
# NOAUTH Authentication Required
Source: https://upstash.com/docs/redis/troubleshooting/no_auth
diff --git a/llms.txt b/llms.txt
index 6ed798a2a..8d415089f 100644
--- a/llms.txt
+++ b/llms.txt
@@ -53,7 +53,7 @@
- [Shell](https://upstash.com/docs/box/overall/shell.md)
- [Snapshots](https://upstash.com/docs/box/overall/snapshots.md)
- [Use Cases](https://upstash.com/docs/box/overall/use-cases.md)
-- [Add a Payment Method](https://upstash.com/docs/common/account/addapaymentmethod.md)
+- [Add a Payment Method](https://upstash.com/docs/common/account/add-payment-method.md)
- [Audit Logs](https://upstash.com/docs/common/account/auditlogs.md)
- [AWS Marketplace](https://upstash.com/docs/common/account/awsmarketplace.md)
- [Cost Explorer](https://upstash.com/docs/common/account/costexplorer.md)
@@ -277,8 +277,8 @@
- [Shared Responsibility Model](https://upstash.com/docs/redis/help/shared-responsibility-model.md)
- [Support & Contact Us](https://upstash.com/docs/redis/help/support.md)
- [Uptime Monitor](https://upstash.com/docs/redis/help/uptime.md)
-- [Connect Your Client](https://upstash.com/docs/redis/howto/connectclient.md)
-- [Connect with upstash-redis](https://upstash.com/docs/redis/howto/connectwithupstashredis.md)
+- [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)
- [Datadog - Upstash Redis Integration](https://upstash.com/docs/redis/howto/datadog.md)
- [EMQX - Upstash Redis Integration](https://upstash.com/docs/redis/howto/emqxintegration.md)
- [Get Started with AWS Lambda](https://upstash.com/docs/redis/howto/getstartedawslambda.md)
@@ -288,12 +288,12 @@
- [ioredis note](https://upstash.com/docs/redis/howto/ioredisnote.md)
- [Use IP Allowlist](https://upstash.com/docs/redis/howto/ipallowlist.md)
- [Listen Keyspace Notifications](https://upstash.com/docs/redis/howto/keyspacenotifications.md)
-- [Metrics and Charts](https://upstash.com/docs/redis/howto/metricsandcharts.md)
+- [Metrics and Charts](https://upstash.com/docs/redis/howto/metrics-and-charts.md)
- [Migrate Regional to Global Database](https://upstash.com/docs/redis/howto/migratefromregionaltoglobal.md)
- [Monitor your usage](https://upstash.com/docs/redis/howto/monitoryourusage.md)
- [Read Your Writes](https://upstash.com/docs/redis/howto/readyourwrites.md)
- [Terraform Provider](https://upstash.com/docs/redis/howto/terraformprovider.md)
-- [Upgrade Your Database](https://upstash.com/docs/redis/howto/upgradedatabase.md)
+- [Upgrade Your Database](https://upstash.com/docs/redis/howto/upgrade-database.md)
- [Vercel - Upstash Redis Integration](https://upstash.com/docs/redis/howto/vercelintegration.md)
- [BullMQ with Upstash Redis](https://upstash.com/docs/redis/integrations/bullmq.md)
- [Celery with Upstash Redis](https://upstash.com/docs/redis/integrations/celery.md)
@@ -319,7 +319,7 @@
- [Use Cases](https://upstash.com/docs/redis/overall/usecases.md)
- [AWS Lambda](https://upstash.com/docs/redis/quickstarts/aws-lambda.md)
- [Azure Functions](https://upstash.com/docs/redis/quickstarts/azure-functions.md)
-- [ Cloudflare Workers](https://upstash.com/docs/redis/quickstarts/cloudflareworkers.md)
+- [Cloudflare Workers](https://upstash.com/docs/redis/quickstarts/cloudflareworkers.md)
- [Deno Deploy](https://upstash.com/docs/redis/quickstarts/deno-deploy.md)
- [DigitalOcean](https://upstash.com/docs/redis/quickstarts/digitalocean.md)
- [Django](https://upstash.com/docs/redis/quickstarts/django.md)
diff --git a/redis/help/production-checklist.mdx b/redis/help/production-checklist.mdx
index b962211b1..a9c1ec321 100644
--- a/redis/help/production-checklist.mdx
+++ b/redis/help/production-checklist.mdx
@@ -137,7 +137,7 @@ Before going live, ensure you have:
- [Prod Pack & Enterprise](/redis/overall/enterprise)
- [Backup & Restore](/redis/features/backup)
- [Global Database](/redis/features/globaldatabase)
-- [Monitoring & Metrics](/redis/howto/metricsandcharts)
+- [Monitoring & Metrics](/redis/howto/metrics-and-charts)
- [Compliance Information](/common/help/compliance)
- [Professional Support](/common/help/prosupport)
diff --git a/redis/howto/connectclient.mdx b/redis/howto/connect-client.mdx
similarity index 80%
rename from redis/howto/connectclient.mdx
rename to redis/howto/connect-client.mdx
index 0b28f6b1a..c1524b2af 100755
--- a/redis/howto/connectclient.mdx
+++ b/redis/howto/connect-client.mdx
@@ -6,7 +6,7 @@ Upstash works with Redis® API, that means you can use any Redis client with
Upstash. At the [Redis Clients](https://redis.io/clients) page you can find the
list of Redis clients in different languages.
-Probably, the easiest way to connect to your database is to use `redis-cli`.
+Simplest way to connect to your database is to use `redis-cli`.
Because it is already covered in [Getting Started](../overall/getstarted), we
will skip it here.
@@ -19,9 +19,10 @@ see the database page as below:
-The information required for Redis clients is displayed here as **Endpoint**,
-**Port** and **Password**. Also when you click on `Clipboard` button on **Connect to your database** section, you can copy
-the code that is required for your client.
+The connection details required for Redis clients are displayed here: **Endpoint**,
+**Port**, and **Token** (which is also the password of the database). You can also
+find the environment variables `UPSTASH_REDIS_REST_URL` and`UPSTASH_REDIS_REST_TOKEN`
+on this page.
Below, we will provide examples from popular Redis clients, but the information above should help you configure all Redis clients similarly.
@@ -30,17 +31,12 @@ Below, we will provide examples from popular Redis clients, but the information
to disable it.
-## upstash-redis
+## @upstash/redis
-
- Because upstash-redis is HTTP based, we recommend it for Serverless functions.
- Other TCP based clients can cause connection problems in highly concurrent use
- cases.
-
-
-**Library**: [upstash-redis](https://github.com/upstash/upstash-redis)
-
-**Example**:
+[@upstash/redis](https://github.com/upstash/redis-js) is the official SDK developed
+and maintained by Upstash. It is HTTP-based, which makes it ideal for serverless
+environments like Vercel and Cloudflare Workers. In highly concurrent serverless
+workloads, TCP-based clients can run into connection issues.
```typescript
import { Redis } from "@upstash/redis";
@@ -60,12 +56,12 @@ const redis = new Redis({
})();
```
+See the [Connect with @upstash/redis page](/redis/howto/connect-with-upstash-redis) for more information.
+
## Node.js
**Library**: [ioredis](https://github.com/luin/ioredis)
-**Example**:
-
```javascript
const Redis = require("ioredis");
@@ -79,8 +75,6 @@ console.log(x);
**Library**: [redis-py](https://github.com/andymccurdy/redis-py)
-**Example**:
-
```python
import redis
r = redis.Redis(
@@ -96,8 +90,6 @@ print(r.get('foo'))
**Library**: [jedis](https://github.com/xetorthio/jedis)
-**Example**:
-
```java
Jedis jedis = new Jedis("YOUR_ENDPOINT", "YOUR_PORT", true);
jedis.auth("YOUR_PASSWORD");
@@ -116,8 +108,6 @@ System.out.println(value);
**Library**: [phpredis](https://github.com/phpredis/phpredis)
-**Example**:
-
```php
get("foo"));
**Library**: [redigo](https://github.com/gomodule/redigo)
-**Example**:
-
```go
func main() {
c, err := redis.Dial("tcp", "YOUR_ENDPOINT:YOUR_PORT", redis.DialUseTLS(true))
diff --git a/redis/howto/connectwithupstashredis.mdx b/redis/howto/connect-with-upstash-redis.mdx
similarity index 59%
rename from redis/howto/connectwithupstashredis.mdx
rename to redis/howto/connect-with-upstash-redis.mdx
index d7d751551..221eac263 100755
--- a/redis/howto/connectwithupstashredis.mdx
+++ b/redis/howto/connect-with-upstash-redis.mdx
@@ -1,19 +1,20 @@
---
-title: Connect with upstash-redis
+title: Connect with @upstash/redis
---
-[upstash-redis](https://github.com/upstash/redis-js)
+[@upstash/redis](https://github.com/upstash/redis-js)
is an HTTP/REST based Redis client built on top of
[Upstash REST API](/redis/features/restapi). For more information,
refer to the documentation of Upstash redis client ([TypeScript](/redis/sdks/ts/overview) & [Python](/redis/sdks/py/overview)).
It is the only connectionless (HTTP based) Redis client and designed for:
-- Serverless functions (AWS Lambda ...)
+- Serverless functions (AWS Lambda)
- Cloudflare Workers (see
[the example](https://github.com/upstash/redis-js/tree/main/examples/cloudflare-workers-with-typescript))
-- Fastly Compute@Edge
-- Next.js, Jamstack ...
+- Fastly Compute@Edge (see
+ [the example](https://github.com/upstash/upstash-redis/tree/master/examples/fastly))
+- Next.js (see [the quickstart](/redis/quickstarts/nextjs-app-router)), Jamstack
- Client side web/mobile applications
- WebAssembly
- and other environments where HTTP is preferred over TCP.
@@ -40,28 +41,24 @@ const redis = new Redis({
token: "UPSTASH_REDIS_REST_TOKEN",
});
-(async () => {
- try {
- const data = await redis.get("key");
- console.log(data);
- } catch (error) {
- console.error(error);
- }
-})();
+const data = await redis.get("key");
+console.log(data);
```
+
+ You can find values to set as `UPSTASH_REDIS_REST_URL` and`UPSTASH_REDIS_REST_TOKEN`
+ on the details tab of your database on [Upstash Console](https://console.upstash.com/redis).
+ See [Connect Client page](/redis/howto/connect-client#database) for more information.
+
+
If you define `UPSTASH_REDIS_REST_URL` and`UPSTASH_REDIS_REST_TOKEN` environment
variables, you can load them automatically.
```typescript
import { Redis } from "@upstash/redis";
-const redis = Redis.fromEnv()(async () => {
- try {
- const data = await redis.get("key");
- console.log(data);
- } catch (error) {
- console.error(error);
- }
-})();
+const redis = Redis.fromEnv();
+
+const data = await redis.get("key");
+console.log(data);
```
diff --git a/redis/howto/getstartedawslambda.mdx b/redis/howto/getstartedawslambda.mdx
index fc4c6ee75..031f8c766 100755
--- a/redis/howto/getstartedawslambda.mdx
+++ b/redis/howto/getstartedawslambda.mdx
@@ -17,7 +17,7 @@ similar in other languages.
This example uses Redis clients. If you expect many concurrent AWS Lambda
invocation then we recommend using
- **[upstash-redis](/redis/howto/connectwithupstashredis)** which is HTTP/REST
+ **[upstash-redis](/redis/howto/connect-with-upstash-redis)** which is HTTP/REST
based.
diff --git a/redis/howto/metricsandcharts.mdx b/redis/howto/metrics-and-charts.mdx
similarity index 69%
rename from redis/howto/metricsandcharts.mdx
rename to redis/howto/metrics-and-charts.mdx
index f479b8d32..edbc8c9d0 100755
--- a/redis/howto/metricsandcharts.mdx
+++ b/redis/howto/metrics-and-charts.mdx
@@ -2,40 +2,34 @@
title: Metrics and Charts
---
-There are many metrics and charts in Upstash console. In this document, we will
-explain what each of these charts refers to. There are two pages where you can
-see charts and metrics:
+The Upstash Console exposes metrics in two places: the database list, and the detail page of a single database. This page explains what each chart shows.
## Database List
-The charts on this page give aggregated and total information about the database
-and your usage.
+The list view aggregates summary information across all of your databases.
-In this chart, all your databases are listed. You can click on the name of the
-database that you want to see detailed information. Also, the following
-information is listed for each database:
+Click a database name to open its detail page. For each row the list shows:
- The region of the database
-- The current size of the data
-- The current count of active connections: Not that if your connections are
- short-lived then you may see 0 here most of the time.
+- The plan of the database (free, pay-as-you-go, fixed, or enterprise)
-## Database Detail
+## Database Details
+
+By clicking on a database on the list page, you can navigate to its detail page.
The charts on this page show metrics that are specific to the selected database.
### Current Month
-
+
-- This chart shows the daily cost of the database. The chart covers the last 5
- days.
+Daily cost of the database for the current billing month.
### Daily Request
@@ -43,8 +37,11 @@ The charts on this page show metrics that are specific to the selected database.
-This chart shows the daily total number of requests to the database. The chart
-covers the last 5 days.
+Total number of requests per day, over the last 5 days.
+
+## Database Usage
+
+If you click on the "Usage" tab, you can see more detailed charts about the usage of your database.
### Throughput
diff --git a/redis/howto/upgrade-database.mdx b/redis/howto/upgrade-database.mdx
new file mode 100755
index 000000000..bb8cb8775
--- /dev/null
+++ b/redis/howto/upgrade-database.mdx
@@ -0,0 +1,18 @@
+---
+title: Upgrade Your Database
+---
+
+The free tier has limits on monthly commands, data size, and the number of databases per account. See the [pricing page](https://upstash.com/pricing/redis) for the current values.
+
+If your database is close to any of these limits, upgrade to the pay-as-you-go plan, which removes the daily request cap and raises the data size ceiling.
+
+To upgrade, you need a payment method. Follow the steps in [Add a Payment Method](/common/account/add-payment-method). Once a payment method is added, your database switches automatically to the pay-as-you-go plan.
+
+See [Pricing & Limits](../overall/pricing) for the full breakdown of the pay-as-you-go and Fixed plans. If your workload will exceed those quotas, reach out at support@upstash.com about our [Enterprise Plan](../overall/enterprise) where the limits are configurable.
+
+
+ During the upgrade process, you will not lose any data but your database will
+ experience a downtime about 1-2 seconds. Your existing clients will be
+ disconnected. So it is recommended to upgrade your database when there is the
+ least activity.
+
diff --git a/redis/howto/upgradedatabase.mdx b/redis/howto/upgradedatabase.mdx
deleted file mode 100755
index 24fffdf7d..000000000
--- a/redis/howto/upgradedatabase.mdx
+++ /dev/null
@@ -1,32 +0,0 @@
----
-title: Upgrade Your Database
----
-
-Free tier has followings restrictions:
-
-- Max 500K commands per month
-- Max 256MB data size
-- One free database per account
-
-If you think your database is close to reaching any of these limits, we
-recommend you to upgrade to pay-as-you-go plan which includes:
-
-- No limit on requests per day
-- Data size up to 100 GB
-
-To upgrade your database, you need to have a payment method. You can add a
-payment method as described [here](/common/account/addapaymentmethod). After you add
-a payment method, Upstash restarts your database and your new database starts
-with the pay-as-you-go plan.
-
-See the [Pricing & Limits](../overall/pricing) for limits of the
-pay-as-you-go and fixed plans. If you think, your use case will exceed those quotas,
-contact us (support@upstash.com) for our [Enterprise Plan](../overall/enterprise)
-where you can customize the limits.
-
-
- During the upgrade process, you will not lose any data but your database will
- experience a downtime about 1-2 seconds. Your existing clients will be
- disconnected. So it is recommended to upgrade your database when there is the
- least activity.
-
diff --git a/redis/overall/getstarted.mdx b/redis/overall/getstarted.mdx
index 4a6a337b1..91bc3d34a 100755
--- a/redis/overall/getstarted.mdx
+++ b/redis/overall/getstarted.mdx
@@ -21,7 +21,7 @@ Upstash Redis is a **highly available, infinitely scalable** Redis-compatible da
## 1. Create an Upstash Redis Database
-Once you're logged in, create a database by clicking `+ Create Database` in the upper right corner. A dialog opens up:
+Log in to the [Upstash Console](https://console.upstash.com) (or [sign up](https://console.upstash.com) for a free account). From the **Redis** tab, click `+ Create Database` in the upper right corner. A dialog opens up:
@@ -41,7 +41,11 @@ Once you click `Next` and select a plan, your database is running and ready to c
## 2. Connect to Your Database
-You can connect to Upstash Redis with any Redis client. For simplicity, we'll use `redis-cli`. See the [Connect Your Client](../howto/connectclient) section for connecting via our TypeScript or Python SDKs and other clients.
+You can connect to Upstash Redis with any Redis client. For simplicity, we'll use `redis-cli`. See the [Connect Your Client](../howto/connect-client) section for connecting via our TypeScript or Python SDKs and other clients.
+
+
+ You can copy the `redis-cli` command to connect to your database from the **Details** tab of your database in the Upstash Console.
+
The Redis CLI is included in the official Redis distribution. If you don't
have Redis installed, you can get it [here](https://redis.io/docs/latest/operate/oss_and_stack/install/install-redis/).
@@ -69,14 +73,14 @@ As you run commands, you'll see updates to your database metrics in (almost) rea
Congratulations! You have created an ultra-fast Upstash Redis database! 🎉
-**New: Manage Upstash Redis From Cursor (optional)**
+**New: Manage Upstash Redis with your agent**
-Manage Upstash Redis databases from Cursor and other AI tools by using our [MCP server](/redis/integrations/mcp).
+Manage Upstash Redis databases from Claude and other AI tools by using our [MCP server](/agent-resources/mcp).
## Next steps
-- [Connect your client](../howto/connectclient): TypeScript, Python, Go, Java, and other Redis clients.
+- [Connect your client](../howto/connect-client): TypeScript, Python, Go, Java, and other Redis clients.
- [Use cases](/redis/overall/usecases): caching, rate limiting, queues, pub/sub, AI workloads, and more.
- [Upstash Redis Search](/redis/search/introduction): full-text search built into Upstash Redis.
- [REST API](/redis/features/restapi): connect from edge and serverless runtimes where TCP is restricted.
diff --git a/redis/quickstarts/cloudflareworkers.mdx b/redis/quickstarts/cloudflareworkers.mdx
index ebf64f6e0..eb80e174d 100755
--- a/redis/quickstarts/cloudflareworkers.mdx
+++ b/redis/quickstarts/cloudflareworkers.mdx
@@ -1,5 +1,5 @@
---
-title: " Cloudflare Workers"
+title: "Cloudflare Workers"
---