Skip to main content
PATCH
Update Blog Post

Authorizations

Authorization
string
header
required

Org API key as Token token=ei_live_...

Headers

Idempotency-Key
string | null

Path Parameters

post_id
string
required

Body

application/json

PATCH /v1/blog-posts/{id} → blog_posts. Partial update; only these fields are writable. Flip status to 'published' to publish (idempotent — re-publishing is a no-op). brand/target/organization_id are immutable after creation (not accepted); updated_at is trigger-maintained.

title
string | null
Required string length: 1 - 300
slug
string | null
Maximum string length: 200
Pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$
excerpt
string | null
Maximum string length: 2000
content
string | null
Maximum string length: 200000
tags
string[] | null
Maximum array length: 50
Maximum string length: 2000
author
string | null
Maximum string length: 200
category
string | null
Maximum string length: 200
date
string | null
status
enum<string> | null
Available options:
draft,
published
publish_to_website
boolean | null
publish_to_portal
boolean | null
scheduled_at
string | null

ISO 8601 datetime. Set to schedule deferred publishing; set to null to cancel a scheduled publish.

Response

Successful Response

A blog post row returned by /v1/blog-posts. target is derived from organization_id (NULL → 'platform', else 'org').

id
string
required
target
string | null
brand
string | null
organization_id
string | null
title
string | null
slug
string | null
status
string | null
excerpt
string | null
content
string | null
author
string | null
tags
string[]
category
string | null
date
string | null
publish_to_website
boolean | null
publish_to_portal
boolean | null
is_pinned
boolean | null
published_at
string | null
scheduled_at
string | null
created_at
string | null
updated_at
string | null