Focusd

A Calm RSS Reader

Turn your feeds into a daily digest.

There's only 1 endpoint: /api.

It accepts POST and GET requests, and requires an api_key parameter set (ideally in URL query).

Any parameter can be sent as Form Data or JSON, as long as the Content-Type header matches what you're sending — otherwise it'll be ignored).

For GET:

It will return an array of the current saved URLs for your next Daily Digest (which can be added via the API or automatically as new feed items are found).

Here's an example request:

curl "https://focusd.co/api?api_key=some-fake-api-key"

And an example response:

[
  {
    "url": "https://focusd.co",
    "title": "Focusd - A Calm RSS Reader"
  },
  {
    "url": "https://thoughts.brunobernardino.com",
    "title": "Thoughts"
  }
]

For POST:

It adds a new Saved URL to your next Daily Digest.

It will return a simple {"message": "success"} if all goes well, otherwise it'll show you an error.

It requires a url parameter, and will accept a title as well (otherwise it will default to the url).

Here's an example request:

curl -X "POST" "https://focusd.co/api?api_key=some-fake-api-key" \
     -H 'Content-Type: application/json' \
     -d $'{
  "url": "https://focusd.co",
  "title": "Focusd - A Calm RSS Reader"
}'

And an example response:

{
 "message": "success"
}

For errors:

It will return a simple {"code": number, "message": "description"} and the appropriate HTTP Status code (401 on bad/missing API Key and 400 on missing required field).