Skip to content

API Endpoints

Public Endpoints

MethodPathDescription
GET/Homepage (paginated)
GET/{slug}Single post or page
GET/tag/{tag}Posts by tag
GET/tagsAll tags index
GET/archiveChronological archive
GET/searchFull-text search
GET/rss.xmlRSS feed
GET/sitemap.xmlSitemap
GET/robots.txtRobots file
GET/healthzHealth check (JSON)
GET/metricsPrometheus metrics (auth required)
GET/og/{slug}Auto-generated OG image
GET/favicon.icoFavicon (custom or default SVG)
GET/favicon.svgFavicon SVG variant
POST/api/comment/{slug}Submit comment
POST/api/reaction/{slug}Like/dislike
POST/api/subscribeNewsletter subscribe
GET/api/unsubscribeNewsletter unsubscribe
GET/api/newsletter/openOpen tracking pixel
GET/api/newsletter/clickClick tracking redirect
POST/webmentionReceive webmention
GET/preview/{token}Draft preview

ActivityPub / IndieWeb

MethodPathDescription
GET/.well-known/webfingerWebfinger discovery
GET/.well-known/oauth-authorization-serverIndieAuth metadata
GET/activitypub/actorAP actor
POST/activitypub/inboxAP inbox
GET/activitypub/outboxAP outbox
GET/activitypub/followersAP followers
GET/indieauth/authIndieAuth authorize
POST/indieauth/authIndieAuth approve
POST/indieauth/tokenIndieAuth token exchange
GET/micropubMicropub query
POST/micropubMicropub create/update/delete
POST/micropub/mediaMicropub media upload

Admin API (authenticated)

Pages

MethodPathDescription
GET/admin/Dashboard
GET/admin/loginLogin page
GET/admin/editorNew post editor
GET/admin/editor/{slug}Edit existing post
GET/admin/settingsSettings page
GET/admin/newsletterNewsletter editor

Authentication

MethodPathDescription
POST/admin/api/loginAuthenticate
POST/admin/api/logoutEnd session
POST/admin/api/passwordChange password
GET/admin/api/totp/statusTOTP 2FA status
POST/admin/api/totp/setupGenerate TOTP secret
POST/admin/api/totp/confirmVerify & enable TOTP
POST/admin/api/totp/disableDisable TOTP
GET/admin/api/passkeysList passkeys
POST/admin/api/passkeys/register/beginBegin passkey registration
POST/admin/api/passkeys/register/finishFinish passkey registration
DELETE/admin/api/passkeys/{id}Delete passkey
POST/admin/api/passkeys/login/beginBegin passkey login
POST/admin/api/passkeys/login/finishFinish passkey login

Posts

MethodPathDescription
GET/admin/api/postsList all posts
POST/admin/api/postsCreate post
PUT/admin/api/posts/{slug}Update post
DELETE/admin/api/posts/{slug}Delete post
POST/admin/api/posts/bulkBulk operations
GET/admin/api/posts/{slug}/revisionsList revisions
POST/admin/api/revisions/{id}/restoreRestore revision
POST/admin/api/posts/{slug}/shareCreate draft share
DELETE/admin/api/posts/{slug}/shareRevoke draft share
POST/admin/api/previewRender markdown
POST/admin/api/media/{slug}Upload media
POST/admin/api/avatarUpload avatar
GET/admin/api/unsplashSearch Unsplash

Comments

MethodPathDescription
GET/admin/api/commentsList comments
POST/admin/api/comments/{id}/approveApprove
POST/admin/api/comments/{id}/unapproveUnapprove
DELETE/admin/api/comments/{id}Delete
POST/admin/api/comments/bulkBulk operations

Newsletter

MethodPathDescription
GET/admin/api/newslettersList newsletters
POST/admin/api/newslettersCreate draft
PUT/admin/api/newsletters/{id}Update draft
DELETE/admin/api/newsletters/{id}Delete newsletter
POST/admin/api/newsletters/{id}/scheduleSchedule send
POST/admin/api/newsletters/{id}/unscheduleBack to draft
POST/admin/api/newsletters/{id}/sendSend immediately
POST/admin/api/newsletters/{id}/retryRetry failed sends
POST/admin/api/newsletters/previewPreview markdown
GET/admin/api/newsletters/{id}/analyticsOpen/click analytics
POST/admin/api/newsletters/{id}/ab-testCreate A/B variant
GET/admin/api/subscribersList subscribers
DELETE/admin/api/subscribers/{id}Remove subscriber

Settings & Admin

MethodPathDescription
GET/admin/api/settingsGet site config
PUT/admin/api/settingsUpdate site config
GET/admin/api/statsDashboard stats
GET/admin/api/themesList themes
GET/admin/api/theme-previewTheme preview info
GET/admin/api/theme-preview-cssTheme preview page
GET/admin/api/audit-logAudit trail
POST/admin/api/audit-log/clearClear old entries
GET/admin/api/exportZIP export
GET/admin/api/fediverseFediverse stats
GET/admin/api/webmentionsList webmentions
DELETE/admin/api/webmentions/{id}Delete webmention
DELETE/admin/api/followers/{id}Remove AP follower
GET/admin/api/webhooksList webhooks
POST/admin/api/webhooksCreate webhook
DELETE/admin/api/webhooks/{id}Delete webhook
GET/admin/api/tokensList API tokens
POST/admin/api/tokensCreate API token
DELETE/admin/api/tokens/{id}Revoke API token

Released under the MIT License.