---
title: "Add dictionary words"
method: POST
path: "/dictionary/create"
tags: ["Dictionary"]
---

# Add dictionary words

`POST /dictionary/create`

## Request

- Base URL: `https://api.openwhispr.com/api/v1`
- URL: `https://api.openwhispr.com/api/v1/dictionary/create`
- Auth: HTTP bearer

Add up to 200 words in one call. Words are deduplicated case-insensitively, and any that already exist are returned as-is rather than duplicated. Requires dictionary:write on a personal key (owk_live_). Returns 403 forbidden for managed users whose organization has turned off cloud backup.

## Request body

- DictionaryCreateRequest
  - `words` string[], required: Words to add. Each is 1-100 characters and may not contain <, > or line breaks. Deduplicated case-insensitively; words already in the dictionary are returned rather than duplicated.

## Response `201`

The entries for every word sent, including ones that already existed.

- object
  - `data` DictionaryEntry[]
    - `id` string
    - `word` string
    - `source` 'manual' | 'learned': `manual` for words you added; `learned` for words added automatically by auto-learn from corrections.
    - `created_at` string, date-time
    - `updated_at` string, date-time

## Other responses

- `400`: Validation error — empty list, more than 200 words, a word outside 1-100 characters, or one containing <, > or a line break.
- `403`: Missing dictionary:write, a workspace key, or cloud backup turned off by your organization.

## Changes

- **2026-11-03** `cf6557643deb`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/openwhispr/apis/openwhispr-api/changes/dictionary/create/post.md)

---

[API](https://skmtc.dev/openwhispr/apis/openwhispr-api.md) - [All operations](https://skmtc.dev/openwhispr/apis/openwhispr-api/llms.txt) - [OpenAPI document](https://skmtc.dev/openwhispr/apis/openwhispr-api/revisions/cf6557643deb?raw)
