Add a memory

⚠️
Preview — this feature is being built; the design below is the spec.
POST https://app.syntic.ai/v1/memory_stores/{store_id}/memories

Write a memory yourself, for example to seed a store with what you already know about a customer. Memories you add carry source.kind: "api", so they are always distinguishable from what an agent wrote.

For how this fits into a full workflow, see Memory stores.

Headers

HeaderRequiredValue
AuthorizationYesBearer <key>: a private inference key (sk_live_...). See Authentication.
syntic-betaYes, while in previewagents-2026-11-01. Without it the call fails with 400 beta_required. See Versioning.
Content-TypeYesapplication/json

Path parameters

ParameterTypeDescription
store_idstringThe memory store id, starting with mem_.

Body parameters

ParameterTypeRequiredNotes
scopestringYesSuch as customer:4821, or global.
contentstringYesPlain text up to 4,000 characters.
tagsarray of stringsNoUp to 10.
expires_atstringNoRFC 3339 time; overrides the store default.

Response

201 Created, Content-Type: application/json

{
  "id": "mmr_01JC8D1F3H5K7M9P1R3T",
  "store_id": "mem_01JC1A3C5E7G9J1L3N5Q",
  "scope": "customer:4821",
  "content": "Account manager is Priya; escalate billing issues to her.",
  "tags": [
    "contact"
  ],
  "source": {
    "kind": "api"
  },
  "created_at": "2026-11-05T10:00:15Z",
  "updated_at": "2026-11-05T10:00:15Z",
  "expires_at": "2027-11-05T10:00:15Z"
}

Examples

curl -sS https://app.syntic.ai/v1/memory_stores/mem_01JC1A3C5E7G9J1L3N5Q/memories \
  -H "Authorization: Bearer $SYNTIC_API_KEY" \
  -H "syntic-beta: agents-2026-11-01" \
  -H "Content-Type: application/json" \
  -d '{
      "scope": "customer:4821",
      "content": "Account manager is Priya; escalate billing issues to her.",
      "tags": [
        "contact"
      ]
    }'

Errors

Errors use the error envelope and carry a request_id. Codes specific to this operation:

StatustypecodeWhen
400invalid_request_errorbeta_requiredThe syntic-beta header is missing.
400invalid_request_errorscope_requiredscope is missing.
400invalid_request_errorcontent_too_longcontent is over 4,000 characters.
404not_found_errormemory_store_not_foundNo store with that id in this workspace.
401authentication_errorinvalid_api_keyThe key is missing, unknown, revoked or expired.
429rate_limit_errorrate_limitedToo many requests; wait for Retry-After. See Rate-limit headers.
Was this page helpful?