> For a complete index of all SignalWire documentation pages, fetch https://signalwire.com/docs/llms.txt

# Datasphere

> Document storage and vector search.

[restclient]: /docs/server-sdks/reference/python/rest/client

[list]: /docs/server-sdks/reference/python/rest/datasphere/list

[create]: /docs/server-sdks/reference/python/rest/datasphere/create

[get]: /docs/server-sdks/reference/python/rest/datasphere/get

[update]: /docs/server-sdks/reference/python/rest/datasphere/update

[delete]: /docs/server-sdks/reference/python/rest/datasphere/delete

[search]: /docs/server-sdks/reference/python/rest/datasphere/search

[listchunks]: /docs/server-sdks/reference/python/rest/datasphere/list-chunks

[getchunk]: /docs/server-sdks/reference/python/rest/datasphere/get-chunk

[deletechunk]: /docs/server-sdks/reference/python/rest/datasphere/delete-chunk

Manage documents and perform semantic search via the Datasphere API. Documents
are stored with vector embeddings, enabling natural-language search across your
knowledge base. The `documents` sub-resource provides full CRUD plus search and
chunk-level operations.

Access via `client.datasphere.documents` on a [`RestClient`][restclient] instance.

```python {9}
from signalwire.rest import RestClient

client = RestClient(
    project="your-project-id",
    token="your-api-token",
    host="your-space.signalwire.com",
)

results = client.datasphere.documents.search(query_string="billing FAQ")
for chunk in results.get("chunks", []):
    print(chunk.get("text"), "score:", chunk.get("score"))
```

## **Methods**

List documents in the project.

Upload a new document.

Retrieve a specific document.

Update a document.

Delete a document and all its chunks.

Perform a semantic search across all documents.

List chunks belonging to a document.

Retrieve a specific chunk from a document.

Delete a specific chunk from a document.