---
title: "Create a knowledge topic"
method: POST
path: "/api/v1/topics"
---

# Create a knowledge topic

`POST /api/v1/topics`

## Request

- Base URL: `https://myagentda.com`
- URL: `https://myagentda.com/api/v1/topics`
- Auth: API key in header `Authorization`

Creates a topic. Private by default (only creator + named people); visibility 'workspace' makes it readable for the whole workspace while write access stays with the admin + named writers. Added people are notified by email.

## Request body

- object: Topic to create.
  - `name` string, required: Unique topic name (per workspace, case-insensitive).
  - `description` string: What belongs in this topic.
  - `visibility` 'private' | 'workspace': Default private. workspace = everyone can read; writing stays limited.
  - `writers` string[]: User IDs or member emails granted read + write access.
  - `readers` string[]: User IDs or member emails granted read-only access.

## Response `201`

The topic was created.

- object: Created topic.
  - `topic` Topic: A knowledge topic.
    - `id` string: Topic UUID.
    - `number` string: Short reference, e.g. T-3.
    - `name` string: Unique name.
    - `description` string, nullable: What belongs in this topic.
    - `visibility` 'private' | 'workspace': private: only named people. workspace: everyone reads.
    - `status` 'active' | 'archived': Archived topics are read-only.
    - `created_at` string: Creation time (ISO 8601).
    - `updated_at` string: Last change (ISO 8601).

## Other responses

- `400`: The request was invalid.
- `401`: The access token is missing or invalid.

---

[API](https://skmtc.dev/myagentda/apis/agentda.md) · [All operations](https://skmtc.dev/myagentda/apis/agentda/llms.txt) · [OpenAPI document](https://skmtc.dev/myagentda/apis/agentda/revisions/66a449ab49dc?raw)
