Blog on your site
Show the posts you write in Lahuta on your own website, filter them by keyword, or use the RSS feed.
Use these endpoints when you write your blog in Lahuta but want the posts to appear on your own website too. You write, schedule and publish in the dashboard. Your site reads the published posts and renders them in its own design.
| You want to | Use |
|---|---|
| Show a list of posts | GET /v1/blog/posts |
| Show posts with one keyword | GET /v1/blog/posts?tag=... |
| Show one post | GET /v1/blog/posts/{slug} |
| Offer a feed for readers or other tools | https://api.lahuta.org/blog/<your-org>/feed.xml |
Only live posts are returned: published, and past their publish time. A scheduled post appears on its own once its time comes. Drafts never appear.
List posts
GET /v1/blog/posts returns your posts, newest first, 25 at a time. See Pagination.
curl "https://api.lahuta.org/v1/blog/posts?limit=10" \
-H "X-Api-Key: $LAHUTA_API_KEY"{
"items": [
{
"slug": "choosing-your-first-glaze",
"title": "Choosing your first glaze",
"excerpt": "Gloss, satin or matte? What we tell every beginner before their first firing.",
"keywords": ["Glazing", "Beginners"],
"cover": {
"id": "0197b0a8-1e4c-7d93-8a2f-5c6b3e9d1a04",
"type": "image",
"url": "https://media.lahuta.io/images/0197a3c2-5b1e-7d40-9f2a-3c8e1b6d4f70/0197b0a8-1e4c-7d93-8a2f-5c6b3e9d1a04.jpg",
"alt": "Test tiles in six glazes",
"width": 1600,
"height": 1067,
"thumbnail": null
},
"authors": [{ "name": "Lena Park", "image": null }],
"publishedAt": "2026-09-12T15:00:00.000Z"
}
],
"total": 23,
"limit": 10,
"offset": 0
}Filter by keyword
Add tag to get only posts with that keyword. It matches one of the post's Keywords from the blog editor exactly, including upper and lower case:
curl "https://api.lahuta.org/v1/blog/posts?tag=Glazing" \
-H "X-Api-Key: $LAHUTA_API_KEY"total then counts only the matching posts.
Show one post
GET /v1/blog/posts/{slug} returns the post with its full HTML and what the page's <head> needs.
curl https://api.lahuta.org/v1/blog/posts/choosing-your-first-glaze \
-H "X-Api-Key: $LAHUTA_API_KEY"{
"slug": "choosing-your-first-glaze",
"title": "Choosing your first glaze",
"excerpt": "Gloss, satin or matte? What we tell every beginner before their first firing.",
"keywords": ["Glazing", "Beginners"],
"authors": [{ "name": "Lena Park", "image": null }],
"publishedAt": "2026-09-12T15:00:00.000Z",
"html": "<p>Every beginner asks the same question at the glaze shelf...</p>",
"meta": {
"title": "Choosing your first glaze",
"description": "Gloss, satin or matte? What we tell every beginner before their first firing.",
"image": "https://media.lahuta.io/images/0197a3c2-5b1e-7d40-9f2a-3c8e1b6d4f70/0197b0a8-1e4c-7d93-8a2f-5c6b3e9d1a04.jpg",
"canonical": "https://lahuta.org/northside-pottery/blog/choosing-your-first-glaze"
}
}The response also has cover, like the list.
htmlis the post body. Render it as HTML inside your article layout.metahas what your page's<head>needs: the post title, the meta description, and the cover image to use as the share image. When a post has no meta description, you get its excerpt. Use them for your<title>, meta description and Open Graph tags.meta.canonicalis the post's address on Lahuta. Search engines should only index one copy of a post. If your website is the main home for your blog, point your page's canonical link at your own URL. If the Lahuta page stays the main one, usemeta.canonical.
A slug that doesn't exist, or a post that isn't live yet, returns 404 with {"_tag":"NotFound"}. Show your own "post not found" page.
Use the RSS feed
Every organization with a blog has a public RSS feed. It needs no API key, so you can link it from your site or give it to a newsletter tool:
https://api.lahuta.org/blog/northside-pottery/feed.xmlThe feed lists your live posts with their title, excerpt and publish date. Each item links to the post on Lahuta. There's also a sitemap of your posts at https://api.lahuta.org/blog/<your-org>/sitemap.xml.
Edge cases
- Caching. Posts don't change often. Caching the list and each post for a few minutes keeps your site fast. Your cache decides how soon a newly published post shows up.
- Images.
cover.urlpoints at an image Lahuta serves. You can use it as is, without copying it to your own server. - Keywords with spaces need URL encoding:
?tag=Kiln%20firing.
Every field is described under Blog in the API reference.