Integrations
Blog
Blog CMS, posts, public API. Backend: node5-blog-service.
Last updated Mar 22, 2026
Blog content is handled by node5-blog-service. Markdown-based CMS with public API.
Why ship a built-in blog CMS
- Organic discovery (SEO) — Long-form posts become indexable pages on your domain. That helps you rank for product keywords, tutorials, and comparisons without bolting on a separate WordPress site.
- Trust and narrative — Changelog-style updates, how-tos, and case notes show that the product is alive. That supports conversion on Pricing and reduces “is this maintained?” friction.
- Publish without redeploying the app — Editors use the admin Blog UI; you are not editing marketing repo files or running a deploy for every announcement. Content stays in one pipeline with the rest of ZShip.
- Headless-friendly API —
GET /api/blog/listandGET /api/blog/getletapps/web(Astro), landing, or a future front-end render posts consistently—same data, multiple surfaces if you need them. - Fits the stack — Same auth and tenant model as the rest of the platform; Markdown plus CDN-friendly images (node6 or external URLs) keeps hosting simple on Cloudflare.
Together, the blog turns your site from a static brochure into a content channel that compounds: more pages, more reasons to return, and clearer positioning for AI/SaaS buyers.

Admin pages
- Blog (
/blog) — Create, edit, publish posts
Public API
- List posts:
GET /api/blog/list - Get post:
GET /api/blog/get?slug=...
Content
Posts support Markdown. Images can be stored via node6-cdn or external URLs.
