API Documentation

API reference

Scribbles exposes a JSON API and Micropub for IndieWeb clients. Replace YOUR_API_KEY with the key from Sign in to open API settings and create a key.

Quick start

Send Authorization: Bearer YOUR_API_KEY on every request.

BASE URL (JSON) https://scribbles.page/api/v1
Micropub https://scribbles.page/micropub
Media https://scribbles.page/micropub/media

Example (discover blogs)

curl -s "https://scribbles.page/api/v1/info" \
  -H "Authorization: Bearer YOUR_API_KEY"

Guides

Endpoint tables and copy-paste examples live on dedicated pages so you can deep-link and search easily.

Endpoint directory

All JSON routes accept Authorization: Bearer …. Most actions target your selected blog unless you pass blog_id (or Micropub equivalents on the Micropub guide).

Method Path Purpose
GET https://scribbles.page/api/v1/info API metadata and your blogs
GET /posts List posts (filters, pagination)
POST /posts Create post
GET /posts/:id Show post (includes content)
PUT/PATCH /posts/:id Update post
DELETE /posts/:id Delete post
PATCH /posts/:id/publish Publish draft
PATCH /posts/:id/unpublish Unpublish (draft)
GET /blogs List blogs
GET /blogs/:id Show blog
GET /blogs/:blog_id/posts List posts for a blog
GET /categories List categories
GET /categories/:id Show category
POST /attachments Upload media (multipart)

Paths above are relative to https://scribbles.page/api/v1. Micropub lives at https://scribbles.page/micropub — see the Micropub guide.

Errors

  • 401 — Missing or invalid API key.
  • 403 — Authenticated but not allowed for the resource or action.
  • 404 — Unknown blog or post.
  • 400 — Bad query combination (for example category filters that exclude each other) or missing upload fields.
  • 422 — Validation errors; JSON body often includes errors / message.