---
title: "Create a topic; prompts are generated in the background"
method: POST
path: "/topics"
tags: ["Resources"]
---

# Create a topic; prompts are generated in the background

`POST /topics`

## Request body

- object
  - `name` string, required
  - `category` string, nullable
  - `projectId` string, uuid

## Response `201`

Topic created

- Topic
  - `id` string, uuid, required
  - `userId` string, uuid
  - `projectId` string, uuid, nullable
  - `name` string, required
  - `category` string, nullable
  - `createdAt` string, date-time

## Other responses

- `400` — Missing or invalid request parameter.
- `401` — Missing, malformed, or revoked API key.
- `402` — Monthly included API calls for your tier are used up (code `USAGE_LIMIT`). Body includes a `limit` object — `{ limitHit, currentTier, targetTier, feature, cap, used, resetAt }` — describing the cap and the upgrade that lifts it.
- `404` — Resource not found or not owned by your account.
- `429` — Rate limit, project cap, or daily quota hit. Body includes a `code` field.
- `500` — Server error. Retry; if persistent, contact support.

---

[API](https://skmtc.net/openlens/apis/openlens-api.md) · [All operations](https://skmtc.net/openlens/apis/openlens-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/openlens/openlens-api/versions/d307a7633c0a/schema)
