# Build with Micro.blog > Unofficial API docs, examples, and app showcases for the Micro.blog platform. Micro.blog supports multiple APIs and open-source apps. Use these docs to explore the API, learn from working examples, and build your own integrations. Site: https://microblog.dev/ Micro.blog API base URL: https://micro.blog Full LLM document: https://microblog.dev/llms-full.txt This is an unofficial developer documentation site for Micro.blog APIs, examples, and app integrations. ## Pages - [Home](https://microblog.dev/): Unofficial API docs, examples, and app showcases for the Micro.blog platform. Micro.blog supports multiple APIs and open-source apps. Use these docs to explore the API, learn from working examples, and build your own integrations. - [Micro.blog API Documentation](https://microblog.dev/api/): Explore Micro.blog API endpoints for authentication, timelines, posting, bookmarks, notes, books, feeds, discovery, account settings, and IndieWeb protocols. - [Example Apps](https://microblog.dev/example-apps/): Trace real app flows back to the API docs. Each example links to its source repository and the Micro.blog endpoints it uses. ## API Endpoint Index ### Authentication Sign in, registration, and token verification endpoints. - [POST /account/signin](https://microblog.dev/api/authentication/#post--account-signin): Sends a sign-in email for an existing account. App sign-in requests must include a registered app name and redirect URL. - [POST /account/verify](https://microblog.dev/api/authentication/#post--account-verify): Verifies an emailed sign-in or app token and returns account information plus the API token to use on authenticated requests. - [POST /account/apple](https://microblog.dev/api/authentication/#post--account-apple): Verifies a Sign in with Apple identity token and returns a temporary Micro.blog verification token. - [POST /indieauth/approve](https://microblog.dev/api/authentication/#post--indieauth-approve): Approves an IndieAuth authorization request and redirects to the client with a code. - [GET /indieauth/auth](https://microblog.dev/api/authentication/#get--indieauth-auth): Starts the IndieAuth authorization flow and renders the authorization screen. - [POST /indieauth/auth](https://microblog.dev/api/authentication/#post--indieauth-auth): Verifies an IndieAuth authorization code for clients that only need identity information. - [GET /indieauth/token](https://microblog.dev/api/authentication/#get--indieauth-token): Introspects an IndieAuth bearer token and returns profile and scope information. - [POST /indieauth/token](https://microblog.dev/api/authentication/#post--indieauth-token): Exchanges an IndieAuth authorization code for profile information and, when requested, an access token. ### Account Endpoints for account preferences and account-level API settings. - [POST /account/feeds](https://microblog.dev/api/account/#post--account-feeds): Adds a feed source to the account. - [GET /account/info/domains](https://microblog.dev/api/account/#get--account-info-domains): Returns hosted site and domain status information. - [GET /account/info/feeds](https://microblog.dev/api/account/#get--account-info-feeds): Returns account feed and cross-posting source information. - [GET /account/settings](https://microblog.dev/api/account/#get--account-settings): Returns account-level API settings for the authenticated user. - [POST /account/settings](https://microblog.dev/api/account/#post--account-settings): Updates account-level API settings for the authenticated user. ### Posts Endpoints for timeline posts, user posts, replies, media, conversations, search, and post deletion. - [GET /posts/all](https://microblog.dev/api/posts/#get--posts-all): Retrieves the user's timeline feed. Returns posts in JSON Feed format with Micro.blog extensions. Supports pagination via query parameters. - [GET /posts/all/by_id](https://microblog.dev/api/posts/#get--posts-all-by_id): Returns one timeline post by query ID. - [GET /posts/conversation](https://microblog.dev/api/posts/#get--posts-conversation): Returns the conversation thread for a post, mention, favourite, or thread ID. - [GET /posts/links/search](https://microblog.dev/api/posts/#get--posts-links-search): Searches indexed links and returns JSON Feed. - [GET /posts/links/{prefix}](https://microblog.dev/api/posts/#get--posts-links-prefix): Returns indexed links matching a host/path prefix in JSON Feed format. - [GET /posts/media](https://microblog.dev/api/posts/#get--posts-media): Retrieves media posts from the authenticated user timeline in JSON Feed format. - [GET /posts/photos](https://microblog.dev/api/posts/#get--posts-photos): Retrieves photo posts from the authenticated user timeline in JSON Feed format. - [GET /posts/replies](https://microblog.dev/api/posts/#get--posts-replies): Returns replies for the authenticated user. - [GET /posts/search](https://microblog.dev/api/posts/#get--posts-search): Searches posts visible to the authenticated user. - [GET /posts/timeline](https://microblog.dev/api/posts/#get--posts-timeline): Retrieves the authenticated user timeline in JSON Feed format. - [GET /posts/timeline/{id}](https://microblog.dev/api/posts/#get--posts-timeline-id): Returns one timeline post by ID. - [DELETE /posts/{id}](https://microblog.dev/api/posts/#delete--posts-id): Deletes one of the authenticated user's posts by ID. - [GET /posts/{username}](https://microblog.dev/api/posts/#get--posts-username): Returns a user profile and recent posts for the given username. - [GET /posts/{username}/photos](https://microblog.dev/api/posts/#get--posts-username-photos): Returns public photo posts for a user in JSON Feed format. ### Posting and Micropub Endpoints for publishing, replying, uploading media, and querying Micropub resources. - [GET /micropub](https://microblog.dev/api/posting/#get--micropub): Handles Micropub configuration, source, category, contact, and syndication queries. - [POST /micropub](https://microblog.dev/api/posting/#post--micropub): Creates, updates, or deletes content through Micropub. - [GET /micropub/media](https://microblog.dev/api/posting/#get--micropub-media): Returns Micropub media endpoint configuration or uploaded media. - [POST /micropub/media](https://microblog.dev/api/posting/#post--micropub-media): Uploads media or deletes an uploaded media file through the Micropub media endpoint. - [POST /micropub/media/append](https://microblog.dev/api/posting/#post--micropub-media-append): Appends a base64-encoded chunk to a large media upload. Micro.blog clients use this before marking the upload as finished. - [POST /micropub/media/finished](https://microblog.dev/api/posting/#post--micropub-media-finished): Marks a chunked media upload as finished and queues server-side processing. - [GET /micropub/media/waiting](https://microblog.dev/api/posting/#get--micropub-media-waiting): Returns processing state and the final URL for a chunked media upload. - [POST /posts/reply](https://microblog.dev/api/posting/#post--posts-reply): Creates a reply to a Micro.blog post or mention. ### Microsub Microsub endpoints for channels, timelines, and follow actions. - [GET /microsub](https://microblog.dev/api/microsub/#get--microsub): Handles Microsub channel and timeline queries. - [POST /microsub](https://microblog.dev/api/microsub/#post--microsub): Handles Microsub write actions such as follow. ### Discover Endpoints for curated Discover timelines and topic feeds. - [GET /posts/discover](https://microblog.dev/api/discover/#get--posts-discover): Returns the Discover timeline feed. - [GET /posts/discover/books](https://microblog.dev/api/discover/#get--posts-discover-books): Returns the Discover books feed in JSON Feed format. - [GET /posts/discover/photos](https://microblog.dev/api/discover/#get--posts-discover-photos): Returns the Discover photos feed. - [GET /posts/discover/slowreads](https://microblog.dev/api/discover/#get--posts-discover-slowreads): Returns the Discover slow reads feed in JSON Feed format. - [GET /posts/discover/{topic}](https://microblog.dev/api/discover/#get--posts-discover-topic): Returns a Discover topic feed in JSON Feed format. ### Mentions Endpoints for mentions and blocked mention feeds. - [GET /posts/mentions](https://microblog.dev/api/mentions/#get--posts-mentions): Returns mentions for the authenticated user. - [GET /posts/mentions/blocked](https://microblog.dev/api/mentions/#get--posts-mentions-blocked): Returns blocked or hidden mentions for the authenticated user. - [GET /posts/mentions/bluesky](https://microblog.dev/api/mentions/#get--posts-mentions-bluesky): Returns Bluesky mentions in JSON Feed format. - [GET /posts/mentions/mastodon](https://microblog.dev/api/mentions/#get--posts-mentions-mastodon): Returns Mastodon mentions in JSON Feed format. - [GET /posts/mentions/mb](https://microblog.dev/api/mentions/#get--posts-mentions-mb): Returns Micro.blog mentions in JSON Feed format. - [POST /posts/mentions/{id}](https://microblog.dev/api/mentions/#post--posts-mentions-id): Updates mention visibility metadata. ### Bookmarks Endpoints for bookmarks, bookmark tags, bookmark highlights, and reader web views. - [GET /posts/bookmarks](https://microblog.dev/api/bookmarks/#get--posts-bookmarks): Returns the authenticated user's bookmarks in JSON Feed format. - [POST /posts/bookmarks](https://microblog.dev/api/bookmarks/#post--posts-bookmarks): Adds a timeline post to the authenticated user's bookmarks. - [GET /posts/bookmarks/highlights](https://microblog.dev/api/bookmarks/#get--posts-bookmarks-highlights): Returns saved bookmark highlights in JSON Feed format. - [DELETE /posts/bookmarks/highlights/{id}](https://microblog.dev/api/bookmarks/#delete--posts-bookmarks-highlights-id): Deletes a bookmark highlight. - [GET /posts/bookmarks/tags](https://microblog.dev/api/bookmarks/#get--posts-bookmarks-tags): Returns bookmark tag names for the authenticated user. - [DELETE /posts/bookmarks/tags/{id}](https://microblog.dev/api/bookmarks/#delete--posts-bookmarks-tags-id): Deletes a bookmark tag and clears it from bookmarks. - [DELETE /posts/bookmarks/{id}](https://microblog.dev/api/bookmarks/#delete--posts-bookmarks-id): Removes a bookmark by bookmark ID or original post ID. - [GET /posts/bookmarks/{id}](https://microblog.dev/api/bookmarks/#get--posts-bookmarks-id): Returns a single bookmark by bookmark ID or original post ID. - [POST /posts/bookmarks/{id}](https://microblog.dev/api/bookmarks/#post--posts-bookmarks-id): Updates tags for an existing bookmark. ### Blocking and Reporting Endpoints for reporting users and managing muted users. - [POST /users/block](https://microblog.dev/api/blocking-reporting/#post--users-block): Blocks and mutes a user. - [GET /users/blocking](https://microblog.dev/api/blocking-reporting/#get--users-blocking): Returns blocked users. - [DELETE /users/blocking/{id}](https://microblog.dev/api/blocking-reporting/#delete--users-blocking-id): Deletes a blocked user by ID. - [POST /users/mute](https://microblog.dev/api/blocking-reporting/#post--users-mute): Mutes a user or keyword for the authenticated user. - [GET /users/muting](https://microblog.dev/api/blocking-reporting/#get--users-muting): Returns muted users and keywords for the authenticated user. - [DELETE /users/muting/{id}](https://microblog.dev/api/blocking-reporting/#delete--users-muting-id): Deletes a muted user or keyword by ID. - [POST /users/muting/{id}](https://microblog.dev/api/blocking-reporting/#post--users-muting-id): Updates a muted user or keyword setting. - [POST /users/report](https://microblog.dev/api/blocking-reporting/#post--users-report): Reports a user for review. ### Users and Relationships Endpoints for user search, following, relationship checks, discovery suggestions, and user logs. - [POST /users/follow](https://microblog.dev/api/users/#post--users-follow): Follows a Micro.blog user or feed URL. - [GET /users/is_following](https://microblog.dev/api/users/#get--users-is_following): Checks whether the authenticated user follows another user. - [GET /users/discover/{username}](https://microblog.dev/api/users/#get--users-discover-username): Returns suggested users based on a user's follows. - [GET /users/following/{username}](https://microblog.dev/api/users/#get--users-following-username): Returns users followed by the given username. - [GET /users/search](https://microblog.dev/api/users/#get--users-search): Searches Micro.blog users. - [GET /users/logs](https://microblog.dev/api/users/#get--users-logs): Returns recent account log messages. - [GET /users/logs/errors](https://microblog.dev/api/users/#get--users-logs-errors): Returns recent account error log messages. - [POST /users/unfollow](https://microblog.dev/api/users/#post--users-unfollow): Unfollows a Micro.blog user. ### Profile Endpoints for profile-related metadata such as user pins. - [GET /users/pins/{username}](https://microblog.dev/api/profile/#get--users-pins-username): Returns profile pins for the given username. ### Markers Endpoints for reading and updating timeline marker positions. - [GET /posts/check](https://microblog.dev/api/markers/#get--posts-check): Checks for new timeline posts, publishing state, media processing state, and saved marker positions. - [POST /posts/markers](https://microblog.dev/api/markers/#post--posts-markers): Stores a marker position for a timeline channel. ### Conversations Endpoints for resolving and reading Micro.blog conversation threads. - [GET /conversation.js](https://microblog.dev/api/conversations/#get--conversation.js): Looks up a conversation for a post URL and returns it in the requested format. - [GET /posts/conversation](https://microblog.dev/api/conversations/#get--posts-conversation): Returns the conversation thread for a post, mention, favourite, or thread ID. ### Books and Bookshelves Endpoints for book search, bookshelves, bookshelf assignments, and reading goals. - [GET /books/search](https://microblog.dev/api/books/#get--books-search): Searches books for discovery and bookshelf workflows. - [POST /books](https://microblog.dev/api/books/#post--books): Creates a book and assigns it to a bookshelf. - [GET /books/bookshelves](https://microblog.dev/api/books/#get--books-bookshelves): Returns bookshelves in JSON Feed format. - [POST /books/bookshelves](https://microblog.dev/api/books/#post--books-bookshelves): Creates a bookshelf. - [POST /books/bookshelves/{bookshelf_id}/assign](https://microblog.dev/api/books/#post--books-bookshelves-bookshelf_id-assign): Assigns an existing or resolved book to a bookshelf. - [POST /books/bookshelves/{bookshelf_id}/cover/{book_id}](https://microblog.dev/api/books/#post--books-bookshelves-bookshelf_id-cover-book_id): Updates a book cover URL. - [DELETE /books/bookshelves/{bookshelf_id}/remove/{book_id}](https://microblog.dev/api/books/#delete--books-bookshelves-bookshelf_id-remove-book_id): Removes a book from a bookshelf. - [POST /books/bookshelves/{bookshelf_id}/save/{book_id}](https://microblog.dev/api/books/#post--books-bookshelves-bookshelf_id-save-book_id): Updates the finished date for a book on a bookshelf. - [GET /books/bookshelves/{id}](https://microblog.dev/api/books/#get--books-bookshelves-id): Returns books in a bookshelf in JSON Feed format. - [POST /books/bookshelves/{id}](https://microblog.dev/api/books/#post--books-bookshelves-id): Renames a bookshelf. - [GET /books/goals](https://microblog.dev/api/books/#get--books-goals): Returns reading goals in JSON Feed format. - [GET /books/goals/{id}](https://microblog.dev/api/books/#get--books-goals-id): Returns books for one reading goal in JSON Feed format. - [POST /books/goals/{id}](https://microblog.dev/api/books/#post--books-goals-id): Updates a reading goal target or progress. - [POST /books/openlibrary/signin](https://microblog.dev/api/books/#post--books-openlibrary-signin): Signs in to Open Library and returns the session value used by book cover workflows. ### Push Notifications Endpoints for registering, unregistering, and inspecting push notification devices. - [GET /users/push/info](https://microblog.dev/api/push/#get--users-push-info): Returns registered push devices for the authenticated user and push environment. - [POST /users/push/register](https://microblog.dev/api/push/#post--users-push-register): Registers a device token for push notifications. - [POST /users/push/unregister](https://microblog.dev/api/push/#post--users-push-unregister): Unregisters a device token for push notifications. ### Feeds and Reader Feedbin-compatible reader endpoints, feed highlights, recap settings, public JSON feeds, and feed discovery helpers. - [GET /blogroll.org.json](https://microblog.dev/api/feeds/#get--blogroll.org.json): Returns the public blogroll.org JSON feed. - [GET /feeds/highlights](https://microblog.dev/api/feeds/#get--feeds-highlights): Returns reader highlights in JSON Feed format. - [GET /feeds/photos.json](https://microblog.dev/api/feeds/#get--feeds-photos.json): Returns the public photos feed in JSON Feed format. - [POST /feeds/recap](https://microblog.dev/api/feeds/#post--feeds-recap): Builds or queues an HTML recap for reader entries. - [GET /feeds/recap/email](https://microblog.dev/api/feeds/#get--feeds-recap-email): Returns reader recap email settings. - [POST /feeds/recap/email](https://microblog.dev/api/feeds/#post--feeds-recap-email): Updates reader recap email settings. - [GET /feeds/v2/entries.json](https://microblog.dev/api/feeds/#get--feeds-v2-entries.json): Returns Feedbin-compatible entries. - [GET /feeds/v2/entries/{id}.json](https://microblog.dev/api/feeds/#get--feeds-v2-entries-id.json): Returns one Feedbin-compatible entry. - [GET /feeds/v2/feeds/{id}/entries.json](https://microblog.dev/api/feeds/#get--feeds-v2-feeds-id-entries.json): Returns entries for a single feed source. - [GET /feeds/v2/icons.json](https://microblog.dev/api/feeds/#get--feeds-v2-icons.json): Returns feed icon URLs for subscribed feeds. - [DELETE /feeds/v2/starred_entries.json](https://microblog.dev/api/feeds/#delete--feeds-v2-starred_entries.json): Unstars entries. - [GET /feeds/v2/starred_entries.json](https://microblog.dev/api/feeds/#get--feeds-v2-starred_entries.json): Returns starred entry IDs. - [POST /feeds/v2/starred_entries.json](https://microblog.dev/api/feeds/#post--feeds-v2-starred_entries.json): Stars entries. - [GET /feeds/v2/subscriptions.json](https://microblog.dev/api/feeds/#get--feeds-v2-subscriptions.json): Returns Feedbin-compatible subscriptions. - [POST /feeds/v2/subscriptions.json](https://microblog.dev/api/feeds/#post--feeds-v2-subscriptions.json): Creates a subscription from a feed URL. - [DELETE /feeds/v2/subscriptions/{id}.json](https://microblog.dev/api/feeds/#delete--feeds-v2-subscriptions-id.json): Deletes a subscription. - [GET /feeds/v2/subscriptions/{id}.json](https://microblog.dev/api/feeds/#get--feeds-v2-subscriptions-id.json): Returns one Feedbin-compatible subscription. - [PATCH /feeds/v2/subscriptions/{id}.json](https://microblog.dev/api/feeds/#patch--feeds-v2-subscriptions-id.json): Updates a subscription title. - [POST /feeds/v2/subscriptions/{id}/update.json](https://microblog.dev/api/feeds/#post--feeds-v2-subscriptions-id-update.json): Queues a refresh for a subscription. - [DELETE /feeds/v2/unread_entries.json](https://microblog.dev/api/feeds/#delete--feeds-v2-unread_entries.json): Marks entries as read. - [GET /feeds/v2/unread_entries.json](https://microblog.dev/api/feeds/#get--feeds-v2-unread_entries.json): Returns unread entry IDs. - [POST /feeds/v2/unread_entries.json](https://microblog.dev/api/feeds/#post--feeds-v2-unread_entries.json): Marks entries as unread. - [POST /feeds/v2/unread_entries/delete.json](https://microblog.dev/api/feeds/#post--feeds-v2-unread_entries-delete.json): Marks entries as read using Feedbin-compatible POST semantics. - [GET /feeds/{entry_id}/highlights](https://microblog.dev/api/feeds/#get--feeds-entry_id-highlights): Returns highlights for one reader entry in JSON Feed format. - [POST /feeds/{entry_id}/highlights](https://microblog.dev/api/feeds/#post--feeds-entry_id-highlights): Creates a highlight for a reader entry. - [DELETE /feeds/{entry_id}/highlights/{highlight_id}](https://microblog.dev/api/feeds/#delete--feeds-entry_id-highlights-highlight_id): Deletes a reader highlight. - [GET /feeds/{username}.json](https://microblog.dev/api/feeds/#get--feeds-username.json): Returns a public user feed in JSON Feed format. - [GET /feeds/{username}/bookmarks/{readlater_queue}.json](https://microblog.dev/api/feeds/#get--feeds-username-bookmarks-readlater_queue.json): Returns a private JSON Feed of bookmark and archived read-later links for a user queue. - [GET /feeds/{username}/mentions.json](https://microblog.dev/api/feeds/#get--feeds-username-mentions.json): Returns public mentions for a user in JSON Feed format. - [GET /feeds/{username}/readlater/{readlater_queue}.json](https://microblog.dev/api/feeds/#get--feeds-username-readlater-readlater_queue.json): Returns a private JSON Feed of read-later articles for a user queue. - [GET /feeds/{username}/webmentions.json](https://microblog.dev/api/feeds/#get--feeds-username-webmentions.json): Returns public webmentions for a user in JSON Feed format. ### Notes Endpoints for notes and notebooks. - [POST /notes](https://microblog.dev/api/notes/#post--notes): Creates a note, or updates an existing note when `id` is provided. - [GET /notes/for_book](https://microblog.dev/api/notes/#get--notes-for_book): Returns notes attached to a book ISBN in JSON Feed format. - [GET /notes/notebooks](https://microblog.dev/api/notes/#get--notes-notebooks): Returns notebooks for the authenticated user in JSON Feed format. - [POST /notes/notebooks](https://microblog.dev/api/notes/#post--notes-notebooks): Creates a notebook or updates an existing notebook when `id` is provided. - [DELETE /notes/notebooks/{id}](https://microblog.dev/api/notes/#delete--notes-notebooks-id): Deletes a notebook and its notes. - [GET /notes/notebooks/{id}](https://microblog.dev/api/notes/#get--notes-notebooks-id): Returns notes in a notebook in JSON Feed format. - [DELETE /notes/{note_id}](https://microblog.dev/api/notes/#delete--notes-note_id): Deletes a note by ID. - [GET /notes/{note_id}](https://microblog.dev/api/notes/#get--notes-note_id): Returns a single note by ID. - [GET /notes/{note_id}/versions](https://microblog.dev/api/notes/#get--notes-note_id-versions): Returns note versions in JSON Feed format. ### Movies Endpoints for movie and TV discovery, search, and posting helpers. - [GET /movies/discover](https://microblog.dev/api/movies/#get--movies-discover): Returns recent movie and TV activity in JSON Feed format. - [GET /movies/discover/{id}](https://microblog.dev/api/movies/#get--movies-discover-id): Returns TV season posting helpers for a TMDB show. - [GET /movies/discover/{id}/seasons/{number}](https://microblog.dev/api/movies/#get--movies-discover-id-seasons-number): Returns TV episode posting helpers for a TMDB show season. - [GET /movies/search](https://microblog.dev/api/movies/#get--movies-search): Searches TMDB movies and TV shows. ### Status Health check endpoint for Micro.blog. - [GET /status](https://microblog.dev/api/status/#get--status): Runs service health checks and returns a status page with a smiley face. ### Twitter Archive Endpoints for reading imported Twitter archive data. - [GET /twitter/archive/{site_id}/recent.json](https://microblog.dev/api/twitter-archive/#get--twitter-archive-site_id-recent.json): Returns recent imported Twitter archive posts in JSON Feed format. - [GET /twitter/archive/{site_id}/search.json](https://microblog.dev/api/twitter-archive/#get--twitter-archive-site_id-search.json): Searches imported Twitter archive posts in JSON Feed format. - [GET /twitter/archive/{site_id}/years.json](https://microblog.dev/api/twitter-archive/#get--twitter-archive-site_id-years.json): Returns years available in an imported Twitter archive. - [GET /twitter/archive/{site_id}/{year}/{month}.json](https://microblog.dev/api/twitter-archive/#get--twitter-archive-site_id-year-month.json): Returns imported Twitter archive posts for a year and month in JSON Feed format. ### Webmention Endpoints for receiving webmentions and reading conversation webmentions. - [GET /webmention](https://microblog.dev/api/webmention/#get--webmention): Returns webmentions for a target URL as JSON Feed, JF2, or Microformats data. - [POST /webmention](https://microblog.dev/api/webmention/#post--webmention): Receives a Webmention and queues processing. ### XML-RPC XML-RPC endpoint for MetaWeblog and Micro.blog-compatible clients. Use your Micro.blog username or email address with an app token as the password. - [POST /xmlrpc](https://microblog.dev/api/xml-rpc/#post--xmlrpc): Accepts XML-RPC MetaWeblog and Micro.blog API method calls. ## Example Projects - [Micro.blog App](https://microblog.dev/example-apps/#microblog): The Micro.blog mobile app is a React Native client that signs in with Micro.blog tokens, reads timelines, posts through Micropub, uploads media, manages bookmarks, and registers for push notifications. Source: [microdotblog/microblog-react](https://github.com/microdotblog/microblog-react). Flows: - Sign in and token verification: The app can verify an existing app token or request an email sign-in link that returns to the custom mobile URL scheme. - Profile, timelines, and discovery: Timeline screens use the posts APIs for profile lookups, discovery, conversations, and the signed-in user's replies. - Conversations and replies: Conversation screens fetch the reply thread, then post a reply with form data to avoid duplicate submissions. - Posting, editing, drafts, and media: The composer uses Micropub for configuration, categories, syndication targets, source queries, post creation, updates, deletion, and media uploads. - Relationships, muting, and reporting: Profile and safety controls use relationship endpoints for follow state, reports, muted users, muted keywords, and hiding other replies. - Push notifications: Device registration keeps push settings in sync with the signed-in Micro.blog account and the current platform environment. - Bookmarks and highlights: Bookmark screens load saved links, tags, recent tags, highlights, and per-bookmark metadata, then save tag changes back to Micro.blog. - IndieAuth and external blog protocols: The app can add external Micropub and XML-RPC services. For Micro.blog-hosted blogs, these same protocol endpoints are exposed by Micro.blog. - [Strata](https://microblog.dev/example-apps/#strata): Strata is a React Native app for Micro.blog notes, notebooks, bookmarks, highlights, and lightweight posting. It uses the Micro.blog notes APIs for encrypted note storage and Micropub for publishing and saving bookmark entries. Source: [microdotblog/strata](https://github.com/microdotblog/strata). Flows: - Sign in and token verification: Strata signs in through the Micro.blog account endpoints, using a custom redirect URL and app name for email sign-in. - Encrypted notes and notebooks: The notes screens list notebooks, fetch notebook feeds, create or rename notebooks, save encrypted note text, share or unshare notes, and delete notes. - Bookmarks, tags, and highlights: Strata's read-later views load bookmark feeds, filter by tag, update bookmark tags, delete bookmarks, fetch recent tags, list highlights, and delete highlights. - Micropub posting and bookmark creation: Strata uses Micropub to read posting configuration, categories, and syndication targets, publish posts, update posts, and create bookmark entries from URLs. - [Inkwell](https://microblog.dev/example-apps/#inkwell): Inkwell is a React Native reader app for Micro.blog feeds, subscriptions, read state, bookmarks, highlights, conversations, and AI-powered recaps. It uses IndieAuth for sign-in and the Feedbin-compatible Micro.blog reader APIs for timeline and subscription workflows. Source: [microdotblog/inkwell-react](https://github.com/microdotblog/inkwell-react). Flows: - IndieAuth sign in and token verification: Inkwell starts with an IndieAuth authorization URL, exchanges the callback code for an access token, then verifies that token with Micro.blog account metadata. - Subscriptions and feed timeline: The main feed loads subscriptions, feed icons, timeline pages, and entries for a single subscription, while subscription management creates, renames, and deletes followed feeds. - Read state and saved reader entries: Inkwell keeps reader state in sync by loading unread and starred entry IDs, marking entries read or unread, and starring or unstarring entries from the timeline. - Bookmarks and highlights: The bookmark and highlight views load saved items, create new bookmark entries through Micropub, delete saved bookmarks, and create or delete reader highlights tied to feed entries. - Reader detail, replies, and recaps: Entry detail screens can load Micro.blog conversation replies, request a generated reader recap, and read or update the weekly recap email setting. - [Epilogue](https://microblog.dev/example-apps/#epilogue): Epilogue is a React Native companion app for Micro.blog bookshelves. It signs in with Micro.blog, manages books and reading goals, saves encrypted notes for books, publishes book posts through Micropub, and explores movie and TV posting helpers. Source: [microdotblog/epilogue](https://github.com/microdotblog/epilogue). Flows: - Sign in and external blog authorization: Epilogue supports Micro.blog email sign-in, Sign in with Apple, pasted app tokens, and IndieAuth authorization for external Micropub blogs. - Bookshelves and reading progress: The main bookshelf UI lists shelves and books, copies search results into a shelf, moves existing books, removes books, saves finished dates, and updates custom covers. - Book discovery, goals, and Open Library: Epilogue searches Micro.blog's book index, shows recently discovered book posts, loads reading goals, edits goal targets, and requests an Open Library session for cover browsing. - Book notes: Book detail screens fetch encrypted notes attached to an ISBN, decrypt them locally, and save new or edited encrypted notes back to Micro.blog. - Micropub book posts: Epilogue reads Micropub configuration and source posts, then publishes new book posts, updates existing posts, and posts yearly reading-goal drafts. - Movies and TV discovery: Movie screens load recent movie activity, search TMDB-backed movie helpers, and expand TV shows into season and episode posting helpers.