> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ofauth.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List user posts

> List user posts

**Permission Required:** `posts:read`



## OpenAPI

````yaml https://api.ofauth.com/openapi.json get /v2/access/users/:userId/posts
openapi: 3.1.0
info:
  title: OFAuth API
  version: 1.0.0
  description: >-
    OFAuth API including Account, Connections, Link, Access, Dynamic Rules,
    Vault+, and Realtime webhook contracts
  contact:
    email: support@ofauth.com
    url: https://ofauth.com/
servers:
  - url: https://api.ofauth.com
security:
  - ApiKey: []
tags:
  - name: Account
    description: Account management endpoints.
  - name: Connections
    description: Connection management endpoints.
  - name: Link
    description: Link authentication and session endpoints.
  - name: Access
    description: All Access related endpoints.
  - name: Analytics
    description: 'Access: charts, tops, and performance metrics.'
  - name: Earnings
    description: 'Access: earnings charts, transactions, and chargebacks.'
  - name: Messages
    description: 'Access: messaging, chats, queue, and mass messaging.'
  - name: Posts
    description: 'Access: create, edit, list, and manage posts.'
  - name: Promotions
    description: 'Access: promotions, trials, and bundles.'
  - name: Users
    description: 'Access: user profiles, subscriptions, and actions.'
  - name: Vault
    description: 'Access: vault folders, media, and management.'
  - name: Upload
    description: 'Access: media upload and processing.'
  - name: Self
    description: 'Access: authenticated account details and settings.'
  - name: Stories
    description: 'Access: stories listing and management.'
  - name: Subscriptions
    description: 'Access: subscription offers, discounts, and management.'
  - name: Realtime
    description: >-
      Realtime webhook delivery contracts, including relayed OnlyFans websocket
      events.
  - name: Dynamic Rules
    description: Dynamic signing rules operations.
  - name: Vault+
    description: Vault+ caching and management.
externalDocs:
  description: OFAuth Developer Documentation
  url: https://docs.ofauth.com
paths:
  /v2/access/users/:userId/posts:
    get:
      tags:
        - Posts
      summary: List user posts
      description: |-
        List user posts

        **Permission Required:** `posts:read`
      parameters:
        - schema:
            type: string
            nullable: true
            minLength: 1
            description: User ID (numeric or username)
          required: false
          description: User ID (numeric or username)
          name: userId
          in: path
        - schema:
            type: integer
            minimum: 1
            maximum: 50
            default: 10
            description: Number of posts to return (1-50)
          required: false
          description: Number of posts to return (1-50)
          name: limit
          in: query
        - schema:
            type: string
            enum:
              - newest
              - oldest
              - most_liked
              - most_tipped
            default: newest
            description: Sort posts by newest, oldest, most liked, or most tipped
          required: false
          description: Sort posts by newest, oldest, most liked, or most tipped
          name: sort
          in: query
        - schema:
            type: boolean
            nullable: true
            default: false
            description: Include pinned posts
          required: false
          description: Include pinned posts
          name: pinned
          in: query
        - schema:
            type: string
            pattern: ^\d+\.\d{6}$
            description: >-
              Pagination cursor: get posts before this time (use the
              `tailMarker` from the response here). Accepts ISO datetime,
              seconds, or seconds.fraction.
          required: false
          description: >-
            Pagination cursor: get posts before this time (use the `tailMarker`
            from the response here). Accepts ISO datetime, seconds, or
            seconds.fraction.
          name: before
          in: query
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  list:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: number
                        canDelete:
                          type: boolean
                        canEdit:
                          type: boolean
                        mediaCount:
                          type: number
                        media:
                          type: array
                          items:
                            type: object
                            properties:
                              id:
                                type: number
                              type:
                                type: string
                                enum:
                                  - photo
                                  - video
                                  - gif
                                  - audio
                              convertedToVideo:
                                type: boolean
                              canView:
                                type: boolean
                              hasError:
                                type: boolean
                              createdAt:
                                type: string
                              isReady:
                                type: boolean
                              duration:
                                type: number
                              releaseForms:
                                type: array
                                items:
                                  type: object
                                  properties:
                                    id:
                                      type: number
                                    name:
                                      type: string
                                    partnerSource:
                                      type: string
                                    type:
                                      type: string
                                    user:
                                      type: object
                                      properties:
                                        view:
                                          type: string
                                        id:
                                          type: number
                                        name:
                                          type: string
                                        username:
                                          type: string
                                        isVerified:
                                          type: boolean
                                        avatar:
                                          type: string
                                        avatarThumbs:
                                          type: object
                                          properties:
                                            c50:
                                              type: string
                                            c144:
                                              type: string
                                          required:
                                            - c50
                                            - c144
                                        ivStatus:
                                          type: string
                                        isFromGuest:
                                          type: boolean
                                      required:
                                        - view
                                        - id
                                        - name
                                        - username
                                        - isVerified
                                        - avatar
                                        - avatarThumbs
                                        - ivStatus
                                        - isFromGuest
                                  required:
                                    - id
                                    - name
                                    - partnerSource
                                    - type
                              hasCustomPreview:
                                type: boolean
                              videoSources:
                                type: object
                                properties:
                                  '240':
                                    type: string
                                    nullable: true
                                  '720':
                                    type: string
                                    nullable: true
                              files:
                                type: object
                                properties:
                                  full:
                                    type: object
                                    properties:
                                      url:
                                        type: string
                                      width:
                                        type: number
                                      height:
                                        type: number
                                      size:
                                        type: number
                                      sources:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            url:
                                              type: string
                                            width:
                                              type: number
                                            height:
                                              type: number
                                            type:
                                              type: string
                                          required:
                                            - url
                                    required:
                                      - url
                                      - sources
                                  thumb:
                                    type: object
                                    properties:
                                      url:
                                        type: string
                                      width:
                                        type: number
                                      height:
                                        type: number
                                      size:
                                        type: number
                                    required:
                                      - url
                                  preview:
                                    type: object
                                    properties:
                                      url:
                                        type: string
                                      width:
                                        type: number
                                      height:
                                        type: number
                                      size:
                                        type: number
                                      options:
                                        type: array
                                        items:
                                          type: object
                                          properties:
                                            url:
                                              type: string
                                            width:
                                              type: number
                                            height:
                                              type: number
                                            type:
                                              type: string
                                          required:
                                            - url
                                    required:
                                      - url
                                      - options
                                  squarePreview:
                                    type: object
                                    properties:
                                      url:
                                        type: string
                                      width:
                                        type: number
                                      height:
                                        type: number
                                      size:
                                        type: number
                                    required:
                                      - url
                                required:
                                  - full
                            required:
                              - id
                              - type
                              - convertedToVideo
                              - canView
                              - hasError
                              - createdAt
                              - isReady
                              - releaseForms
                        canViewMedia:
                          type: boolean
                        author:
                          type: object
                          properties:
                            id:
                              type: number
                            _view:
                              type: string
                          required:
                            - id
                            - _view
                        responseType:
                          type: string
                        postedAt:
                          type: string
                        postedAtPrecise:
                          type: string
                        isMarkdownDisabled:
                          type: boolean
                        isOpened:
                          type: boolean
                        canToggleFavorite:
                          type: boolean
                        tipsAmount:
                          type: string
                        text:
                          type: string
                        isFavorite:
                          type: boolean
                        canComment:
                          type: boolean
                        favoritesCount:
                          type: number
                        isMediaReady:
                          type: boolean
                        rawText:
                          type: string
                      required:
                        - id
                        - canDelete
                        - canEdit
                        - mediaCount
                        - media
                        - canViewMedia
                        - responseType
                        - postedAt
                        - postedAtPrecise
                        - isMarkdownDisabled
                        - isOpened
                        - canToggleFavorite
                        - tipsAmount
                        - text
                        - isFavorite
                        - canComment
                        - favoritesCount
                        - isMediaReady
                        - rawText
                  hasMore:
                    type: boolean
                  headMarker:
                    type: string
                  tailMarker:
                    type: string
                  counters:
                    type: object
                    properties:
                      audiosCount:
                        type: number
                      photosCount:
                        type: number
                      videosCount:
                        type: number
                      mediasCount:
                        type: number
                      postsCount:
                        type: number
                      streamsCount:
                        type: number
                      archivedPostsCount:
                        type: number
                      privateArchivedPostsCount:
                        type: number
                    required:
                      - audiosCount
                      - photosCount
                      - videosCount
                      - mediasCount
                      - postsCount
                      - streamsCount
                      - archivedPostsCount
                      - privateArchivedPostsCount
                required:
                  - list
                  - hasMore
                  - headMarker
                  - tailMarker
                  - counters
        '400':
          description: Bad Request
        '401':
          description: Unauthorized
        '403':
          description: Forbidden
        '429':
          description: Rate Limit Exceeded
        '500':
          description: Internal Server Error
        '502':
          description: Bad Gateway
      security:
        - ApiKey: []
          ConnectionId: []
components:
  securitySchemes:
    ApiKey:
      type: apiKey
      name: apiKey
      in: header
      description: >-
        Your OFAuth [API key](/quickstart#2-copy-your-api-key) for
        authenticating requests.
    ConnectionId:
      type: apiKey
      name: x-connection-id
      in: header
      description: >-
        Requires a [connection](/guides/connections) via the x-connection-id
        header.

````