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

# Uploading Documents

> Learn how to upload and manage documents in your knowledge base

## Document Upload Methods

### File Upload

Upload documents directly to your knowledge base:

```bash cURL theme={null}
curl --request POST \
  --url https://api.threetone.in/v1/voiceai/knowledge-base/documents \
  --header 'x-api-key: YOUR_API_KEY' \
  --header 'Content-Type: multipart/form-data' \
  --form 'file=@document.pdf' \
  --form 'title=Product Documentation' \
  --form 'category=support'
```

### URL Content

Add web content by URL:

```bash cURL theme={null}
curl --request POST \
  --url https://api.threetone.in/v1/voiceai/knowledge-base/documents/url \
  --header 'x-api-key: YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "url": "https://example.com/help-article",
    "title": "Help Article",
    "category": "support"
  }'
```

### Text Content

Add structured text content:

```bash cURL theme={null}
curl --request POST \
  --url https://api.threetone.in/v1/voiceai/knowledge-base/documents/text \
  --header 'x-api-key: YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "content": "This is important information about our product features...",
    "title": "Product Features",
    "category": "product_info"
  }'
```

## Supported File Formats

### Document Types

* **PDF**: Portable Document Format files
* **DOC/DOCX**: Microsoft Word documents
* **TXT**: Plain text files
* **RTF**: Rich Text Format files
* **MD**: Markdown files

### Content Processing

All uploaded content is automatically:

* Extracted and parsed for text content
* Indexed for semantic search
* Chunked for optimal retrieval
* Validated for quality and completeness

## Document Management

### Listing Documents

Retrieve all documents in your knowledge base:

```bash cURL theme={null}
curl --request GET \
  --url https://api.threetone.in/v1/voiceai/knowledge-base/documents \
  --header 'x-api-key: YOUR_API_KEY'
```

### Document Details

Get detailed information about a specific document:

```bash cURL theme={null}
curl --request GET \
  --url https://api.threetone.in/v1/voiceai/knowledge-base/documents/{document_id} \
  --header 'x-api-key: YOUR_API_KEY'
```

### Updating Documents

Update document metadata or content:

```bash cURL theme={null}
curl --request PUT \
  --url https://api.threetone.in/v1/voiceai/knowledge-base/documents/{document_id} \
  --header 'x-api-key: YOUR_API_KEY' \
  --header 'Content-Type: application/json' \
  --data '{
    "title": "Updated Title",
    "category": "new_category"
  }'
```

## Organization and Categorization

### Categories

Organize documents using categories:

* **Product Information**: Product specs, features, pricing
* **Support**: FAQs, troubleshooting, how-to guides
* **Policies**: Terms of service, privacy policy, company policies
* **Training**: Internal training materials, procedures

### Metadata

Add metadata to improve document searchability:

```json theme={null}
{
  "title": "Customer Onboarding Guide",
  "category": "support",
  "tags": ["onboarding", "new_customers", "setup"],
  "priority": "high",
  "last_updated": "2024-01-15"
}
```

## Content Quality Guidelines

### Best Practices

* Use clear, descriptive titles
* Organize content with proper headings
* Include relevant keywords naturally
* Keep information current and accurate
* Use consistent formatting and style

### Content Structure

* Start with clear introductions
* Use bullet points and lists for clarity
* Include examples and use cases
* Provide step-by-step instructions where applicable
* End with relevant next steps or related information

## Processing and Indexing

### Automatic Processing

When you upload documents, ThreeTone automatically:

1. Extracts text content from files
2. Chunks content into searchable segments
3. Creates semantic embeddings for search
4. Indexes content for fast retrieval
5. Validates content quality and completeness

### Processing Status

Monitor document processing status:

```bash cURL theme={null}
curl --request GET \
  --url https://api.threetone.in/v1/voiceai/knowledge-base/documents/{document_id}/status \
  --header 'x-api-key: YOUR_API_KEY'
```

## Next Steps

* [Managing Content](/guides/knowledge-base/managing-content)
* [Best Practices](/guides/knowledge-base/best-practices)
* [Creating Voice Agents](/guides/voice-agents/creating-agents)
