- POST /api/v1/sync/push — accepts ops, assigns revisions, returns accepted list
- POST /api/v1/sync/pull — returns ops since given revision with server_revision
- POST /api/v1/blobs/ — multipart upload, stored as blobs/ab/cd/sha256
- GET /api/v1/blobs/{sha256} — download by hash
- server_blobs table for tracking stored blobs