DumpAPI Reference
POSTcurl
Schema
Response
/api/ingest
Ingest content into the vault. Accepts a URL, plain text, or image. Source type is auto-detected from the URL pattern.
Request
curl -X POST http://localhost:3106/api/ingest \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_TOKEN" \
-d '{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"}'Body
{
url?: string // URL to extract content from
text?: string // Plain text to store directly
image?: string // Image URL or base64
force?: boolean // Re-ingest even if URL exists (default: false)
}At least one of url, text, or image must be provided. The request fails validation if all three are missing.
Response
Success (200)
{
"item": {
"id": "uuid",
"url": "https://example.com/article",
"source_type": "article",
"title": "Article Title",
"content": "Extracted content...",
"category": "Tech",
"subcategories": ["AI/ML"],
"tags": ["machine-learning", "transformers"],
"summary": "A brief summary of the article.",
"created_at": "2026-02-23T12:00:00Z"
}
}Status Codes
| Code | Description |
|---|---|
| 200 | Item ingested successfully |
| 400 | Validation error (missing url/text/image) |
| 401 | Unauthorized (no valid session) |
| 409 | URL already exists (use force: true to override) |
| 500 | Server error during extraction or processing |
Duplicate Handling
URLs are normalized before duplicate check:
- Trailing slashes removed
- Common tracking parameters stripped (
utm_*,ref, etc.) - Protocol normalized
If the normalized URL already exists for the user, the API returns 409. Set force: true to re-ingest.