---
title: "Update a memory"
method: POST
path: "/memories/update/{source}/{resource_id}"
tags: ["Memories"]
---

# Update a memory

`POST /memories/update/{source}/{resource_id}`

Updates an existing document in the index. You can update the text, collection,
title, and metadata. The document must already exist or a 404 will be returned.
This works for documents from any source (vault, slack, gmail, etc.).

To remove a collection, set it to null explicitly.

## Path parameters

- `source` 'reddit' | 'notion' | 'slack' | 'google_calendar' | 'google_mail' | 'box' | 'dropbox' | 'github' | 'google_drive' | 'vault' | 'web_crawler' | 'trace' | 'microsoft_teams' | 'gmail_actions' | 'granola' | 'fathom' | 'fireflies' | 'linear' | 'hubspot' | 'salesforce' | 'coda' | 'lightfield' | 'gong', required
- `resource_id` string, required

## Request body

- UpdateRequest
  - `text` union — Full text of the document. If provided, the document will be re-indexed.
    - string
    - unknown
  - `collection` union — The collection to move the document to — deprecated, set the collection using metadata instead.
    - string
    - unknown
  - `title` union — Title of the document.
    - string
    - unknown
  - `date` union — Date of the document for ranking and filtering.
    - string, date-time
    - unknown
  - `metadata` union — Custom metadata for filtering. Keys must be alphanumeric with underscores, max 64 chars. Values must be string, number, boolean, or null. Will be merged with existing metadata.
    - object
    - unknown

## Response `200`

Successful Response

- DocumentStatusResponse
  - `source` 'reddit' | 'notion' | 'slack' | 'google_calendar' | 'google_mail' | 'box' | 'dropbox' | 'github' | 'google_drive' | 'vault' | 'web_crawler' | 'trace' | 'microsoft_teams' | 'gmail_actions' | 'granola' | 'fathom' | 'fireflies' | 'linear' | 'hubspot' | 'salesforce' | 'coda' | 'lightfield' | 'gong', required
  - `resource_id` string, required
  - `status` 'pending' | 'processing' | 'completed' | 'failed' | 'pending_review' | 'skipped', required

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/hyperspell/apis/hyperspell-api.md) · [All operations](https://skmtc.net/hyperspell/apis/hyperspell-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/hyperspell/hyperspell-api/revisions/5721acd588e6/schema)
