Sylvia API Users API

The Users API from Sylvia API — 3 operation(s) for users.

Operations 5

GET /users/{username} Get user profile #
GET /users/{username}/posts Get user's posts #
GET /users/{username}/comments Get user's comments #
GET /reddit/u/{username}/about User profile metadata #
GET /reddit/u/{username}/{where} User content #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/sylvia-api-users-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

sylvia-api-users-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Sylvia Users API
  contact:
    name: Sylvia API
    url: https://sylvia-api.com
    email: support@sylvia-api.com
  license:
    name: Proprietary
    url: https://sylvia-api.com/terms
  x-refined-note:
  - x-agentic-access differs across the merged source definitions and was not carried
  version: '1.0'
  description: 'Operations tagged Users across 3 of this provider''s published API definitions: sylvia-api-openapi-2026-08-04.json, sylvia-api-openapi-2026-08-18.json, sylvia-api-openapi-2026-08-20.json. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api.sylvia-api.com/v1
  description: Production API server
security:
- ApiKeyAuth: []
tags:
- name: Users
paths:
  /users/{username}:
    get:
      summary: Get user profile
      description: 'Fetch Reddit user profile: karma, cake day, avatar, bio, etc.'
      operationId: getUser
      parameters:
      - name: username
        in: path
        description: Username (without u/)
        required: true
        schema:
          type: string
      responses:
        '200':
          description: User object
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
      tags:
      - Users
    servers:
    - url: https://api.sylvia-api.com/v1
      description: Production API server
  /users/{username}/posts:
    get:
      summary: Get user's posts
      description: Fetch posts submitted by a specific user with pagination.
      operationId: getUserPosts
      parameters:
      - name: username
        in: path
        description: Username (without u/)
        required: true
        schema:
          type: string
      - name: sort
        in: query
        description: Sort order
        schema:
          type: string
          enum:
          - new
          - top
          - controversial
          default: new
      - name: time
        in: query
        description: Time filter for 'top' sort
        schema:
          type: string
          enum:
          - hour
          - day
          - week
          - month
          - year
          - all
      - name: limit
        in: query
        description: Results per page (max 100)
        schema:
          type: integer
          minimum: 1
          maximum: 100
          default: 25
      - name: cursor
        in: query
        description: Pagination cursor
        schema:
          type: string
      responses:
        '200':
          description: Paginated posts
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
      tags:
      - Users
    servers:
    - url: https://api.sylvia-api.com/v1
      description: Production API server
  /users/{username}/comments:
    get:
      summary: Get user's comments
      description: Fetch comments made by a specific user with pagination.
      operationId: getUserComments
      parameters:
      - name: username
        in: path
        description: Username (without u/)
        required: true
        schema:
          type: string
      - name: sort
        in: query
        description: Sort order
        schema:
          type: string
          enum:
          - new
          - top
          - controversial
          default: new
      - name: time
        in: query
        description: Time filter for 'top' sort
        schema:
          type: string
          enum:
          - hour
          - day
          - week
          - month
          - year
          - all
      - name: limit
        in: query
        description: Results per page (max 100)
        schema:
          type: integer
          minimum: 1
          maximum: 100
          default: 25
      - name: cursor
        in: query
        description: Pagination cursor
        schema:
          type: string
      responses:
        '200':
          description: Paginated comments
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SearchResponse'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
      tags:
      - Users
    servers:
    - url: https://api.sylvia-api.com/v1
      description: Production API server
  /reddit/u/{username}/about:
    get:
      summary: User profile metadata
      description: 'Returns user profile info: name, karma, account age, avatar, and more.'
      operationId: getUserAbout
      parameters:
      - name: username
        in: path
        required: true
        description: Username (without u/)
        schema:
          type: string
      - name: format
        in: query
        description: Response format. 'reddit' (default) is raw JSON. 'markdown' is available on all tiers; 'minimal' and 'csv' require Strela; 'ndjson' requires Svetka; 'custom(name)' applies a saved template.
        schema:
          type: string
          enum:
          - reddit
          - minimal
          - ndjson
          - csv
          - markdown
          default: reddit
      responses:
        '200':
          description: User profile
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserResponse'
              example:
                success: true
                data:
                  user:
                    name: spez
                    karma: 8000000
                request_id: 00000000-0000-0000-0000-000000000000
          headers:
            X-RateLimit-Tier:
              $ref: '#/components/headers/X-RateLimit-Tier'
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/X-RateLimit-Reset'
            Retry-After:
              $ref: '#/components/headers/Retry-After'
        '401':
          $ref: '#/components/responses/Unauthorized_2'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
      tags:
      - Users
    servers:
    - url: https://api.sylvia-api.com/v1
      description: Production API server
  /reddit/u/{username}/{where}:
    get:
      summary: User content
      description: Returns a user's submitted posts, comments, or combined overview.
      operationId: getUserContent
      parameters:
      - name: username
        in: path
        required: true
        schema:
          type: string
      - name: where
        in: path
        required: true
        schema:
          type: string
          enum:
          - submitted
          - comments
          - overview
      - name: limit
        in: query
        description: Items per page (1-100, default 25)
        schema:
          type: integer
          minimum: 1
          maximum: 100
          default: 25
        example: 25
      - name: after
        in: query
        description: Pagination token from previous response
        schema:
          type: string
      - name: before
        in: query
        description: Pagination token for previous page
        schema:
          type: string
      - name: format
        in: query
        description: Response format. 'reddit' (default) is raw JSON. 'markdown' is available on all tiers; 'minimal' and 'csv' require Strela; 'ndjson' requires Svetka; 'custom(name)' applies a saved template.
        schema:
          type: string
          enum:
          - reddit
          - minimal
          - ndjson
          - csv
          - markdown
          default: reddit
      responses:
        '200':
          description: Paginated content
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ListingResponse'
              example:
                success: true
                data:
                  user:
                    name: spez
                    karma: 8000000
                request_id: 00000000-0000-0000-0000-000000000000
          headers:
            X-RateLimit-Tier:
              $ref: '#/components/headers/X-RateLimit-Tier'
            X-RateLimit-Limit:
              $ref: '#/components/headers/X-RateLimit-Limit'
            X-RateLimit-Remaining:
              $ref: '#/components/headers/X-RateLimit-Remaining'
            X-RateLimit-Reset:
              $ref: '#/components/headers/X-RateLimit-Reset'
            Retry-After:
              $ref: '#/components/headers/Retry-After'
        '401':
          $ref: '#/components/responses/Unauthorized_2'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
      tags:
      - Users
    servers:
    - url: https://api.sylvia-api.com/v1
      description: Production API server
components:
  schemas:
    SearchResponse:
      type: object
      properties:
        data:
          type: array
          items:
            type: object
        cursor:
          type:
          - string
          - 'null'
        has_more:
          type: boolean
        total:
          type:
          - integer
          - 'null'
    User:
      type: object
      properties:
        name:
          type: string
        icon:
          type:
          - string
          - 'null'
        karma:
          type: integer
        cake_day:
          type: integer
          format: int64
        is_mod:
          type: boolean
        is_gold:
          type: boolean
        verified:
          type: boolean
        has_verified_email:
          type: boolean
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
        message:
          type: string
        code:
          type: integer
    ListingData:
      type: object
      properties:
        posts:
          type: array
          items:
            $ref: '#/components/schemas/Post'
        after:
          type:
          - string
          - 'null'
    Post:
      type: object
      properties:
        id:
          type: string
        title:
          type: string
        selftext:
          type: string
        author:
          type: string
        subreddit:
          type: string
        score:
          type: integer
        upvote_ratio:
          type: number
        num_comments:
          type: integer
        created_utc:
          type: integer
          format: int64
        permalink:
          type: string
        url:
          type: string
        is_self:
          type: boolean
        over_18:
          type: boolean
        stickied:
          type: boolean
    User_2:
      type: object
      properties:
        name:
          type: string
        created_utc:
          type: integer
          format: int64
        link_karma:
          type: integer
        comment_karma:
          type: integer
        icon_img:
          type:
          - string
          - 'null'
    ErrorResponse_2:
      type: object
      properties:
        success:
          type: boolean
        error:
          type: string
        message:
          type: string
        status:
          type: integer
        code:
          type: string
        request_id:
          type: string
    Envelope:
      type: object
      properties:
        success:
          type: boolean
        message:
          type:
          - string
          - 'null'
        error:
          type:
          - string
          - 'null'
        request_id:
          type: string
    ListingResponse:
      allOf:
      - $ref: '#/components/schemas/Envelope'
      - type: object
        properties:
          data:
            $ref: '#/components/schemas/ListingData'
    UserResponse:
      allOf:
      - $ref: '#/components/schemas/Envelope'
      - type: object
        properties:
          data:
            $ref: '#/components/schemas/User_2'
    User_3:
      type: object
      properties:
        name:
          type: string
        created_utc:
          type: integer
          format: int64
        link_karma:
          type: integer
        comment_karma:
          type: integer
        icon_img:
          type:
          - string
          - 'null'
    ErrorResponse_3:
      type: object
      properties:
        success:
          type: boolean
        error:
          type: string
        message:
          type: string
        status:
          type: integer
        code:
          type: string
          enum:
          - BAD_REQUEST
          - UNAUTHORIZED
          - FORBIDDEN
          - NOT_FOUND
          - LOW_BALANCE
          - RATE_LIMITED
          - FEATURE_LOCKED
          - TIER_EXPIRED
          - REQUEST_FAILED
        request_id:
          type: string
    UserResponse_2:
      allOf:
      - $ref: '#/components/schemas/Envelope'
      - type: object
        properties:
          data:
            $ref: '#/components/schemas/User_3'
  responses:
    Unauthorized:
      description: Invalid or missing API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    NotFound:
      description: Resource not found
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    RateLimited:
      description: Rate limit exceeded
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    Unauthorized_2:
      description: Missing or invalid API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse_2'
    Unauthorized_3:
      description: Missing or invalid API key
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse_3'
  headers:
    X-RateLimit-Limit:
      description: Requests per second for the tier.
      schema:
        type: integer
    X-RateLimit-Tier:
      description: 'Rate limit tier: free | strela | svetka | enterprise.'
      schema:
        type: string
    Retry-After:
      description: Seconds until retry is allowed, present on 429.
      schema:
        type: integer
    X-RateLimit-Reset:
      description: Epoch milliseconds when the window resets.
      schema:
        type: integer
    X-RateLimit-Remaining:
      description: Remaining requests in the current window.
      schema:
        type: integer
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: API key for authentication. Get yours at https://sylvia-api.com
    AccountTokenAuth:
      type: apiKey
      in: header
      name: x-sylvia-auth
      description: Account token (SV_...) for account management endpoints. Sign in at https://sylvia-api.com to get yours.
x-refined-from:
- sylvia-api-openapi-2026-08-04.json
- sylvia-api-openapi-2026-08-18.json
- sylvia-api-openapi-2026-08-20.json