API Reference
Save

Save

POST

/v1/save

Save content to Hypersave memory. Supports text, URLs, and file content.

Request Body

ParameterTypeRequiredDescription
contentstringYes*Text content to save
urlstringYes*URL to fetch and save
titlestringNoCustom title for the memory
descriptionstringNoDescription or summary
tagsstring[]NoTags for categorization
metadataobjectNoCustom metadata object
spaceIdstringNoSpace/folder to save to
asyncbooleanNoProcess asynchronously (default: false)

*Either content or url must be provided.

When saving a URL, Hypersave automatically extracts the content, title, and metadata from the page.

Examples

Save Text Content

curl -X POST https://api.hypersave.io/v1/save \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "content": "The quarterly sales meeting revealed strong growth in the APAC region, with revenue up 45% year-over-year. The team discussed expanding operations to Singapore and Tokyo in Q2.",
    "title": "Q4 Sales Meeting Notes",
    "tags": ["meetings", "sales", "apac"]
  }'

Save URL Content

curl -X POST https://api.hypersave.io/v1/save \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com/article",
    "tags": ["research", "article"]
  }'

Save with Custom Metadata

curl -X POST https://api.hypersave.io/v1/save \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "content": "Project deadline moved to March 15th",
    "metadata": {
      "project": "website-redesign",
      "priority": "high",
      "assignee": "john@example.com"
    }
  }'

Response

Success Response

{
  "success": true,
  "message": "Content saved successfully",
  "documentId": "doc_abc123xyz789",
  "data": {
    "id": "doc_abc123xyz789",
    "title": "Q4 Sales Meeting Notes",
    "contentPreview": "The quarterly sales meeting revealed...",
    "tags": ["meetings", "sales", "apac"],
    "createdAt": "2024-01-15T10:30:00Z"
  }
}

Async Response

When async: true, you'll receive a pending ID to check status:

{
  "success": true,
  "message": "Content processing started",
  "pendingId": "pending_xyz789",
  "statusUrl": "/v1/save/status/pending_xyz789"
}

Check Async Status

GET

/v1/save/status/:pendingId
curl https://api.hypersave.io/v1/save/status/pending_xyz789 \
  -H "Authorization: Bearer YOUR_API_KEY"

Response:

{
  "success": true,
  "status": "completed",
  "documentId": "doc_abc123xyz789"
}

Status values: pending, processing, completed, failed

Error Responses

Missing Content

{
  "success": false,
  "error": "VALIDATION_ERROR",
  "message": "Either content or url must be provided"
}

Invalid URL

{
  "success": false,
  "error": "INVALID_URL",
  "message": "Unable to fetch content from the provided URL"
}

Content Too Large

{
  "success": false,
  "error": "CONTENT_TOO_LARGE",
  "message": "Content exceeds maximum size of 100KB"
}