Blog Admin
Manage the Rankion blog: article list, categories, slugs, publishing — for platform owners.
Blog Admin is the internal CMS layer for the public Rankion blog at rankion.ai/blog. Platform owners manage categories and posts here: create, edit, publish, unpublish, delete. Unlike the AI Content Editor, this module doesn't create articles with AI — it's the classic admin surface for editorially curated content of the Rankion-owned blog (marketing, updates, tutorials). The module is reserved for admin users and team-scoped to the platform-owner team.
What it can do
- Categories CRUD — create categories, rename, change slug, delete. Slug = SEO-relevant URL component.
- Posts CRUD — create articles, set title/slug/body/featured image, assign category, toggle status (
draft,published). - Slug validation — slugs are unique within a category. Duplicate slugs are rejected.
- Publishing — flipping a post from
drafttopublishedimmediately publishes it torankion.ai/blog/<category>/<slug>. - Markdown body — posts are stored as Markdown; the frontend renders with syntax highlighting and wiki-like typography.
- List filters — the posts list is filterable by status, category, search term in the title.
When to use
- You're a platform owner and want to publish a new marketing article on
rankion.ai/blog. - You want to rename an existing category or create a new topic cluster.
- You want to unpublish a post (e.g. outdated or legally problematic) without deleting it for good.
- You want to optimize the slug structure for SEO without manually maintaining URL redirects.
Note: For regular team-owned articles (e.g. customer blogs, affiliate sites), use the AI Content Editor — it publishes via WordPress / CMS integration and isn't restricted to the Rankion-owned blog.
Workflow
- Create categories —
POST /blog/categorieswith{name, slug}. Slug becomes/blog/<slug>/.... - Create post —
POST /blog/postswith{title, slug, body_md, category_id, status: "draft"}. Body is Markdown. - Edit —
PUT /blog/posts/{id}for content updates. Slug change breaks old permalinks — check beforehand whether backlinks exist. - Publish —
PUT /blog/posts/{id}with{status: "published"}. Live immediately. - List —
GET /blog/posts?status=published&category_id=3filters.
API
| Method | Endpoint | Description |
|---|---|---|
GET |
/v1/blog/categories |
List all categories |
POST |
/v1/blog/categories |
New category |
PUT |
/v1/blog/categories/{id} |
Update |
DELETE |
/v1/blog/categories/{id} |
Delete (only if no posts) |
GET |
/v1/blog/posts |
List with filter ?status=&category_id=&search= |
POST |
/v1/blog/posts |
Create new post |
GET |
/v1/blog/posts/{id} |
Detail |
PUT |
/v1/blog/posts/{id} |
Update incl. status toggle |
DELETE |
/v1/blog/posts/{id} |
Delete (soft delete if enabled) |
Example — create post.
curl -X POST $BASE/blog/posts \
-H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
-d '{
"title": "Neue AI-Visibility-Features in Rankion",
"slug": "ai-visibility-update-mai-2026",
"category_id": 2,
"body_md": "## Was ist neu\n\n- Reality-Check ...\n",
"status": "draft"
}'
Credits & Limits
- Free — no credits. CMS operations cost nothing.
- Admin only — only users with the platform-admin role may write. Reads are also admin-restricted (the public frontend
rankion.ai/blogrenders published posts via server-side rendering, not via this API). - Slug unique — within a category. 422 on conflict.
- Soft delete — deletes are reversible if the migration tracks
deleted_at; when in doubt, set status todraftinstead of deleting.
Related modules
- AI Content Editor — AI-driven article creation for team-owned sites; not for the Rankion-owned blog.
- Rankion OS — Storage & Files — featured images and asset library for blog posts.