> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lancedb.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SDKs and REST API Reference

> SDK and REST API reference for LanceDB Enterprise and OSS.

For detailed information of the available functions and methods in your preferred language's SDKs,
refer to the API documentation linked below.

If you're looking for a REST API reference, visit the [REST API](/api-reference/rest) page.

If you're looking for conceptual and practical namespace guidance before diving into method signatures, see
[Namespaces and Catalog Model](/namespaces) and [Using Namespaces in SDKs](/namespaces/usage).

## Supported SDKs

Python, Typescript and Rust SDKs are officially supported by LanceDB. You can use these SDKs to interact with both LanceDB OSS and Enterprise deployments.

| Reference                                                                         | Description                                                        |
| :-------------------------------------------------------------------------------- | ------------------------------------------------------------------ |
| <Icon icon="python" /> [Python](https://lancedb.github.io/lancedb/python/python/) | Full-featured Python client with pandas & numpy integration        |
| <Icon icon="square-js" /> [Typescript](https://lancedb.github.io/lancedb/js/)     | A TypeScript wrapper around the Rust library, built with `napi-rs` |
| <Icon icon="rust" /> [Rust](https://docs.rs/lancedb/latest/lancedb/index.html)    | Native Rust library with persistent-storage and high performance   |

## REST API SDKs

<Badge color="red">Enterprise</Badge>

REST API-based SDKs provide a convenient way to interact with LanceDB Enterprise deployments using the Lance REST Namespace API.

| Reference                                                                 | Description                     |
| :------------------------------------------------------------------------ | ------------------------------- |
| <Icon icon="java" /> [Java](https://lancedb.github.io/lancedb/java/java/) | REST API Enterprise SDK in Java |

## Community-driven SDKs

In addition to the officially supported SDKs, the LanceDB community may contribute SDKs in other languages.
These SDKs may not have the same level of support or feature parity as the official ones supported by LanceDB, but they can be an option
for users working in languages other than those listed above.

| Reference                                                                                 | Description                                        |
| :---------------------------------------------------------------------------------------- | -------------------------------------------------- |
| <Icon icon="golang" /> [Go](https://pkg.go.dev/github.com/lancedb/lancedb-go/pkg/lancedb) | Community-contributed Go SDK for LanceDB           |
| <Icon icon="gem" /> [Ruby](https://github.com/scientist-labs/lancelot)                    | Community-contributed Ruby bindings for LanceDB    |
| <Icon icon="swift" /> [Swift](https://github.com/RyanLisse/LanceDbSwiftKit)               | Community-contributed Swift SDK for LanceDB        |
| <Icon icon="R" /> [R](https://github.com/CathalByrneGit/lancedb)                          | Community-contributed R package for LanceDB        |
| <Icon icon="flutter" /> [Flutter](https://github.com/Alexcn/flutter_lancedb)              | Community-contributed Flutter bindings for LanceDB |
