# Get document

> Get a single document from a knowledge base.

`GET https://api.zavu.dev/v1/senders/{senderId}/agent/knowledge-bases/{kbId}/documents/{docId}`

Get a single document from a knowledge base.

## Parameters

- `senderId` (path, string, required)
- `kbId` (path, string, required)
- `docId` (path, string, required)

## Responses

### 200

Document details.

- `document` (object, required)
  - `id` (string, required)
  - `knowledgeBaseId` (string, required)
  - `title` (string, required)
  - `contentLength` (integer, required): Length of the document content in characters.
  - `chunkCount` (integer, required): Number of chunks created from this document.
  - `isProcessed` (boolean, required): Whether the document has been processed for RAG.
  - `createdAt` (string<date-time>, required)
  - `updatedAt` (string<date-time>, required)

### 401

Unauthorized.

- `code` (string, required)
- `message` (string, required)
- `details` (object)

### 404

Document not found.

- `code` (string, required)
- `message` (string, required)
- `details` (object)

## Example

```bash
curl -X GET "https://api.zavu.dev/v1/senders/sender_abc123/agent/knowledge-bases/kb_abc123/documents/doc_abc123" \
  -H "Authorization: Bearer $ZAVUDEV_API_KEY"
```

```typescript
import Zavudev from "@zavudev/sdk";

const zavu = new Zavudev({ apiKey: process.env.ZAVUDEV_API_KEY });

const result = await zavu.senders.agent.knowledgeBases.documents.retrieveDocument("doc_abc123", {
  senderId: "sender_abc123",
  kbId: "kb_abc123",
});

console.log(result);
```
