Skip to main content
POST
/
v1
/
platform
/
blog
/
posts
Create blog post
curl --request POST \
  --url https://api.truthlocks.com/v1/platform/blog/posts \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <api-key>' \
  --data '
{
  "title": "<string>",
  "slug": "<string>",
  "content": "<string>",
  "status": "draft",
  "excerpt": "<string>",
  "cover_image_url": "<string>",
  "tags": [
    "<string>"
  ]
}
'
{
  "id": "<string>",
  "title": "<string>",
  "slug": "<string>",
  "status": "<string>",
  "created_at": "<string>"
}
Creates a new blog post in the blog CMS. Set status to "draft" to save without publishing, or "published" to make it live on the public blog immediately.
Requires the content admin or super admin platform role.

Parameters

title
string
required
The post headline displayed on the blog and in search results.
slug
string
required
URL path segment for the post. Use lowercase letters, numbers, and hyphens.
category
string
required
Post category. One of engineering, product, security, company, or industry.
content
string
required
The full post body in Markdown.
status
string
Initial status: draft (default) or published.
excerpt
string
Short summary shown in post cards and search previews.
cover_image_url
string
URL to a cover image displayed at the top of the post. Use the upload asset endpoint to host images.
tags
string[]
Keywords for filtering and discovery.

Responses

Authorizations

X-API-Key
string
header
required

API key for machine-to-machine authentication

Body

application/json
title
string
required
slug
string
required
category
enum<string>
required
Available options:
engineering,
product,
security,
company,
industry
content
string
required

Post body in Markdown

status
enum<string>
default:draft
Available options:
draft,
published
excerpt
string
cover_image_url
string
tags
string[]

Response

Post created

id
string
title
string
slug
string
status
string
created_at
string