# Redis® API Compatibility: supported commands, modules, and protocols

<Note>Upstash supports both native Redis TCP and HTTPS REST.</Note>

Upstash supports Redis client protocol up to version `8.4`. We are also gradually adding changes introduced in later versions.

<Card
  title="Browse the Redis command reference"
  icon="book-open"
  href="/redis/commands/overview"
  horizontal
>
  See every supported Redis command, organized by category.
</Card>

Alongside the open-source command set, Upstash adds command families of its own:

- [Search](/redis/commands/search/overview) indexes JSON, hash, string, and stream keys through `SEARCH.*` commands. These are separate from, and incompatible with, the `FT.*` commands of the RediSearch module.
- [Vector](/redis/commands/vector/overview) stores embeddings and answers nearest-neighbour queries through `VECTOR.*` commands.

Extension commands are reachable from any client through its generic command interface, and from the [REST API](/redis/features/restapi) like any other command.

SDK command references may cover a smaller set of typed helpers.
For example, see the [TypeScript SDK command reference](/redis/sdks/ts/commands/overview) for the commands documented in `@upstash/redis`.

Most unsupported items are on our roadmap. If you need a feature that we do not support, email [support@upstash.com](mailto:support@upstash.com) so we can let you know when we plan to support it.
