A namespace is a document stored under a name. It can be anything in markdown, a one-line preference or a long reference doc, and the guarantee is exactness: a query that is **exactly** that name always returns the document **verbatim**, skipping semantic search entirely.

That makes it the right home for anything your product needs back unchanged when it asks for it by name: customer preferences, a tone-of-voice guide, a summary your app maintains, a policy the assistant must quote rather than paraphrase. For content you want retrieved by meaning across many documents, use a [custom connection](/docs/white-label/upsert-post) instead.

## Save a document

The body is raw text, not JSON. The namespace goes in the query string:

```bash
curl -X POST "https://context-link.ai/api/v1/context/save?namespace=acme-preferences" \
  -H "Authorization: Bearer $ACME_TOKEN" \
  -d 'Prefers metric units. Never contact on Fridays. Main contact is the ops lead.'
```

```json
{ "message": "Saved", "namespace": "acme-preferences" }
```

## Request fields

| Field | Type | Description |
|---|---|---|
| `namespace` | string | Required, in the query string. The name you will read the document back by, lowercased with whitespace turned into hyphens. |
| body | string | Required, the raw request body. Anything text-shaped; it is converted to markdown before indexing. An empty body is a `422`. |

## Response fields

| Field | Type | Description |
|---|---|---|
| `message` | string | Always `Saved` on success, served with a `201`. |
| `namespace` | string | The stored name, after normalisation. Read the document back with this exact value. |

## Read it back

Ask [`GET /context`](/docs/white-label/query-customer) for the namespace itself, as the whole query, and the document comes back word for word, skipping semantic search entirely. Any other query goes through normal retrieval, where the document is one more piece of that customer's indexed material.

## Saving again replaces the document

A second save to the same namespace **overwrites** it: this is a whole-document write, not an append. Keep the authoritative copy in your own database and re-send the full document whenever it changes.

## Isolation

A document saved with a customer's token lands in that customer's **private** memory and no other customer can retrieve it. The [partner provisioning token](/docs/white-label/getting-started) is read-only on this endpoint and gets a `403`: an organisation-wide memory write would be fleet-visible, with no sensible owner.
