Update Blog Post
Update fields and/or flip status to ‘published’. brand/target are immutable.
Re-publishing an already-published post is a no-op success (no duplicate rebuild
dispatch). Cross-scope id → 404. Requires blog:write.
Authorizations
Org API key as Token token=ei_live_...
Headers
Path Parameters
Body
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.
1 - 300200^[a-z0-9]+(?:-[a-z0-9]+)*$2000200000502000200200draft, published 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').