Skip to content
Docs
Esc
↑↓navigate↵open⌘Jpreview

Update or archive a team memory

Changes a memory’s title, body, category, or pin. Send archived: true to retire a wrong or stale memory, and archived: false to restore it; a restore meets the same title and 200-memory checks as a new save. A memory’s Space cannot change.

PATCH/v1/teams/{teamId}/memories/{memoryId}
Authorization
AuthorizationBearer token · headerrequired

Better Auth session, OAuth access token, OAuth client-credentials token, or sfm_ Space machine credential.

or
AuthorizationOAuth2 access token · headerrequired

OAuth 2.0 with explicit Spacefast capability scopes. Use the authorization-code flow for people and client credentials for machines.

Scopes:spaces:write
Path parameters
teamIdstringrequired
min length 1
memoryIdstringrequired
min length 1
Request body
requiredapplication/json
titlestring

Short title. Unique among the team's active memories in the same scope, ignoring case.

min length 3 · max length 80
bodystring

One fact, decision, or preference in one to three sentences, with the reason.

min length 1 · max length 1000
categorystring

What kind of knowledge the memory holds.

Allowed:brandvoiceaudiencedesigndecisionconventionpreferencefact
pinnedboolean
archivedboolean

true archives a wrong or stale memory. false restores it.

Responses
200

Response for status 200

$schemastring<uri>

Canonical JSON Schema URL for this response body. The server also sends it in the Link: rel="describedby" response header.

dataobjectrequired
Show properties
idstringrequired
matches ^(mem_)[A-Za-z0-9]+$
teamIdstringrequired

Team the memory belongs to.

spaceIdstring | nullrequired

The Space the memory is about, or null for the whole team.

Show properties
Any of:
string
string
null
null
categorystringrequired

What kind of knowledge the memory holds.

Allowed:brandvoiceaudiencedesigndecisionconventionpreferencefact
titlestringrequired

Short title. Unique among the team's active memories in the same scope, ignoring case.

min length 3 · max length 80
bodystringrequired

One fact, decision, or preference in one to three sentences, with the reason.

min length 1 · max length 1000
pinnedbooleanrequired

Pinned memories come first in every agent-context read.

archivedAtstring<date-time> | nullrequired

When the memory was archived, or null while it is active.

Show properties
Any of:
string<date-time>
string<date-time>
null
null
createdByobjectrequired

Who wrote the memory.

Show properties
typestringrequired

person: a signed-in member. agent: an OAuth agent connection.

Allowed:personagentapi_keysystem
userIdstring | nullrequired

The person, or the person who connected the agent.

connectionIdstring | nullrequired

The agent connection (grant) that wrote it, for agent writes.

namestring | nullrequired

Display name: the person, agent, or API key.

updatedByobjectrequired

Who wrote the memory.

Show properties
typestringrequired

person: a signed-in member. agent: an OAuth agent connection.

Allowed:personagentapi_keysystem
userIdstring | nullrequired

The person, or the person who connected the agent.

connectionIdstring | nullrequired

The agent connection (grant) that wrote it, for agent writes.

namestring | nullrequired

Display name: the person, agent, or API key.

createdAtstring<date-time>required
matches ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$
updatedAtstring<date-time>required
matches ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d:[0-5]\d(?:\.\d+)?(?:Z))$
default

Problem details (RFC 9457). Any 4xx/5xx response is one application/problem+json document.

$schemastring<uri>

Canonical JSON Schema URL for this response body. The server also sends it in the Link: rel="describedby" response header.

typestringrequired

Problem type URI resolving to the error docs page. The server derives it mechanically from code against the docs origin.

titlestringrequired

Short human-readable summary of the problem type. The server derives it mechanically from code.

statusintegerrequired

HTTP status code of this response, repeated in the body.

min -9007199254740991 · max 9007199254740991
detailstringrequired

Human-readable failure explanation for this occurrence.

codestringrequired

Stable snake_case error code naming the failed public contract.

pointerstring

RFC 6901 JSON Pointer into the failing request field, for example "/files/37/path", on validation failures.

detailsobject

Machine-readable context for the error code.

fixstring

One sentence on what to do about this error code, the same text as the type page. Read it before retrying.

suggestionsstring[]

Actionable recovery steps safe to show in dashboards, SDKs, and CLI output.

nextstring[]

Copy-pasteable commands or API requests an agent can run next.

requestIdstringrequired

The request id to quote when contacting support.

Try it
Server
Authorization
Parameters
Bodyapplication/json
Request
curl -X PATCH 'https://api.spacefast.com/v1/teams/string/memories/string' \
  -H 'Authorization: Bearer YOUR_TOKEN' \
  -H 'Accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "title": "string",
  "body": "string",
  "category": "brand",
  "pinned": true,
  "archived": true
}'
Response
{
  "$schema": "http://example.com",
  "data": {
    "id": "string",
    "teamId": "string",
    "spaceId": "string",
    "category": "brand",
    "title": "string",
    "body": "string",
    "pinned": true,
    "archivedAt": "2019-08-24T14:15:22Z",
    "createdBy": {
      "type": "person",
      "userId": "string",
      "connectionId": "string",
      "name": "string"
    },
    "updatedBy": {
      "type": "person",
      "userId": "string",
      "connectionId": "string",
      "name": "string"
    },
    "createdAt": "2019-08-24T14:15:22Z",
    "updatedAt": "2019-08-24T14:15:22Z"
  }
}

Was this page helpful?