Skip to main content
POST
/
publisher
/
{publisher_id}
/
post
Create Post
curl --request POST \
  --url https://cms.thepublive.com/publisher/{publisher_id}/post/ \
  --header 'Authorization: Basic <encoded-value>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "title": "<string>",
  "english_title": "<string>",
  "type": "<string>",
  "status": "<string>",
  "primary_category": 123,
  "contributors": "<string>",
  "content": "<string>",
  "tags": "<string>",
  "categories": "<string>",
  "banner_url": 123,
  "banner_description": "<string>",
  "short_description": "<string>",
  "summary": "<string>",
  "seo_keyphrase": "<string>",
  "slug": "<string>",
  "meta_data": {},
  "custom_published_at": "<string>",
  "scheduled_at": "<string>",
  "hide_banner_image": true,
  "custom_entity": {}
}
'
{
  "status": "success",
  "message": "Created successfully",
  "data": {
    "id": 50200,
    "title": "Getting Started with Publive API",
    "english_title": "Getting Started with Publive API",
    "slug": "getting-started-with-publive-api",
    "type": "Article",
    "status": "Draft",
    "primary_category": {
      "id": 100,
      "name": "Technology",
      "slug": "technology"
    },
    "contributors": [
      {"id": 1, "name": "Jane Doe"},
      {"id": 2, "name": "John Smith"}
    ],
    "tags": [
      {"id": 500, "name": "API"},
      {"id": 501, "name": "Tutorial"}
    ],
    "content": "<p>Learn how to integrate Publive into your application...</p>",
    "banner_url": null,
    "banner_description": "",
    "short_description": "A beginner guide to the Publive API",
    "word_count": 12,
    "created_at": "2026-02-12T10:00:00Z",
    "updated_at": "2026-02-12T10:00:00Z",
    "source": "HeadlessCMS"
  }
}
Creates a new post. Posts are created with Draft status by default.
publisher_id
string
required
Your Publisher ID
title
string
required
Post headline
english_title
string
required
Immutable English headline (used for slug generation).
type
string
required
Immutable Post type. Article, Video, Web Story, Gallery, LiveBlog, CustomPage, BlankPage.
status
string
required
Draft, Published, Scheduled, Approval Pending
primary_category
integer
required
Category ID
contributors
string
Comma-separated author IDs
content
string
HTML body content. Supports structured blocks such as FAQ sections.
tags
string
Comma-separated tag IDs
categories
string
Comma-separated additional category IDs
banner_url
integer
Media ID for featured image
banner_description
string
Featured image caption
short_description
string
SEO meta description
summary
string
Post summary
seo_keyphrase
string
Focus keyword
slug
string
Immutable Custom slug (auto-generated from english_title if omitted).
meta_data
object
Immutable Additional metadata (e.g., {"access_type": "Paid"}).
custom_published_at
string
Immutable Backdated publish date.
scheduled_at
string
Future publish date (status must be Scheduled)
hide_banner_image
boolean
Hide the featured image
custom_entity
object
Custom field values for Headless CMS posts backed by a custom schema. The object keys are field slugs defined on the schema; values vary by field type.

Example request

curl -X POST \
  'https://cms.thepublive.com/publisher/123/post/' \
  -H 'Authorization: Basic <BASE64_AUTH_TOKEN>' \
  -H 'Content-Type: application/json' \
  -d '{
    "title": "Getting Started with Publive API",
    "english_title": "Getting Started with Publive API",
    "type": "Article",
    "status": "Draft",
    "primary_category": 100,
    "contributors": "1,2",
    "tags": "500,501",
    "content": "<p>Learn how to integrate Publive into your application...</p>",
    "short_description": "A beginner guide to the Publive API"
  }'
{
  "status": "success",
  "message": "Created successfully",
  "data": {
    "id": 50200,
    "title": "Getting Started with Publive API",
    "english_title": "Getting Started with Publive API",
    "slug": "getting-started-with-publive-api",
    "type": "Article",
    "status": "Draft",
    "primary_category": {
      "id": 100,
      "name": "Technology",
      "slug": "technology"
    },
    "contributors": [
      {"id": 1, "name": "Jane Doe"},
      {"id": 2, "name": "John Smith"}
    ],
    "tags": [
      {"id": 500, "name": "API"},
      {"id": 501, "name": "Tutorial"}
    ],
    "content": "<p>Learn how to integrate Publive into your application...</p>",
    "banner_url": null,
    "banner_description": "",
    "short_description": "A beginner guide to the Publive API",
    "word_count": 12,
    "created_at": "2026-02-12T10:00:00Z",
    "updated_at": "2026-02-12T10:00:00Z",
    "source": "HeadlessCMS"
  }
}
Last modified on May 28, 2026