2026.40 Unique API / SDK Changes

2 min read

Unique API Documentation: Check out the documentation to learn more about how Unique API Swagger works and where to access it: https://unique-ch.atlassian.net/wiki/x/Q4A5ZQ.

Unique API

Rollout — Knowledge base and Conduct Security

tech From .40, the new Unique API is rolled out for two batches.

  • B2 Knowledge base — /folder, /content, /chunk, /search, /ingestion-metrics.

  • B2 Conduct Security — /short-term-memory, /magic-table. POST /content/magic-table-sheets is included in this batch.

  • The base URL does not change. Integrations continue to work at https://gateway.unique.app/public/chat/{resource} — no client action is required.

  • These two batches are enabled together in .40. Every other domain stays on the previous implementation until its own release.

Behaviour changes to expect on these resources

  • 403 Forbidden — RBAC is now enforced. Calls from users without the required role are rejected.

  • 400 Bad Request — stricter request validation. Payloads that do not match the new contract now fail.

  • 422 — internal errors return a clear, accurate message instead of a generic failure.

Full rollout order, per-domain resource lists and the complete set of behaviour changes: Unique API Version 2026.03.01.

New Endpoints

tech Context Memory — Get the current user’s context memory. GET /public/chat/context-memory returns the persistent memory associated with the authenticated user, including scopeId, contentId, document, updatedAt, and object: "context-memory".

Example

curl --location --request GET 'https://api.uat1.unique.app/public/chat/context-memory' \
  --header 'x-user-id: <user-id>' \
  --header 'x-company-id: <company-id>' \
  --header 'x-app-id: <app-id>' \
  --header 'Authorization: Bearer <api-key>' \
  --header 'x-api-version: 2026-03-01'

tech Context Memory — Update the current user’s context memory. PATCH /public/chat/context-memory replaces the authenticated user’s memory document. Send { "document": "<memory>" }; the document may be empty and can contain up to 1 MiB of UTF-8 content.

Example

curl --location --request PATCH 'https://api.uat1.unique.app/public/chat/context-memory' \
  --header 'Content-Type: application/json' \
  --header 'x-user-id: <user-id>' \
  --header 'x-company-id: <company-id>' \
  --header 'x-app-id: <app-id>' \
  --header 'Authorization: Bearer <api-key>' \
  --header 'x-api-version: 2026-03-01' \
  --data '{ "document": "<memory>" }'

tech Space — Rename a chat. PATCH /public/chat/space/chat/{chatId} updates the title of an existing chat owned by the authenticated user. Send { "title": "<new title>" }; the title must be a non-empty string. Returns the chat object (id, title, createdAt, object: "chat"). Unknown chats and chats owned by another user return 404. Available on both API versions.

Example

curl --location --request PATCH 'https://api.uat1.unique.app/public/chat/space/chat/<chat-id>' \
  --header 'Content-Type: application/json' \
  --header 'x-user-id: <user-id>' \
  --header 'x-company-id: <company-id>' \
  --header 'x-app-id: <app-id>' \
  --header 'Authorization: Bearer <api-key>' \
  --header 'x-api-version: 2026-03-01' \
  --data '{ "title": "Q3 Financial Analysis" }'

SDK

tech New Python SDK Context Memory resource. Use unique_sdk.ContextMemory.retrieve() to read the current user’s persistent context and unique_sdk.ContextMemory.modify(document=...) to replace or clear it. Async applications can use retrieve_async() and modify_async().

Example

py
memory = unique_sdk.ContextMemory.retrieve(
    user_id=user_id,
    company_id=company_id,
)

updated_memory = unique_sdk.ContextMemory.modify(
    user_id=user_id,
    company_id=company_id,
    document="The user prefers concise answers in English.",
)

See https://unique-ag.github.io/ai/unique-sdk/latest/api_resources/context_memory/ for the complete resource reference.

tech Rename a chat from the Python SDK. Use unique_sdk.Space.update_chat(chat_id=..., title=...) to change the title of an existing chat. Async applications can use update_chat_async().

Example

py
chat = unique_sdk.Space.update_chat(
    user_id=user_id,
    company_id=company_id,
    chat_id="chat_abc123",
    title="Q3 Financial Analysis",
)

See https://unique-ag.github.io/ai/unique-sdk/latest/api_resources/space/ for the complete resource reference.

Last updated