Lobsters Users API

Lobsters user profiles

OpenAPI Specification

lobsters-users-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Lobsters Comments Users API
  description: The Lobsters public API provides read access to stories, comments, tags, and user profiles from the technology-focused link aggregation community. Endpoints return JSON and are available without authentication for public data. Stories can be retrieved by hottest or newest ranking, filtered by tag, and paginated by page number.
  version: 1.0.0
  contact:
    url: https://lobste.rs/about
  license:
    name: BSD 3-Clause
    url: https://github.com/lobsters/lobsters/blob/main/LICENSE
servers:
- url: https://lobste.rs
  description: Lobsters production server
tags:
- name: Users
  description: Lobsters user profiles
paths:
  /~{username}.json:
    get:
      operationId: getUser
      summary: Get a user profile
      description: Returns a user's public profile including karma, about text, avatar, and invitation lineage.
      tags:
      - Users
      parameters:
      - name: username
        in: path
        description: Lobsters username
        required: true
        schema:
          type: string
      responses:
        '200':
          description: User profile
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
        '404':
          description: User not found
components:
  schemas:
    User:
      type: object
      description: A Lobsters community member's public profile
      properties:
        username:
          type: string
          description: Unique username for the account
          example: alice
        created_at:
          type: string
          format: date-time
          description: ISO 8601 timestamp when the account was created
        is_admin:
          type: boolean
          description: Whether the user has administrator privileges
        is_moderator:
          type: boolean
          description: Whether the user has moderator privileges
        karma:
          type: integer
          description: Karma score derived from story and comment votes (omitted for admins)
        homepage:
          type: string
          format: uri
          nullable: true
          description: User's personal homepage URL
        about:
          type: string
          description: HTML-rendered about/bio text
        avatar_url:
          type: string
          format: uri
          description: URL of the user's avatar image
        invited_by_user:
          type: string
          nullable: true
          description: Username of the user who sent the invitation; null for founding members
        github_username:
          type: string
          nullable: true
          description: GitHub username if linked (omitted when not set)
        mastodon_username:
          type: string
          nullable: true
          description: Mastodon handle if linked (omitted when not set)
      required:
      - username
      - created_at
      - is_admin
      - is_moderator
      - homepage
      - about
      - avatar_url