Article Workflow
This covers the full lifecycle of an article from the dashboard side. The backend owns the state transitions — the dashboard just sends the requests.
Creating and Publishing an Article
Section titled “Creating and Publishing an Article”-
Go to
/articles/add— Fill in the article form:- Title — auto-generates a URL slug
- Body — written in the CKEditor rich text editor
- Tags — determines which child sites this article appears on
- Category and Section — used for content organization
- Thumbnail — uploaded via the S3 signed URL flow
-
Save the article — Click Save. The dashboard calls
POST /api/v1/article. The article is stored in MongoDB as a draft. -
Edit if needed — Go to
/articles/edit/:idto update any fields. CallsPUT /api/v1/article/:id. -
Preview — Open
/articles/preview/:idto see how the article will look before publishing. -
Assign to sites — Select which child sites should host this article. Calls
POST /api/v1/article/host-site/:id. -
Publish — Click the Publish button. Calls
PUT /api/v1/article/publish/:id. The article is now live and returned by the client API.
Moderation (Aggregated Articles)
Section titled “Moderation (Aggregated Articles)”RSS-imported articles that aren’t auto-approved land in a pending queue. Admins can review them at /articles filtered by pending status.
| Action | API call |
|---|---|
| Approve | PUT /api/v1/article/approve/:id |
| Reject | PUT /api/v1/article/reject/:id |