# SEARCH.DROP

> Drop a search index without deleting its keys.

Use `SEARCH.DROP` to remove a search index. The underlying Redis keys are not deleted.

Only the index and its internal structures go away, so the documents themselves stay exactly as they are and can be indexed again later by creating a new index over the same prefixes. Queries against the dropped name fail from then on.

See [Dropping an Index](/redis/search/index-management#dropping-an-index) for the feature guide.

`SEARCH.DROP` does not resolve aliases: `<name>` is always treated as the literal index name. Aliases that point to a dropped index are not removed automatically.

## Syntax

```redis
SEARCH.DROP <name>
```

## Response

Returns `1` if the index was dropped or `0` if the index was not found.

## Examples

<AccordionGroup>

<Accordion title="Redis CLI" icon="terminal">

```bash
SEARCH.DROP products
```

</Accordion>

<Accordion title="@upstash/redis" icon="node-js" iconType="brands">

```ts
import { Redis } from "@upstash/redis";

const redis = Redis.fromEnv();
const products = redis.search.index({ name: "products" });
const result = await products.drop();
```

</Accordion>

<Accordion title="upstash_redis" icon="python" iconType="brands">

```python
from upstash_redis import Redis

redis = Redis.from_env()
products = redis.search.index(name="products")
result = products.drop()
```

</Accordion>

<Accordion title="ioredis" icon="node-js" iconType="brands">

```ts
import IORedis from "ioredis";
import { createSearch } from "@upstash/search-ioredis";

const redis = new IORedis(process.env.REDIS_URL!);
const search = createSearch(redis);
const products = search.index({ name: "products" });
const result = await products.drop();
```

</Accordion>

<Accordion title="node-redis" icon="node-js" iconType="brands">

```ts
import { createClient } from "redis";
import { createSearch } from "@upstash/search-redis";

const client = await createClient({ url: process.env.REDIS_URL })
  .on("error", console.error)
  .connect();
const search = createSearch(client);
const products = search.index({ name: "products" });
const result = await products.drop();
```

</Accordion>

<Accordion title="curl">

```bash
curl -X POST https://YOUR_ENDPOINT.upstash.io \
  -H "Authorization: Bearer $UPSTASH_REDIS_REST_TOKEN" \
  -d '["SEARCH.DROP", "products"]'
```

</Accordion>

</AccordionGroup>
