Lobsters

App · News · 9 actions

Read Lobsters, the computing link aggregator: pull the Hottest, Newest and Active feeds, follow a tag, a category, a website or a person, and open any story with its full comment thread.

Actions

ActionWhat it does
Get a commentRead one comment on its own: its text, its score, who wrote it and which story it belongs to.
Get a storyRead one story together with its whole comment thread.
Get someone's profileRead a Lobsters profile: how long they have been a member, their karma, their write-up, who invited them, and the GitHub and Mastodon accounts they have linked.
Get someone's storiesRead the stories one person has submitted to Lobsters, newest first.
Get storiesRead one of Lobsters' three front-page feeds: Hottest (the front page, ranked by the site's own hotness), Newest (in the order they were submitted) or Active (whatever is being discussed right now).
Get stories from a siteRead every story Lobsters holds that links to one website, newest first: everything from lwn.net, or from your own blog.
Get stories in a categoryRead the stories in one of the twelve groups Lobsters files its tags under: programming languages, operating systems, tools, practices and so on.
Get stories with a tagRead the stories carrying one or more Lobsters tags, newest first: 'rust', 'security', 'ask' and the hundred-odd others the site files stories under.
List tagsRead every tag Lobsters files stories under, alphabetically, each with the site's own description of it and the category it belongs to.

Get a comment

Read one comment on its own: its text, its score, who wrote it and which story it belongs to. Takes the comment's id or any link to it, including the '#c_…' link a browser copies from the middle of a thread.

Inputs

CommentcommenttextRequired
The comment's id or a link to it.

Outputs

commentobject
Example output
{
  "comment": {
    "comment": "It was a level-headed piece.",
    "comment_html": "<p>It was a level-headed piece.</p>",
    "commenter": "cpurdy",
    "created_at": "2026-09-14T14:30:17.379-05:00",
    "created_at_utc": "2026-09-14T19:30:17.379000+00:00",
    "depth": 0,
    "flags": 0,
    "is_deleted": false,
    "is_moderated": false,
    "last_edited_at": "2026-09-14T14:30:17.047-05:00",
    "last_edited_at_utc": "2026-09-14T19:30:17.047000+00:00",
    "lobsters_url": "https://lobste.rs/c/xxi38g",
    "parent_comment": null,
    "score": 30,
    "short_id": "xxi38g",
    "story_short_id": "1ifr5f",
    "url": "https://lobste.rs/s/1ifr5f/contagion_fear#c_xxi38g"
  }
}

Get a story

Read one story together with its whole comment thread. Takes the six-character id Lobsters gives a story or any lobste.rs link to it, including one copied from a browser. Comments come back as a flat list, each carrying how deep in the thread it sits and which comment it replies to, so a step can read them straight through or rebuild the thread from them.

Inputs

StorystorytextRequired
The story's id or a link to it, such as https://lobste.rs/s/1ifr5f.

Outputs

commentslist
storyobject
Example output
{
  "comments": [
    {
      "comment": "It was a level-headed piece.",
      "comment_html": "<p>It was a level-headed piece.</p>",
      "commenter": "cpurdy",
      "created_at": "2026-09-14T14:30:17.379-05:00",
      "created_at_utc": "2026-09-14T19:30:17.379000+00:00",
      "depth": 0,
      "flags": 0,
      "is_deleted": false,
      "is_moderated": false,
      "last_edited_at": "2026-09-14T14:30:17.047-05:00",
      "last_edited_at_utc": "2026-09-14T19:30:17.047000+00:00",
      "lobsters_url": "https://lobste.rs/c/xxi38g",
      "parent_comment": null,
      "score": 30,
      "short_id": "xxi38g",
      "story_short_id": "1ifr5f",
      "url": "https://lobste.rs/s/1ifr5f/contagion_fear#c_xxi38g"
    }
  ],
  "story": {
    "comment_count": 36,
    "comments_url": "https://lobste.rs/s/1ifr5f/contagion_fear",
    "created_at": "2026-09-14T11:53:14.313-05:00",
    "created_at_utc": "2026-09-14T16:53:14.313000+00:00",
    "description": null,
    "description_html": null,
    "flags": 1,
    "is_text_post": false,
    "lobsters_url": "https://lobste.rs/s/1ifr5f",
    "score": 131,
    "short_id": "1ifr5f",
    "submitter": "rrampage",
    "submitter_is_author": false,
    "tags": [
      "vibecoding"
    ],
    "title": "The contagion of fear",
    "url": "https://bcantrill.dtrace.org/2026/09/13/the-contagion-of-fear/"
  }
}

Get someone's profile

Read a Lobsters profile: how long they have been a member, their karma, their write-up, who invited them, and the GitHub and Mastodon accounts they have linked. Takes the username in any capitalisation or a link to the profile.

Inputs

UsernameusernametextRequired
Whose profile to read.

Outputs

userobject
Example output
{
  "user": {
    "about": "<p>Hi, I'm Peter Bhat Harkins.</p>",
    "avatar_url": "https://lobste.rs/avatars/pushcx-100.png",
    "created_at": "2012-08-14T20:25:08.000-05:00",
    "created_at_utc": "2012-08-15T01:25:08+00:00",
    "github_username": "pushcx",
    "invited_by": "jcs",
    "is_admin": true,
    "is_moderator": true,
    "karma": null,
    "lobsters_url": "https://lobste.rs/~pushcx",
    "mastodon_username": "lobsters",
    "username": "pushcx"
  }
}

Get someone's stories

Read the stories one person has submitted to Lobsters, newest first. Takes the username in any capitalisation, with or without its leading '~', or a link to their profile.

Inputs

UsernameusernametextRequired
Whose submissions to read.
Number of storieslimitnumber
How many stories to return (1–100). Defaults to 25, which is one page on Lobsters; larger numbers read further back.From 1 to 100. Default: 25.

Outputs

result_countnumber
resultslist
usernametext
Example output
{
  "result_count": 1,
  "results": [
    {
      "comment_count": 36,
      "comments_url": "https://lobste.rs/s/1ifr5f/contagion_fear",
      "created_at": "2026-09-14T11:53:14.313-05:00",
      "created_at_utc": "2026-09-14T16:53:14.313000+00:00",
      "description": null,
      "description_html": null,
      "flags": 1,
      "is_text_post": false,
      "lobsters_url": "https://lobste.rs/s/1ifr5f",
      "score": 131,
      "short_id": "1ifr5f",
      "submitter": "rrampage",
      "submitter_is_author": false,
      "tags": [
        "vibecoding"
      ],
      "title": "The contagion of fear",
      "url": "https://bcantrill.dtrace.org/2026/09/13/the-contagion-of-fear/"
    }
  ],
  "username": "rrampage"
}

Get stories

Read one of Lobsters' three front-page feeds: Hottest (the front page, ranked by the site's own hotness), Newest (in the order they were submitted) or Active (whatever is being discussed right now). Stories come back in the feed's own order, each with its link, tags, score, comment count and who submitted it.

Inputs

Feedfeedtext
Which feed to read. Defaults to Hottest, the site's front page.One of: hottest (Hottest (the front page)), newest (Newest (as submitted)), active (Active (most discussion right now)). Default: hottest.
Number of storieslimitnumber
How many stories to return (1–100). Defaults to 25, which is one page on Lobsters; larger numbers read further back.From 1 to 100. Default: 25.

Outputs

feedtext
result_countnumber
resultslist
Example output
{
  "feed": "hottest",
  "result_count": 1,
  "results": [
    {
      "comment_count": 36,
      "comments_url": "https://lobste.rs/s/1ifr5f/contagion_fear",
      "created_at": "2026-09-14T11:53:14.313-05:00",
      "created_at_utc": "2026-09-14T16:53:14.313000+00:00",
      "description": null,
      "description_html": null,
      "flags": 1,
      "is_text_post": false,
      "lobsters_url": "https://lobste.rs/s/1ifr5f",
      "score": 131,
      "short_id": "1ifr5f",
      "submitter": "rrampage",
      "submitter_is_author": false,
      "tags": [
        "vibecoding"
      ],
      "title": "The contagion of fear",
      "url": "https://bcantrill.dtrace.org/2026/09/13/the-contagion-of-fear/"
    }
  ]
}

Get stories from a site

Read every story Lobsters holds that links to one website, newest first: everything from lwn.net, or from your own blog. Takes a bare domain or any page URL on it; the path and a leading 'www.' are dropped for you, because Lobsters files stories under the bare host.

Inputs

WebsitesitetextRequired
The website to read. A domain or any URL on it both work.
Number of storieslimitnumber
How many stories to return (1–100). Defaults to 25, which is one page on Lobsters; larger numbers read further back.From 1 to 100. Default: 25.

Outputs

result_countnumber
resultslist
sitetext
Example output
{
  "result_count": 1,
  "results": [
    {
      "comment_count": 36,
      "comments_url": "https://lobste.rs/s/1ifr5f/contagion_fear",
      "created_at": "2026-09-14T11:53:14.313-05:00",
      "created_at_utc": "2026-09-14T16:53:14.313000+00:00",
      "description": null,
      "description_html": null,
      "flags": 1,
      "is_text_post": false,
      "lobsters_url": "https://lobste.rs/s/1ifr5f",
      "score": 131,
      "short_id": "1ifr5f",
      "submitter": "rrampage",
      "submitter_is_author": false,
      "tags": [
        "vibecoding"
      ],
      "title": "The contagion of fear",
      "url": "https://bcantrill.dtrace.org/2026/09/13/the-contagion-of-fear/"
    }
  ],
  "site": "lwn.net"
}

Get stories in a category

Read the stories in one of the twelve groups Lobsters files its tags under: programming languages, operating systems, tools, practices and so on. Broader than a tag: choosing 'Programming languages' returns everything tagged with any of the thirty-odd language tags at once.

Inputs

CategorycategorytextRequired
Which group of tags to read.One of: compsci (Computer science), languages (Programming languages), os (Operating systems), platforms, tools, practices, interaction (Design and accessibility), field (Adjacent fields), culture, genre (Kind of story), format (Format (video, book, Ask, Show)), lobsters (About Lobsters itself).
Number of storieslimitnumber
How many stories to return (1–25). Defaults to 25. Lobsters serves a category as a single page, so 25 is everything it will give.From 1 to 25. Default: 25.

Outputs

categorytext
result_countnumber
resultslist
Example output
{
  "category": "languages",
  "result_count": 1,
  "results": [
    {
      "comment_count": 36,
      "comments_url": "https://lobste.rs/s/1ifr5f/contagion_fear",
      "created_at": "2026-09-14T11:53:14.313-05:00",
      "created_at_utc": "2026-09-14T16:53:14.313000+00:00",
      "description": null,
      "description_html": null,
      "flags": 1,
      "is_text_post": false,
      "lobsters_url": "https://lobste.rs/s/1ifr5f",
      "score": 131,
      "short_id": "1ifr5f",
      "submitter": "rrampage",
      "submitter_is_author": false,
      "tags": [
        "vibecoding"
      ],
      "title": "The contagion of fear",
      "url": "https://bcantrill.dtrace.org/2026/09/13/the-contagion-of-fear/"
    }
  ]
}

Get stories with a tag

Read the stories carrying one or more Lobsters tags, newest first: 'rust', 'security', 'ask' and the hundred-odd others the site files stories under. Picking several widens the result rather than narrowing it: a story carrying any one of them is included. The tag list is fetched from Lobsters, so it is always the tags the site currently has.

Inputs

TagstagslistRequired
The tags to read. A story carrying any one of them is included.
Number of storieslimitnumber
How many stories to return (1–100). Defaults to 25, which is one page on Lobsters; larger numbers read further back.From 1 to 100. Default: 25.

Outputs

result_countnumber
resultslist
tagslist
Example output
{
  "result_count": 1,
  "results": [
    {
      "comment_count": 36,
      "comments_url": "https://lobste.rs/s/1ifr5f/contagion_fear",
      "created_at": "2026-09-14T11:53:14.313-05:00",
      "created_at_utc": "2026-09-14T16:53:14.313000+00:00",
      "description": null,
      "description_html": null,
      "flags": 1,
      "is_text_post": false,
      "lobsters_url": "https://lobste.rs/s/1ifr5f",
      "score": 131,
      "short_id": "1ifr5f",
      "submitter": "rrampage",
      "submitter_is_author": false,
      "tags": [
        "vibecoding"
      ],
      "title": "The contagion of fear",
      "url": "https://bcantrill.dtrace.org/2026/09/13/the-contagion-of-fear/"
    }
  ],
  "tags": [
    "rust"
  ]
}

List tags

Read every tag Lobsters files stories under, alphabetically, each with the site's own description of it and the category it belongs to. This is the vocabulary the other actions filter on, so it is what a workflow reads to decide which tag to follow.

Inputs

None.

Outputs

tag_countnumber
tagslist
Example output
{
  "tag_count": 1,
  "tags": [
    {
      "category": "languages",
      "description": "Rust programming",
      "is_active": true,
      "is_media": false,
      "is_privileged": false,
      "lobsters_url": "https://lobste.rs/t/rust",
      "tag": "rust"
    }
  ]
}

On this page