Delete apps/docs/search/response-schema.mdx

Co-Authored-By: mintlify[bot] <109931778+mintlify[bot]@users.noreply.github.com>
This commit is contained in:
mintlify[bot] 2025-12-19 00:31:45 +00:00 committed by GitHub
parent 3af34c2cee
commit f21bf0ba61
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -1,358 +0,0 @@
---
title: Response schema
description: Understanding the search API response structure
---
The search API returns different response structures depending on the search mode and result type.
## Response structure
```json
{
"results": [...],
"timing": 245,
"total": 10
}
```
### Top-level fields
<ResponseField name="results" type="array">
Array of search results. Can contain memory results, chunk results, or both (in hybrid mode).
</ResponseField>
<ResponseField name="timing" type="number">
Search execution time in milliseconds.
</ResponseField>
<ResponseField name="total" type="number">
Total number of results returned.
</ResponseField>
## Result types
In hybrid search mode, results can be either memory results or chunk results. Each type has a different structure.
### Memory result
Memory results contain the `memory` field and represent structured memory entries.
```json
{
"id": "mem_abc123",
"memory": "John prefers machine learning over traditional programming",
"metadata": {
"category": "preferences",
"confidence": 0.95
},
"updatedAt": "2024-01-15T10:30:00Z",
"version": 2,
"rootMemoryId": "mem_root456",
"similarity": 0.92,
"context": {
"parents": [...],
"children": [...]
},
"documents": [...],
"chunks": [...]
}
```
<ResponseField name="id" type="string">
Unique identifier for the memory entry.
</ResponseField>
<ResponseField name="memory" type="string">
The memory content. **Only present in memory results.**
</ResponseField>
<ResponseField name="metadata" type="object | null">
Custom metadata associated with the memory.
</ResponseField>
<ResponseField name="updatedAt" type="string">
ISO 8601 timestamp of when the memory was last updated.
</ResponseField>
<ResponseField name="version" type="number">
Version number of the memory (increments with updates).
</ResponseField>
<ResponseField name="rootMemoryId" type="string | null">
ID of the root memory if this memory is part of a memory chain.
</ResponseField>
<ResponseField name="similarity" type="number">
Similarity score between 0 and 1 (higher is more similar).
</ResponseField>
<ResponseField name="context" type="object">
Related memories (parents and children) if `include.relatedMemories` is true.
```json
{
"parents": [
{
"id": "mem_parent123",
"memory": "Parent memory content",
"relation": "updates"
}
],
"children": [
{
"id": "mem_child456",
"memory": "Child memory content",
"relation": "extends"
}
]
}
```
</ResponseField>
<ResponseField name="documents" type="array">
Associated documents if `include.documents` is true. See [Document schema](#document-schema).
</ResponseField>
<ResponseField name="chunks" type="array">
Top 5 relevant document chunks if `include.chunks` is true. See [Chunk schema](#chunk-schema).
</ResponseField>
### Chunk result
Chunk results contain the `chunk` field and represent raw document content. **Only returned in hybrid search mode.**
```json
{
"id": "chunk_xyz789",
"chunk": "This is a chunk of content from a document about machine learning preferences...",
"metadata": {
"source": "document_123.pdf",
"page": 5
},
"updatedAt": "2024-01-15T10:30:00Z",
"similarity": 0.88,
"version": 1,
"context": {
"parents": [],
"children": []
},
"documents": [
{
"id": "doc_123",
"title": "Machine Learning Guide",
"type": "pdf",
"createdAt": "2024-01-10T08:00:00Z",
"updatedAt": "2024-01-15T10:30:00Z"
}
],
"chunks": []
}
```
<ResponseField name="id" type="string">
Unique identifier for the chunk.
</ResponseField>
<ResponseField name="chunk" type="string">
The chunk content. **Only present in chunk results.**
</ResponseField>
<ResponseField name="metadata" type="object | null">
Metadata from the parent document.
</ResponseField>
<ResponseField name="updatedAt" type="string">
ISO 8601 timestamp of when the document was last updated.
</ResponseField>
<ResponseField name="similarity" type="number">
Similarity score between 0 and 1 (higher is more similar).
</ResponseField>
<ResponseField name="version" type="number">
Always 1 for chunk results.
</ResponseField>
<ResponseField name="context" type="object">
Always empty for chunk results (chunks don't have parent/child relationships).
</ResponseField>
<ResponseField name="documents" type="array">
Array containing the parent document. Always includes exactly one document.
</ResponseField>
<ResponseField name="chunks" type="array">
Always empty for chunk results.
</ResponseField>
## Nested schemas
### Document schema
```json
{
"id": "doc_123",
"title": "Machine Learning Guide",
"type": "pdf",
"metadata": {
"author": "John Doe",
"tags": ["ml", "ai"]
},
"summary": "A comprehensive guide to machine learning...",
"createdAt": "2024-01-10T08:00:00Z",
"updatedAt": "2024-01-15T10:30:00Z"
}
```
<ResponseField name="id" type="string">
Document identifier (custom ID if provided, otherwise internal ID).
</ResponseField>
<ResponseField name="title" type="string">
Document title (if `include.documents` is true).
</ResponseField>
<ResponseField name="type" type="string">
Document type (e.g., "pdf", "txt", "html").
</ResponseField>
<ResponseField name="metadata" type="object | null">
Document metadata (if `include.documents` is true).
</ResponseField>
<ResponseField name="summary" type="string | null">
Document summary (if `include.summaries` is true).
</ResponseField>
<ResponseField name="createdAt" type="string">
ISO 8601 timestamp of document creation.
</ResponseField>
<ResponseField name="updatedAt" type="string">
ISO 8601 timestamp of last document update.
</ResponseField>
### Chunk schema
```json
{
"content": "This is a chunk of content from the document...",
"score": 0.89,
"position": 3,
"documentId": "doc_123"
}
```
<ResponseField name="content" type="string">
The chunk content.
</ResponseField>
<ResponseField name="score" type="number">
Similarity score for this chunk (0-1).
</ResponseField>
<ResponseField name="position" type="number">
Position of the chunk within the document (0-indexed).
</ResponseField>
<ResponseField name="documentId" type="string">
ID of the parent document.
</ResponseField>
## Distinguishing result types
To determine if a result is a memory or chunk:
```javascript
if (result.memory) {
// This is a memory result
console.log("Memory:", result.memory);
} else if (result.chunk) {
// This is a chunk result
console.log("Chunk:", result.chunk);
}
```
## Example responses
### Memories mode response
```json
{
"results": [
{
"id": "mem_abc123",
"memory": "John prefers machine learning over traditional programming",
"metadata": {
"category": "preferences"
},
"updatedAt": "2024-01-15T10:30:00Z",
"version": 2,
"rootMemoryId": null,
"similarity": 0.92
}
],
"timing": 145,
"total": 1
}
```
### Hybrid mode response
```json
{
"results": [
{
"id": "mem_abc123",
"memory": "John prefers machine learning over traditional programming",
"metadata": {
"category": "preferences"
},
"updatedAt": "2024-01-15T10:30:00Z",
"version": 2,
"rootMemoryId": null,
"similarity": 0.92,
"context": {
"parents": [],
"children": []
},
"documents": [],
"chunks": []
},
{
"id": "chunk_xyz789",
"chunk": "Machine learning is a subset of artificial intelligence...",
"metadata": {
"source": "ml_guide.pdf"
},
"updatedAt": "2024-01-14T09:00:00Z",
"similarity": 0.88,
"version": 1,
"context": {
"parents": [],
"children": []
},
"documents": [
{
"id": "doc_123",
"title": "Machine Learning Guide",
"type": "pdf",
"createdAt": "2024-01-10T08:00:00Z",
"updatedAt": "2024-01-14T09:00:00Z"
}
],
"chunks": []
}
],
"timing": 245,
"total": 2
}
```
## Notes
- In hybrid mode, results are sorted by similarity score regardless of type
- Chunk results that are already associated with memory results are automatically deduplicated
- The `context` field is always empty for chunk results
- The `documents` array for chunk results always contains exactly one document (the parent)
- Memory results can have multiple associated documents if the memory references multiple sources