X (Twitter) · Capability

X API v2 — Users

X API v2 — Users. 45 operations. Lead operation: X Get List Followers. Self-contained Naftiko capability covering one Twitter business surface.

Run with Naftiko TwitterUsers

What You Can Do

GET
Getlistsfollowers — X Get List Followers
/v1/2/lists/{id}/followers
GET
Getlistsmembers — X Get List Members
/v1/2/lists/{id}/members
GET
Getpostslikingusers — X Get Liking Users
/v1/2/tweets/{id}/liking-users
GET
Getpostsrepostedby — X Get Reposted by
/v1/2/tweets/{id}/retweeted-by
GET
Getusersbyids — X Get Users by IDs
/v1/2/users
GET
Getusersbyusernames — X Get Users by Usernames
/v1/2/users/by
GET
Getusersbyusername — X Get User by Username
/v1/2/users/by/username/{username}
GET
Getusersme — X Get My User
/v1/2/users/me
GET
Getuserspublickeys — X Get Public Keys for Multiple Users
/v1/2/users/public-keys
GET
Getusersrepostsofme — X Get Reposts of Me
/v1/2/users/reposts-of-me
GET
Searchusers — X Search Users
/v1/2/users/search
GET
Getusersbyid — X Get User by ID
/v1/2/users/{id}
GET
Getusersaffiliates — X Get Affiliates
/v1/2/users/{id}/affiliates
GET
Getusersblocking — X Get Blocking
/v1/2/users/{id}/blocking
GET
Getusersbookmarks — X Get Bookmarks
/v1/2/users/{id}/bookmarks
POST
Createusersbookmark — X Create Bookmark
/v1/2/users/{id}/bookmarks
GET
Getusersbookmarkfolders — X Get Bookmark Folders
/v1/2/users/{id}/bookmarks/folders
GET
Getusersbookmarksbyfolderid — X Get Bookmarks by Folder ID
/v1/2/users/{id}/bookmarks/folders/{folder-id}
DELETE
Deleteusersbookmark — X Delete Bookmark
/v1/2/users/{id}/bookmarks/{tweet-id}
POST
Blockusersdms — X Block DMs
/v1/2/users/{id}/dm/block
POST
Unblockusersdms — X Unblock DMs
/v1/2/users/{id}/dm/unblock
GET
Getusersfollowedlists — X Get Followed Lists
/v1/2/users/{id}/followed-lists
POST
Followlist — X Follow List
/v1/2/users/{id}/followed-lists
DELETE
Unfollowlist — X Unfollow List
/v1/2/users/{id}/followed-lists/{list-id}
GET
Getusersfollowers — X Get Followers
/v1/2/users/{id}/followers
GET
Getusersfollowing — X Get Following
/v1/2/users/{id}/following
POST
Followuser — X Follow User
/v1/2/users/{id}/following
GET
Getuserslikedposts — X Get Liked Posts
/v1/2/users/{id}/liked-tweets
POST
Likepost — X Like Post
/v1/2/users/{id}/likes
DELETE
Unlikepost — X Unlike Post
/v1/2/users/{id}/likes/{tweet-id}
GET
Getuserslistmemberships — X Get List Memberships
/v1/2/users/{id}/list-memberships
GET
Getusersmentions — X Get Mentions
/v1/2/users/{id}/mentions
GET
Getusersmuting — X Get Muting
/v1/2/users/{id}/muting
POST
Muteuser — X Mute User
/v1/2/users/{id}/muting
GET
Getusersownedlists — X Get Owned Lists
/v1/2/users/{id}/owned-lists
GET
Getuserspinnedlists — X Get Pinned Lists
/v1/2/users/{id}/pinned-lists
POST
Pinlist — X Pin List
/v1/2/users/{id}/pinned-lists
DELETE
Unpinlist — X Unpin List
/v1/2/users/{id}/pinned-lists/{list-id}
GET
Getuserspublickey — X Get User Public Keys
/v1/2/users/{id}/public-keys
POST
Repostpost — X Repost Post
/v1/2/users/{id}/retweets
DELETE
Unrepostpost — X Unrepost Post
/v1/2/users/{id}/retweets/{source-tweet-id}
GET
Getuserstimeline — X Get Timeline
/v1/2/users/{id}/timelines/reverse-chronological
GET
Getusersposts — X Get Posts
/v1/2/users/{id}/tweets
DELETE
Unfollowuser — X Unfollow User
/v1/2/users/{source-user-id}/following/{target-user-id}
DELETE
Unmuteuser — X Unmute User
/v1/2/users/{source-user-id}/muting/{target-user-id}

MCP Tools

x-get-list-followers

X Get List Followers

read-only idempotent
x-get-list-members

X Get List Members

read-only idempotent
x-get-liking-users

X Get Liking Users

read-only idempotent
x-get-reposted

X Get Reposted by

read-only idempotent
x-get-users-ids

X Get Users by IDs

read-only idempotent
x-get-users-usernames

X Get Users by Usernames

read-only idempotent
x-get-user-username

X Get User by Username

read-only idempotent
x-get-my-user

X Get My User

read-only idempotent
x-get-public-keys-multiple

X Get Public Keys for Multiple Users

read-only idempotent
x-get-reposts-me

X Get Reposts of Me

read-only idempotent
x-search-users

X Search Users

read-only idempotent
x-get-user-id

X Get User by ID

read-only idempotent
x-get-affiliates

X Get Affiliates

read-only idempotent
x-get-blocking

X Get Blocking

read-only idempotent
x-get-bookmarks

X Get Bookmarks

read-only idempotent
x-create-bookmark

X Create Bookmark

x-get-bookmark-folders

X Get Bookmark Folders

read-only idempotent
x-get-bookmarks-folder-id

X Get Bookmarks by Folder ID

read-only idempotent
x-delete-bookmark

X Delete Bookmark

idempotent
x-block-dms

X Block DMs

x-unblock-dms

X Unblock DMs

x-get-followed-lists

X Get Followed Lists

read-only idempotent
x-follow-list

X Follow List

x-unfollow-list

X Unfollow List

idempotent
x-get-followers

X Get Followers

read-only idempotent
x-get-following

X Get Following

read-only idempotent
x-follow-user

X Follow User

x-get-liked-posts

X Get Liked Posts

read-only idempotent
x-like-post

X Like Post

x-unlike-post

X Unlike Post

idempotent
x-get-list-memberships

X Get List Memberships

read-only idempotent
x-get-mentions

X Get Mentions

read-only idempotent
x-get-muting

X Get Muting

read-only idempotent
x-mute-user

X Mute User

x-get-owned-lists

X Get Owned Lists

read-only idempotent
x-get-pinned-lists

X Get Pinned Lists

read-only idempotent
x-pin-list

X Pin List

x-unpin-list

X Unpin List

idempotent
x-get-user-public-keys

X Get User Public Keys

read-only idempotent
x-repost-post

X Repost Post

x-unrepost-post

X Unrepost Post

idempotent
x-get-timeline

X Get Timeline

read-only idempotent
x-get-posts

X Get Posts

read-only idempotent
x-unfollow-user

X Unfollow User

idempotent
x-unmute-user

X Unmute User

idempotent

Capability Spec

x-users.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: X API v2 — Users
  description: 'X API v2 — Users. 45 operations. Lead operation: X Get List Followers. Self-contained Naftiko capability covering
    one Twitter business surface.'
  tags:
  - Twitter
  - Users
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    TWITTER_API_KEY: TWITTER_API_KEY
capability:
  consumes:
  - type: http
    namespace: x-users
    baseUri: https://api.x.com
    description: X API v2 — Users business capability. Self-contained, no shared references.
    resources:
    - name: 2-lists-id-followers
      path: /2/lists/{id}/followers
      operations:
      - name: getlistsfollowers
        method: GET
        description: X Get List Followers
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the List.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get a specified 'page' of results.
    - name: 2-lists-id-members
      path: /2/lists/{id}/members
      operations:
      - name: getlistsmembers
        method: GET
        description: X Get List Members
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the List.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get a specified 'page' of results.
    - name: 2-tweets-id-liking_users
      path: /2/tweets/{id}/liking_users
      operations:
      - name: getpostslikingusers
        method: GET
        description: X Get Liking Users
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A single Post ID.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get the next 'page' of results.
    - name: 2-tweets-id-retweeted_by
      path: /2/tweets/{id}/retweeted_by
      operations:
      - name: getpostsrepostedby
        method: GET
        description: X Get Reposted by
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: A single Post ID.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get the next 'page' of results.
    - name: 2-users
      path: /2/users
      operations:
      - name: getusersbyids
        method: GET
        description: X Get Users by IDs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: ids
          in: query
          type: array
          description: A list of User IDs, comma-separated. You can specify up to 100 IDs.
          required: true
    - name: 2-users-by
      path: /2/users/by
      operations:
      - name: getusersbyusernames
        method: GET
        description: X Get Users by Usernames
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: usernames
          in: query
          type: array
          description: A list of usernames, comma-separated.
          required: true
    - name: 2-users-by-username-username
      path: /2/users/by/username/{username}
      operations:
      - name: getusersbyusername
        method: GET
        description: X Get User by Username
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: username
          in: path
          type: string
          description: A username.
          required: true
    - name: 2-users-me
      path: /2/users/me
      operations:
      - name: getusersme
        method: GET
        description: X Get My User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: 2-users-public_keys
      path: /2/users/public_keys
      operations:
      - name: getuserspublickeys
        method: GET
        description: X Get Public Keys for Multiple Users
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: ids
          in: query
          type: array
          description: A list of User IDs, comma-separated. You can specify up to 100 IDs.
          required: true
    - name: 2-users-reposts_of_me
      path: /2/users/reposts_of_me
      operations:
      - name: getusersrepostsofme
        method: GET
        description: X Get Reposts of Me
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get the next 'page' of results.
    - name: 2-users-search
      path: /2/users/search
      operations:
      - name: searchusers
        method: GET
        description: X Search Users
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: query
          in: query
          type: string
          description: TThe the query string by which to query for users.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: next_token
          in: query
          type: string
          description: This parameter is used to get the next 'page' of results. The value used with the parameter is pulled
            directly from the response provided by the API, and should
    - name: 2-users-id
      path: /2/users/{id}
      operations:
      - name: getusersbyid
        method: GET
        description: X Get User by ID
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the User to lookup.
          required: true
    - name: 2-users-id-affiliates
      path: /2/users/{id}/affiliates
      operations:
      - name: getusersaffiliates
        method: GET
        description: X Get Affiliates
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the User to lookup.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get a specified 'page' of results.
    - name: 2-users-id-blocking
      path: /2/users/{id}/blocking
      operations:
      - name: getusersblocking
        method: GET
        description: X Get Blocking
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User for whom to return results.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get a specified 'page' of results.
    - name: 2-users-id-bookmarks
      path: /2/users/{id}/bookmarks
      operations:
      - name: getusersbookmarks
        method: GET
        description: X Get Bookmarks
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User for whom to return results.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get the next 'page' of results.
      - name: createusersbookmark
        method: POST
        description: X Create Bookmark
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User for whom to add bookmarks.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: 2-users-id-bookmarks-folders
      path: /2/users/{id}/bookmarks/folders
      operations:
      - name: getusersbookmarkfolders
        method: GET
        description: X Get Bookmark Folders
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User for whom to return results.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get the next 'page' of results.
    - name: 2-users-id-bookmarks-folders-folder_id
      path: /2/users/{id}/bookmarks/folders/{folder_id}
      operations:
      - name: getusersbookmarksbyfolderid
        method: GET
        description: X Get Bookmarks by Folder ID
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User for whom to return results.
          required: true
        - name: folder_id
          in: path
          type: string
          description: The ID of the Bookmark Folder that the authenticated User is trying to fetch Posts for.
          required: true
    - name: 2-users-id-bookmarks-tweet_id
      path: /2/users/{id}/bookmarks/{tweet_id}
      operations:
      - name: deleteusersbookmark
        method: DELETE
        description: X Delete Bookmark
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User whose bookmark is to be removed.
          required: true
        - name: tweet_id
          in: path
          type: string
          description: The ID of the Post that the source User is removing from bookmarks.
          required: true
    - name: 2-users-id-dm-block
      path: /2/users/{id}/dm/block
      operations:
      - name: blockusersdms
        method: POST
        description: X Block DMs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the target User that the authenticated user requesting to block dms for.
          required: true
    - name: 2-users-id-dm-unblock
      path: /2/users/{id}/dm/unblock
      operations:
      - name: unblockusersdms
        method: POST
        description: X Unblock DMs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the target User that the authenticated user requesting to unblock dms for.
          required: true
    - name: 2-users-id-followed_lists
      path: /2/users/{id}/followed_lists
      operations:
      - name: getusersfollowedlists
        method: GET
        description: X Get Followed Lists
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the User to lookup.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get a specified 'page' of results.
      - name: followlist
        method: POST
        description: X Follow List
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User that will follow the List.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: 2-users-id-followed_lists-list_id
      path: /2/users/{id}/followed_lists/{list_id}
      operations:
      - name: unfollowlist
        method: DELETE
        description: X Unfollow List
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User that will unfollow the List.
          required: true
        - name: list_id
          in: path
          type: string
          description: The ID of the List to unfollow.
          required: true
    - name: 2-users-id-followers
      path: /2/users/{id}/followers
      operations:
      - name: getusersfollowers
        method: GET
        description: X Get Followers
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the User to lookup.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get a specified 'page' of results.
    - name: 2-users-id-following
      path: /2/users/{id}/following
      operations:
      - name: getusersfollowing
        method: GET
        description: X Get Following
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the User to lookup.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get a specified 'page' of results.
      - name: followuser
        method: POST
        description: X Follow User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User that is requesting to follow the target User.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: 2-users-id-liked_tweets
      path: /2/users/{id}/liked_tweets
      operations:
      - name: getuserslikedposts
        method: GET
        description: X Get Liked Posts
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the User to lookup.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get the next 'page' of results.
    - name: 2-users-id-likes
      path: /2/users/{id}/likes
      operations:
      - name: likepost
        method: POST
        description: X Like Post
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User that is requesting to like the Post.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: 2-users-id-likes-tweet_id
      path: /2/users/{id}/likes/{tweet_id}
      operations:
      - name: unlikepost
        method: DELETE
        description: X Unlike Post
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User that is requesting to unlike the Post.
          required: true
        - name: tweet_id
          in: path
          type: string
          description: The ID of the Post that the User is requesting to unlike.
          required: true
    - name: 2-users-id-list_memberships
      path: /2/users/{id}/list_memberships
      operations:
      - name: getuserslistmemberships
        method: GET
        description: X Get List Memberships
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the User to lookup.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get a specified 'page' of results.
    - name: 2-users-id-mentions
      path: /2/users/{id}/mentions
      operations:
      - name: getusersmentions
        method: GET
        description: X Get Mentions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the User to lookup.
          required: true
        - name: since_id
          in: query
          type: string
          description: The minimum Post ID to be included in the result set. This parameter takes precedence over start_time
            if both are specified.
        - name: until_id
          in: query
          type: string
          description: The maximum Post ID to be included in the result set. This parameter takes precedence over end_time
            if both are specified.
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get the next 'page' of results.
        - name: start_time
          in: query
          type: string
          description: YYYY-MM-DDTHH:mm:ssZ. The earliest UTC timestamp from which the Posts will be provided. The since_id
            parameter takes precedence if it is also specified.
        - name: end_time
          in: query
          type: string
          description: YYYY-MM-DDTHH:mm:ssZ. The latest UTC timestamp to which the Posts will be provided. The until_id parameter
            takes precedence if it is also specified.
    - name: 2-users-id-muting
      path: /2/users/{id}/muting
      operations:
      - name: getusersmuting
        method: GET
        description: X Get Muting
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User for whom to return results.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get the next 'page' of results.
      - name: muteuser
        method: POST
        description: X Mute User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User that is requesting to mute the target User.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: 2-users-id-owned_lists
      path: /2/users/{id}/owned_lists
      operations:
      - name: getusersownedlists
        method: GET
        description: X Get Owned Lists
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the User to lookup.
          required: true
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get a specified 'page' of results.
    - name: 2-users-id-pinned_lists
      path: /2/users/{id}/pinned_lists
      operations:
      - name: getuserspinnedlists
        method: GET
        description: X Get Pinned Lists
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User for whom to return results.
          required: true
      - name: pinlist
        method: POST
        description: X Pin List
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User that will pin the List.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: 2-users-id-pinned_lists-list_id
      path: /2/users/{id}/pinned_lists/{list_id}
      operations:
      - name: unpinlist
        method: DELETE
        description: X Unpin List
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User for whom to return results.
          required: true
        - name: list_id
          in: path
          type: string
          description: The ID of the List to unpin.
          required: true
    - name: 2-users-id-public_keys
      path: /2/users/{id}/public_keys
      operations:
      - name: getuserspublickey
        method: GET
        description: X Get User Public Keys
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the User to lookup.
          required: true
    - name: 2-users-id-retweets
      path: /2/users/{id}/retweets
      operations:
      - name: repostpost
        method: POST
        description: X Repost Post
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User that is requesting to repost the Post.
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: 2-users-id-retweets-source_tweet_id
      path: /2/users/{id}/retweets/{source_tweet_id}
      operations:
      - name: unrepostpost
        method: DELETE
        description: X Unrepost Post
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User that is requesting to repost the Post.
          required: true
        - name: source_tweet_id
          in: path
          type: string
          description: The ID of the Post that the User is requesting to unretweet.
          required: true
    - name: 2-users-id-timelines-reverse_chronological
      path: /2/users/{id}/timelines/reverse_chronological
      operations:
      - name: getuserstimeline
        method: GET
        description: X Get Timeline
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the authenticated source User to list Reverse Chronological Timeline Posts of.
          required: true
        - name: since_id
          in: query
          type: string
          description: The minimum Post ID to be included in the result set. This parameter takes precedence over start_time
            if both are specified.
        - name: until_id
          in: query
          type: string
          description: The maximum Post ID to be included in the result set. This parameter takes precedence over end_time
            if both are specified.
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get the next 'page' of results.
        - name: exclude
          in: query
          type: array
          description: The set of entities to exclude (e.g. 'replies' or 'retweets').
        - name: start_time
          in: query
          type: string
          description: YYYY-MM-DDTHH:mm:ssZ. The earliest UTC timestamp from which the Posts will be provided. The since_id
            parameter takes precedence if it is also specified.
        - name: end_time
          in: query
          type: string
          description: YYYY-MM-DDTHH:mm:ssZ. The latest UTC timestamp to which the Posts will be provided. The until_id parameter
            takes precedence if it is also specified.
    - name: 2-users-id-tweets
      path: /2/users/{id}/tweets
      operations:
      - name: getusersposts
        method: GET
        description: X Get Posts
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          description: The ID of the User to lookup.
          required: true
        - name: since_id
          in: query
          type: string
          description: The minimum Post ID to be included in the result set. This parameter takes precedence over start_time
            if both are specified.
        - name: until_id
          in: query
          type: string
          description: The maximum Post ID to be included in the result set. This parameter takes precedence over end_time
            if both are specified.
        - name: max_results
          in: query
          type: integer
          description: The maximum number of results.
        - name: pagination_token
          in: query
          type: string
          description: This parameter is used to get the next 'page' of results.
        - name: exclude
          in: query
          type: array
          description: The set of entities to exclude (e.g. 'replies' or 'retweets').
        - name: start_time
          in: query
          type: string
          description: YYYY-MM-DDTHH:mm:ssZ. The earliest UTC timestamp from which the Posts will be provided. The since_id
            parameter takes precedence if it is also specified.
        - name: end_time
          in: query
          type: string
          description: YYYY-MM-DDTHH:mm:ssZ. The latest UTC timestamp to which the Posts will be provided. The until_id parameter
            takes precedence if it is also specified.
    - name: 2-users-source_user_id-following-target_user_id
      path: /2/users/{source_user_id}/following/{target_user_id}
      operations:
      - name: unfollowuser
        method: DELETE
        description: X Unfollow User
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: source_user_id
          in: path
          type: string
          description: The ID of the authenticated source User that is requesting to unfollow the target User.
          required: true
        - name: target_user_id
          in: path
          type: string
          description: The ID of the User that the source User is requesting to unfollow.
          required: true
    - name: 2-users-source_user_id-muting-target_user_id
      path: /2/users/{source_user_id}/muting/{target_user_id}
      operations:
      - name: unmuteuser
        method: 

# --- truncated at 32 KB (67 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/twitter/refs/heads/main/capabilities/x-users.yaml