---
title: "Create a blog post for the authenticated website."
method: POST
path: "/api/v1/posts"
tags: ["Posts"]
---

# Create a blog post for the authenticated website.

`POST /api/v1/posts`

## Request

- Base URL: `https://api.unicornplatform.com`
- URL: `https://api.unicornplatform.com/api/v1/posts`
- Auth: HTTP bearer

## Request body

- PostInput
  - `headline` string, required
  - `metaTitle` string: Defaults to headline when omitted.
  - `metaDescription` string
  - `thumbnailUrl` string
  - `html` string, required
  - `slug` string, required: Single URL segment, without slashes, query string, or fragment.
  - `directory` string: Post directory. Omit it to use the active blog directory; use another directory such as /news for alternate folders.
  - `published` boolean
  - `createdAt` string, date-time: Optional published/created timestamp to preserve imported content dates.

## Response `201`

Post was created.

- Post
  - `id` string, required
  - `headline` string, required
  - `metaTitle` string, required
  - `metaDescription` string, required
  - `thumbnailUrl` string, required
  - `html` string: Present when includeHtml is true, and included by default for detail endpoints.
  - `slug` string, required
  - `directory` string, required
  - `path` string, required
  - `url` string, required
  - `published` boolean, required
  - `createdAt` string, date-time, required
  - `updatedAt` string, date-time, required

## Other responses

- `400`: Invalid post payload.
- `401`: Missing or invalid bearer token.
- `404`: The authenticated website has no active blog.
- `409`: Post path already exists.

---

[API](https://skmtc.dev/unicornplatform/apis/unicorn-platform-partner-api.md) - [All operations](https://skmtc.dev/unicornplatform/apis/unicorn-platform-partner-api/llms.txt) - [OpenAPI document](https://skmtc.dev/unicornplatform/apis/unicorn-platform-partner-api/revisions/809eeac0c51c?raw)
