โน๏ธ Feeds syncing with Inkwell
Inkwell is our feed reader for Micro.blog. It has an API for syncing posts and unread status that is inspired by Feedbinโs API, plus a few other extra things to integrate with Micro.blog.
All API calls should authenticate with a Micro.blog token in an `Authorization` HTTP header as documented elsewhere in the help. Use the hostname `micro.blog`, not `micro.ink`.
`GET /feeds/v2/subscriptions.json`
* Returns the current userโs subscriptions.
* Supports `since` and `mode=extended`.
* Response ids are local subscription ids and local feed ids.
`GET /feeds/v2/subscriptions/:id.json`
* Returns a single subscription.
* Supports `mode=extended`.
* `:id` is the local subscription id.
`POST /feeds/v2/subscriptions.json`
* Creates a subscription.
* JSON body can include `feed_url` or `url`.
* Returns the subscription object and sets `Location` on success.
`PATCH /feeds/v2/subscriptions/:id.json`
* Updates a subscription title.
* JSON body: `title`.
* Returns the updated subscription object.
`POST /feeds/v2/subscriptions/:id/update.json`
* Queues a refresh for one subscription.
* Returns the subscription object.
* `:id` is the local subscription id.
`DELETE /feeds/v2/subscriptions/:id.json`
* Deletes a subscription.
* Returns `204 No Content` on success.
* `:id` is the local subscription id.
`GET /feeds/v2/entries.json`
* Returns entries for the current user.
* Supports `page`, `per_page`, `since`, `ids`, `read`, `starred`, `mode`, and `include_enclosure`.
* Response ids are local entry ids and local feed ids.
`GET /feeds/v2/entries/:id.json`
* Returns a single entry.
* Supports `mode=extended` and `include_enclosure=true`.
* `:id` is the local entry id.
`GET /feeds/highlights`
* Returns the current userโs highlights as a JSON Feed.
* Supports `limit` and `offset`.
* Includes highlight text and the related entry id.
`GET /feeds/:entry_id/highlights`
* Returns highlights for one entry as a JSON Feed.
* `:entry_id` is the local entry id.
* Requires access to that entry.
`POST /feeds/:entry_id/highlights`
* Creates a highlight for one entry.
* JSON body: `text`, `start`, `end`.
* Returns the new highlight id and total count for the entry.
`DELETE /feeds/:entry_id/highlights/:highlight_id`
* Deletes one highlight from an entry.
* Returns an empty JSON object.
* Both ids are local ids.
`GET /feeds/v2/icons.json`
* Returns feed icons for the current userโs subscriptions.
* Each item includes `host` and `url`.
* Only feeds with a known icon are included.
`GET /feeds/v2/feeds/:id/entries.json`
* Returns entries for one subscribed feed.
* Supports the same filtering as `GET /feeds/v2/entries.json` except `ids`.
* `:id` is the local feed id.
`GET /feeds/v2/unread_entries.json`
* Returns unread entry ids.
* Response ids are local entry ids.
* In Feedbin mode, local-only unread entries are preserved.
`POST /feeds/v2/unread_entries.json`
* Marks entries as unread.
* JSON body: `unread_entries` array of local entry ids.
* Returns the saved local entry ids.
`DELETE /feeds/v2/unread_entries.json`
* Marks entries as read.
* JSON body: `unread_entries` array of local entry ids.
* Returns the updated local entry ids.
`POST /feeds/v2/unread_entries/delete.json`
* Alternate read-marking endpoint for clients that prefer `POST`.
* JSON body: `unread_entries` array of local entry ids.
* Returns the updated local entry ids.
`GET /feeds/v2/starred_entries.json`
* Returns starred entry ids.
* Response ids are local entry ids.
* In Feedbin mode, local-only starred entries are preserved.
`POST /feeds/v2/starred_entries.json`
* Stars entries.
* JSON body: `starred_entries` array of local entry ids.
* Returns the saved local entry ids.
`DELETE /feeds/v2/starred_entries.json`
* Unstars entries.
* JSON body: `starred_entries` array of local entry ids.
* Returns the updated local entry ids.
`POST /feeds/recap`
* Generates and returns the Reading Recap.
* JSON body is an array of entry IDs.
* If the Reading Recap isnโt ready yet, youโll get back an HTTP 202.
* We recommend trying every few seconds until you get a 200 OK, but give up after 1-2 minutes.