Blog posts

Update a blog post

Changed on

Updates a blog post. A status value is rejected with blog_invalid_transition unless it is the scheduling carve-out (status: "scheduled" with a future publishedAt); use the publish/unpublish endpoints for other lifecycle changes.

patch/blog/posts/{id}

Request

  • Base URL: https://api.cavuno.com/v1
  • URL: https://api.cavuno.com/v1/blog/posts/{id}
  • Auth: HTTP bearer

Path parameters

idstring required

The post's opaque object id: the id field returned by the blog-post endpoints (e.g. b3p8m2k7d9q4x0r5t1v6w8y2z7a4c0n3). This is NOT the slug or title; passing a slug like my-first-post returns 404. To look up a post by title or slug, use GET /v1/blog/posts or POST /v1/blog/posts/search and read the returned id.

Request body

slugstring
htmlstring
customExcerptstring
readingTimeMininteger
featuredboolean
authorIdsstring[]
tagIdsstring[]
coverMediaIdstring nullable
ogImageMediaIdstring nullable
featureImageAltstring
featureImageCaptionstring
seoTitlestring
seoDescriptionstring
canonicalUrlstring nullable

Canonical URL for the post. Pass null or "" to clear the stored value; omitted means unchanged.

publishedAtstring date-time
titlestring
status'draft' | 'scheduled' | 'published'

Response

Successful response.

idstring required

Unique identifier for the object. Use this value as the {id} path parameter for the blog-post endpoints (e.g. GET /v1/blog/posts/{id}).

object'blog_post' required
titlestring required
slugstring required
statusstring required
visibilitystring required
typestring required
featuredboolean required
authorIdsstring[] required
tagIdsstring[] required
coverUrlstring nullable required
ogImageUrlstring nullable required
featureImageAltstring nullable required
featureImageCaptionstring nullable required
customExcerptstring nullable required
readingTimeMinnumber nullable required
seoTitlestring nullable required
seoDescriptionstring nullable required
canonicalUrlstring nullable required
publishedAtstring nullable required
createdAtstring required
updatedAtstring nullable required
htmlstring nullable required

Changes

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status