Update a post
/posts/{id}AuthorizationBearer token (JWT) · headerrequiredidstringrequiredPost ID or slug
application/jsontitlestringbodystringslugstringdescriptionstringshort_descriptionstringpublishedbooleanpublished_onstring<date-time>formatstringmarkdown is stored as is and rendered by the storefront.
htmlblocksmarkdownblog_idintegerMove the post to another blog of this shop. A translation takes its translation_lang from the new blog.
translation_ofinteger | nullMake this post a translation of another one (same rules as when creating), or send null to detach it and make it an original post again.
Post updated
_linksHalLinksidintegershop_idintegertitlestringslugstringbodystringdescriptionstringshort_descriptionstringpublishedbooleanThere is no status field — this is a boolean.
published_onstring<date-time>formatstringblocks means body is an EditorJS JSON document (as a string).
htmlblocksblog_idintegerThe blog this post lives in. A shop can have several blogs, each with its own language; new posts go to the shop's default blog unless blog_id is given.
translation_ofinteger | nullID of the original post when this post is a translation of it; null for an original post.
translation_langstring | nullLanguage of this translation (the language of its blog, e.g. es); null for an original post.
user_idintegercreated_onstring<date-time>updated_onstring<date-time>pathstringPath of the post on the storefront, e.g. /blog/2024/3/15/hello (/es/blog/... for a blog in another language than the shop's).
urlstring | nullFull storefront URL of the post. Unpublished posts end in ?preview=1.