> ## Documentation Index
> Fetch the complete documentation index at: https://docs.memorylake.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Add Facts

> Add one or more facts to a project, stored exactly as written

```
POST /openapi/memorylake/api/v3/workspaces/{workspaceId}/projects/{projectId}/memories/facts
```

Adds one or more facts to a project. Each string you send is stored exactly as written, as a new fact of its own — nothing is extracted, merged, or rewritten. Use this when you already know a fact and want it in memory directly; otherwise facts are extracted automatically from conversations and documents.

The response returns each created fact's `id` and text, in the order you sent them. To read a fact's metadata and timestamps, call [Get Fact](/features/memorylake/api-reference/facts/get-fact). In the fact's [change history](/features/memorylake/api-reference/facts/get-fact-trace), a fact added this way starts with an `ADD` change whose `source_kind` is `MANUAL`.

<Note>
  **Permission required:** `project:mem_add`
</Note>

### Path Parameters

<ParamField path="workspaceId" type="string" required>
  Workspace ID
</ParamField>

<ParamField path="projectId" type="string" required>
  Project ID
</ParamField>

### Request Body

<ParamField body="facts" type="string[]" required>
  Fact texts to add, one fact per entry. The list must not be empty and no entry may be blank; otherwise the request is rejected with `400`.
</ParamField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST 'https://app.memorylake.ai/openapi/memorylake/api/v3/workspaces/ws-fe314186ccd18cde04d6af48a5afd79f/projects/proj_a1b2c3d4e5f6/memories/facts' \
    -H 'Authorization: Bearer sk_xxxxxx' \
    -H 'Content-Type: application/json' \
    -d '{
      "facts": [
        "The Cape Nordling lighthouse was first lit in 1893.",
        "The Cape Nordling lighthouse is 41 metres tall."
      ]
    }'
  ```
</RequestExample>

### Response

<ResponseField name="data" type="object">
  <Expandable title="Created facts">
    <ResponseField name="facts" type="array">
      The created facts, in the order you sent them

      <Expandable title="Fact">
        <ResponseField name="id" type="string">Unique fact identifier</ResponseField>
        <ResponseField name="fact" type="string">The fact text, exactly as you sent it</ResponseField>
      </Expandable>
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseExample>
  ```json Success (200) theme={null}
  {
    "success": true,
    "data": {
      "facts": [
        {
          "id": "fact-45c6986397ee45d6a915ae51c79516bb",
          "fact": "The Cape Nordling lighthouse was first lit in 1893."
        },
        {
          "id": "fact-6773ba1dc34d4efc96e715efd8935026",
          "fact": "The Cape Nordling lighthouse is 41 metres tall."
        }
      ]
    }
  }
  ```
</ResponseExample>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.