mirror of
https://github.com/supermemoryai/supermemory.git
synced 2026-11-05 07:39:44 +00:00
docs: use the console's Read and write label and wait for dreamingStatus before reading memories
Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com>
This commit is contained in:
parent
4d06002697
commit
888122dc64
5 changed files with 12 additions and 9 deletions
|
|
@ -48,7 +48,7 @@ Same `containerTag` scopes ingest, search, and profiles — one engine, multiple
|
|||
## Suggested order
|
||||
|
||||
1. **Ingest** — `POST /v3/documents` (SDK: `client.add`)
|
||||
2. **Documents** — `GET /v3/documents/{id}` until `status: "done"`
|
||||
2. **Documents** — `GET /v3/documents/{id}` until `status: "done"` for searchable content, and `dreamingStatus: "done"` before you read memories or profiles
|
||||
3. **Search** — `POST /v4/search`
|
||||
4. **Profiles** — `POST /v4/profile`
|
||||
|
||||
|
|
|
|||
|
|
@ -272,8 +272,8 @@ await fetch(`https://api.supermemory.ai/ns/${userId}/document/file`, {
|
|||
body: formData,
|
||||
})
|
||||
|
||||
// Processing is async - check status before assuming searchable
|
||||
// client.documents.get(userId, documentId) → wait for system.status === "done"
|
||||
// Processing is async: client.documents.get(userId, documentId)
|
||||
// wait for system.status === "done" for chunks (searchable content), and system.dreamingStatus === "done" for memories
|
||||
```
|
||||
|
||||
## STEP 8: SEARCH MODES
|
||||
|
|
|
|||
|
|
@ -179,7 +179,7 @@ curl -X POST "https://api.supermemory.ai/ns/user_4f8a/document" \
|
|||
|
||||
## 3. Wait until both are `done`
|
||||
|
||||
Poll document status. With **`dreaming: "instant"`**, once `system.status` is `done` the document is indexed **and** memories for that document should be available for search and profiles (`queued → extracting → … → done`).
|
||||
Poll each document. `system.status` reaches `done` once the content is indexed and searchable (`queued → extracting → … → done`). Memories are ready when `system.dreamingStatus` is also `done`; it reads `dreaming` while they are generated. **`dreaming: "instant"`** starts memory generation right away instead of waiting for the next batch.
|
||||
|
||||
> Note that the preferred way is to have `dreaming: dynamic`. supermemory charges one extra operation for instant dreaming. Instant is good for one off tests, setup, debugging and benchmarking.
|
||||
|
||||
|
|
@ -188,7 +188,8 @@ Poll document status. With **`dreaming: "instant"`**, once `system.status` is `d
|
|||
async function waitUntilDone(id: string) {
|
||||
for (;;) {
|
||||
const d = await supermemory.documents.get(user, id);
|
||||
if (d.system.status === "done" || d.system.status === "failed") return d;
|
||||
if (d.system.status === "failed") return d;
|
||||
if (d.system.status === "done" && d.system.dreamingStatus === "done") return d;
|
||||
await new Promise((r) => setTimeout(r, 1500));
|
||||
}
|
||||
}
|
||||
|
|
@ -204,7 +205,9 @@ import time
|
|||
def wait_until_done(doc_id: str):
|
||||
while True:
|
||||
d = client.documents.get(user, doc_id)
|
||||
if d.system.status in ("done", "failed"):
|
||||
if d.system.status == "failed":
|
||||
return d
|
||||
if d.system.status == "done" and d.system.dreaming_status == "done":
|
||||
return d
|
||||
time.sleep(1.5)
|
||||
|
||||
|
|
@ -217,7 +220,7 @@ print("ready to search")
|
|||
# replace DOC_ID with each document id from the add responses
|
||||
curl "https://api.supermemory.ai/ns/user_4f8a/document/DOC_ID" \
|
||||
-H "Authorization: Bearer $SUPERMEMORY_API_KEY"
|
||||
# repeat until "system": { "status": "done" }
|
||||
# repeat until "system": { "status": "done", "dreamingStatus": "done" }
|
||||
```
|
||||
</CodeGroup>
|
||||
|
||||
|
|
|
|||
|
|
@ -170,7 +170,7 @@ ChatGPT opens the **Add Supermemory MCP to ChatGPT** dialog. Select **Sign in wi
|
|||
|
||||
On the Supermemory authorization page:
|
||||
|
||||
- Select **Read + Write** to let ChatGPT search and save Supermemory context. Select **Read only** if you only want search access.
|
||||
- Select **Read and write** to let ChatGPT search and save Supermemory context. Select **Read only** if you only want search access.
|
||||
- Select **Full access** to use every available space, or **Scoped** to choose specific spaces.
|
||||
- Choose how long the connection should remain active.
|
||||
- Select **Approve**.
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ Supermemory appears under your connectors. Click **Connect**.
|
|||
|
||||
## Step 4: Authorize
|
||||
|
||||
You’ll be redirected to Supermemory to sign in and choose access scopes (for example **Read + Write** or **Full access**). Select the scopes you want, then click **Authorize**.
|
||||
You’ll be redirected to Supermemory to sign in and choose the permission (**Read and write** or **Read only**) and the scope (**All memories** or **Only some tags**). Select the access you want, then click **Authorize**.
|
||||
|
||||

|
||||
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue