---
title: "Create Tag"
method: POST
path: "/tags"
tags: ["Tags"]
---

# Create Tag

`POST /tags`

Create a new tag.

**Required Fields:**
- name: Tag name
- slug: URL slug (must be unique within the blog)

**Response Codes:**
- 201: Tag created successfully
- 409: Slug already exists

## Request body

- TagCreateRequest
  - `jsonapi` object, required — JSON:API version metadata included in every JSON:API response.
    - `version` string, required — Implemented JSON:API version.
  - `data` object — Tag resource payload to create.
    - `type` 'tags', required — Resource type identifier. Always `tags`.
    - `attributes` object, required — Tag fields to create.
      - `name` string, required — Tag name (required) - Maximum 50 characters - Must be unique
      - `slug` string, required — URL slug (required) - Only lowercase letters, numbers, and hyphens allowed - Must be unique

## Response `201`

Tag created successfully

## Other responses

- `400` — Bad request
- `401` — Authentication failed
- `403` — Insufficient permissions
- `405` — Method not allowed
- `409` — Resource conflict
- `500` — 서버 내부 오류

---

[API](https://skmtc.dev/inblog/apis/inblog-api.md) · [All operations](https://skmtc.dev/inblog/apis/inblog-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/inblog/inblog-api/revisions/445daf773d30/schema)
