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

# Concepts

# Core Concepts

Essential terminology for working with Anona Memory.

## Memory Space

**Isolation boundary per tenant/application.**

A Memory Space is where memories for a specific app or context live. Multiple spaces can exist within your organization; each is fully isolated from the others.

Spaces are created with a `name` - the server assigns the permanent `space_id` you use in every other call:

```bash theme={null}
POST /v1/spaces/
{"name": "customer-support-bot"}

# -> {"space_id": "spc_a1b2c3d4", "name": "customer-support-bot", ...}
```

**API reference:** [Spaces API](/api-reference/spaces)

***

## Retain

**Store a memory.** `POST /v1/memories`

```python theme={null}
client.add_memory(
    space_id="spc_a1b2c3d4",
    content="Alice works at Google and specializes in distributed systems"
)
```

The content is embedded and indexed for semantic search automatically.

**API reference:** [Memories API](/api-reference/memories)

***

## Recall

**Query memories semantically.** `POST /v1/search`

```python theme={null}
results = client.search(
    space_id="spc_a1b2c3d4",
    query="What is Alice's expertise?"
)
```

Recall finds memories by meaning, not keyword overlap.

**API reference:** [Search API](/api-reference/search)

***

## Reflect (Insights)

**Synthesize insights across accumulated memories.** `POST /v1/insights`

```python theme={null}
insights = client.insights(
    space_id="spc_a1b2c3d4",
    query="What have we learned about Alice's career?"
)
```

Unlike Recall (which returns raw matching memories), Reflect runs an agentic pass over the space and returns a synthesized answer.

**API reference:** [Insights API](/api-reference/insights)

***

## API Key

Every request needs `Authorization: Bearer <key>`. Keys come in two flavors:

* `anona_live_...` - production
* `anona_test_...` - testing

Created and revoked from the dashboard (**Settings** → **API Keys**). The full key is shown once at creation; afterward only the prefix is visible.

***

## Tenant Isolation

Each organization's memories live in their own database schema - no shared tables. A `space_id` from one organization is meaningless (and inaccessible) to another, enforced both at the gateway (authorization check) and the database layer.

***

## Next Steps

<CardGroup cols={2}>
  <Card title="API Reference" icon="rectangle-terminal" href="/api-reference/authentication">
    Detailed endpoint documentation
  </Card>

  <Card title="Python SDK" icon="code" href="/sdk/python">
    Client library reference
  </Card>
</CardGroup>
