Neynar User API

Operations related to user

Operations 16

PATCH /v2/farcaster/user/ Update user profile #
POST /v2/farcaster/user/ Register new account #
GET /v2/farcaster/user/best_friends/ Best friends #
GET /v2/farcaster/user/bulk-by-address/ By Eth or Sol addresses #
GET /v2/farcaster/user/bulk/ By FIDs #
GET /v2/farcaster/user/by_location/ By location #
GET /v2/farcaster/user/by_username/ By username #
GET /v2/farcaster/user/by_x_username/ By X username #
GET /v2/farcaster/user/custody-address/ By custody-address #
GET /v2/farcaster/user/fid/ Fetch fresh FID #
DELETE /v2/farcaster/user/follow/ Unfollow user #
POST /v2/farcaster/user/follow/ Follow user #
GET /v2/farcaster/user/search/ Search for Usernames #
DELETE /v2/farcaster/user/verification/ Delete verification #
POST /v2/farcaster/user/verification/ Add verification #
GET /v2/farcaster/user/verifications/ Fetch verifications #

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/neynar-user-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

neynar-user-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: team@neynar.com
    name: Neynar
    url: https://neynar.com/
  description: The Neynar API allows you to interact with the Farcaster protocol among other things. See the [Neynar docs](https://docs.neynar.com/reference) for more details.
  title: Neynar User API
  version: 3.176.0
servers:
- url: https://api.neynar.com
security:
- ApiKeyAuth: []
tags:
- description: Operations related to user
  externalDocs:
    description: More info about user
    url: https://docs.neynar.com/reference/user-operations
  name: User
paths:
  /v2/farcaster/user/:
    patch:
      description: "Update user profile \n(In order to update user's profile `signer_uuid` must be approved)"
      externalDocs:
        url: https://docs.neynar.com/reference/update-user
      operationId: update-user
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateUserReqBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OperationResponse'
          description: Success
        '207':
          content:
            application/json:
              schema:
                properties:
                  errors:
                    items:
                      properties:
                        message:
                          type: string
                      required:
                      - message
                      type: object
                    type: array
                  success:
                    type: boolean
                required:
                - success
                - errors
                type: object
          description: '207'
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Resource not found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Server Error
      summary: Update user profile
      tags:
      - User
    post:
      description: "Register account on farcaster. Optionally provide x-wallet-id header to use your own wallet. \n\n**Note:** This API must be called within 10 minutes of the fetch FID API call (i.e., /v2/farcaster/user/fid). Otherwise, Neynar will assign this FID to another available user."
      externalDocs:
        url: https://docs.neynar.com/reference/register-account
      operationId: register-account
      parameters:
      - $ref: '#/components/parameters/WalletIdHeader'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RegisterUserReqBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegisterUserResponse'
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Bad Request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Unauthorized
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Resource not found
        '409':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ConflictErrorRes'
          description: Conflict
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Server Error
      summary: Register new account
      tags:
      - User
  /v2/farcaster/user/best_friends/:
    get:
      description: Returns the best friends of a user ranked by mutual affinity score based on interactions with each other.
      externalDocs:
        url: https://docs.neynar.com/reference/get-user-best-friends
      operationId: get-user-best-friends
      parameters:
      - description: The FID of the user
        in: query
        name: fid
        required: true
        schema:
          minimum: 1
          type: integer
      - description: Number of results to fetch
        in: query
        name: limit
        schema:
          default: 3
          example: 5
          maximum: 100
          minimum: 1
          type: integer
        x-is-limit-param: true
      - description: Pagination cursor
        in: query
        name: cursor
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BestFriendsResponse'
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ZodError'
          description: Bad Request
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Server Error
      summary: Best friends
      tags:
      - User
  /v2/farcaster/user/bulk-by-address/:
    get:
      description: 'Fetches all users based on multiple Ethereum or Solana addresses.


        Each farcaster user has a custody Ethereum address and optionally verified Ethereum or Solana addresses. This endpoint returns all users that have any of the given addresses as their custody or verified Ethereum or Solana addresses.


        A custody address can be associated with only 1 farcaster user at a time but a verified address can be associated with multiple users.

        You can pass in Ethereum and Solana addresses, comma separated, in the same request. The response will contain users associated with the given addresses.'
      externalDocs:
        url: https://docs.neynar.com/reference/fetch-bulk-users-by-eth-or-sol-address
      operationId: fetch-bulk-users-by-eth-or-sol-address
      parameters:
      - $ref: '#/components/parameters/NeynarExperimentalHeader'
      - description: Comma separated list of Ethereum or Solana addresses, up to 350 at a time
        in: query
        name: addresses
        required: true
        schema:
          example: 0xa6a8736f18f383f1cc2d938576933e5ea7df01a1,0x7cac817861e5c3384753403fb6c0c556c204b1ce
          type: string
          x-comma-separated: true
      - description: 'Customize which address types the request should search for. This is a comma-separated string that can include the following values: ''custody_address'' and ''verified_address''. By default api returns both. To select multiple types, use a comma-separated list of these values.'
        in: query
        name: address_types
        schema:
          items:
            enum:
            - custody_address
            - verified_address
            title: BulkUserAddressType
            type: string
          type: array
      - in: query
        name: viewer_fid
        schema:
          minimum: 1
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkUsersByAddressResponse'
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Bad Request
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Resource not found
      summary: By Eth or Sol addresses
      tags:
      - User
  /v2/farcaster/user/bulk/:
    get:
      description: Fetches information about multiple users based on FIDs
      externalDocs:
        url: https://docs.neynar.com/reference/fetch-bulk-users
      operationId: fetch-bulk-users
      parameters:
      - $ref: '#/components/parameters/NeynarExperimentalHeader'
      - description: Comma separated list of FIDs, up to 100 at a time
        in: query
        name: fids
        required: true
        schema:
          example: 194, 191, 6131
          type: string
          x-accept-as: integer
          x-comma-separated: true
      - in: query
        name: viewer_fid
        schema:
          example: 3
          minimum: 1
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkUsersResponse'
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Bad Request
      summary: By FIDs
      tags:
      - User
  /v2/farcaster/user/by_location/:
    get:
      description: Fetches a list of users given a location
      externalDocs:
        url: https://docs.neynar.com/reference/fetch-users-by-location
      operationId: fetch-users-by-location
      parameters:
      - $ref: '#/components/parameters/NeynarExperimentalHeader'
      - description: Latitude of the location
        in: query
        name: latitude
        required: true
        schema:
          example: 37.77
          type: number
      - description: Longitude of the location
        in: query
        name: longitude
        required: true
        schema:
          example: -122.41
          type: number
      - description: FID of the user viewing the feed. Providing this will return a list of users that respects this user's mutes and blocks and includes `viewer_context`.
        in: query
        name: viewer_fid
        schema:
          example: 3
          minimum: 1
          type: integer
      - description: Number of results to fetch
        in: query
        name: limit
        schema:
          default: 25
          example: 25
          format: int32
          maximum: 100
          minimum: 1
          type: integer
        x-is-limit-param: true
      - description: Pagination cursor
        in: query
        name: cursor
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UsersResponse'
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Bad Request
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Resource not found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Server Error
      summary: By location
      tags:
      - User
  /v2/farcaster/user/by_username/:
    get:
      description: Fetches a single hydrated user object given a username
      externalDocs:
        url: https://docs.neynar.com/reference/lookup-user-by-username
      operationId: lookup-user-by-username
      parameters:
      - $ref: '#/components/parameters/NeynarExperimentalHeader'
      - description: Username of the user to fetch
        in: query
        name: username
        required: true
        schema:
          example: neynar
          type: string
      - in: query
        name: viewer_fid
        schema:
          minimum: 1
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserResponse'
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Bad Request
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Resource not found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Server Error
      summary: By username
      tags:
      - User
  /v2/farcaster/user/by_x_username/:
    get:
      description: Fetches the users who have verified the specified X (Twitter) username
      externalDocs:
        url: https://docs.neynar.com/reference/lookup-users-by-x-username
      operationId: lookup-users-by-x-username
      parameters:
      - $ref: '#/components/parameters/NeynarExperimentalHeader'
      - description: X (Twitter) username to search for, without the @ symbol
        in: query
        name: x_username
        required: true
        schema:
          type: string
      - description: FID of the viewer for contextual information like follows and blocks
        in: query
        name: viewer_fid
        schema:
          minimum: 1
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkUsersResponse'
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Bad Request
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Resource not found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Server Error
      summary: By X username
      tags:
      - User
  /v2/farcaster/user/custody-address/:
    get:
      description: Lookup a user by custody-address
      externalDocs:
        url: https://docs.neynar.com/reference/lookup-user-by-custody-address
      operationId: lookup-user-by-custody-address
      parameters:
      - description: Custody Address associated with mnemonic
        in: query
        name: custody_address
        required: true
        schema:
          example: '0xd1b702203b1b3b641a699997746bd4a12d157909'
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserResponse'
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Bad Request
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Resource not found
      summary: By custody-address
      tags:
      - User
  /v2/farcaster/user/fid/:
    get:
      description: Fetches FID to [assign it to new user](https://docs.neynar.com/reference/register-account).
      externalDocs:
        url: https://docs.neynar.com/reference/get-fresh-account-fid
      operationId: get-fresh-account-FID
      parameters:
      - $ref: '#/components/parameters/NeynarExperimentalHeader'
      - $ref: '#/components/parameters/WalletIdHeader'
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserFIDResponse'
          description: Success
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Server Error
      summary: Fetch fresh FID
      tags:
      - User
  /v2/farcaster/user/follow/:
    delete:
      description: "Unfollow a user \n(In order to unfollow a user `signer_uuid` must be approved)"
      externalDocs:
        url: https://docs.neynar.com/reference/unfollow-user
      operationId: unfollow-user
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FollowReqBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkFollowResponse'
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Resource not found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Server Error
      summary: Unfollow user
      tags:
      - User
    post:
      description: "Follow a user \n(In order to follow a user `signer_uuid` must be approved)"
      externalDocs:
        url: https://docs.neynar.com/reference/follow-user
      operationId: follow-user
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/FollowReqBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BulkFollowResponse'
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Bad Request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Resource not found
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Server Error
      summary: Follow user
      tags:
      - User
  /v2/farcaster/user/search/:
    get:
      description: Search for Usernames
      externalDocs:
        url: https://docs.neynar.com/reference/search-user
      operationId: search-user
      parameters:
      - $ref: '#/components/parameters/NeynarExperimentalHeader'
      - in: query
        name: q
        required: true
        schema:
          example: r
          type: string
      - description: Providing this will return search results that respects this user's mutes and blocks and includes `viewer_context`.
        in: query
        name: viewer_fid
        schema:
          minimum: 1
          type: integer
      - description: Number of users to fetch
        in: query
        name: limit
        schema:
          default: 5
          example: 10
          format: int32
          maximum: 10
          minimum: 1
          type: integer
        x-is-limit-param: true
      - description: Pagination cursor.
        in: query
        name: cursor
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserSearchResponse'
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Bad Request
      summary: Search for Usernames
      tags:
      - User
  /v2/farcaster/user/verification/:
    delete:
      description: "Removes verification for an eth address for the user \n(In order to delete verification `signer_uuid` must be approved)"
      externalDocs:
        url: https://docs.neynar.com/reference/delete-verification
      operationId: delete-verification
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RemoveVerificationReqBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OperationResponse'
          description: Success
      summary: Delete verification
      tags:
      - User
    post:
      description: "Adds verification for an eth address or contract for the user \n(In order to add verification `signer_uuid` must be approved)"
      externalDocs:
        url: https://docs.neynar.com/reference/publish-verification
      operationId: publish-verification
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AddVerificationReqBody'
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OperationResponse'
          description: Success
      summary: Add verification
      tags:
      - User
  /v2/farcaster/user/verifications/:
    get:
      description: Fetch all Ethereum and Solana verified addresses for a Farcaster user. Use this endpoint to identify which wallets are associated with which Farcaster applications for the specified user.
      externalDocs:
        url: https://docs.neynar.com/reference/fetch-verifications
      operationId: fetch-verifications
      parameters:
      - description: FID of the user whose verifications to fetch
        in: query
        name: fid
        required: true
        schema:
          example: 3
          format: int32
          minimum: 0
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                properties:
                  verifications:
                    items:
                      $ref: '#/components/schemas/Verification'
                    type: array
                required:
                - verifications
                type: object
          description: Success
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Bad Request
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorRes'
          description: Server Error
      summary: Fetch verifications
      tags:
      - User
components:
  schemas:
    UserResponse:
      properties:
        user:
          $ref: '#/components/schemas/User'
      required:
      - user
      title: UserResponse
      type: object
    TextRange:
      properties:
        end:
          minimum: 0
          type: number
        start:
          minimum: 0
          type: number
      required:
      - start
      - end
      title: TextRange
      type: object
    UsersResponse:
      properties:
        next:
          $ref: '#/components/schemas/NextCursor'
        users:
          items:
            $ref: '#/components/schemas/User'
          type: array
      required:
      - users
      - next
      title: UsersResponse
      type: object
    AddVerificationReqBody:
      properties:
        address:
          $ref: '#/components/schemas/EthAddress'
        block_hash:
          example: '0x191905a9201170abb55f4c90a4cc968b44c1b71cdf3db2764b775c93e7e22b29'
          type: string
        chain_id:
          $ref: '#/components/schemas/VerificationChainId'
        eth_signature:
          example: '0x2fc09da1f4dcb723fefb91f77932c249c418c0af00c66ed92ee1f35002c80d6a1145280c9f361d207d28447f8f7463366840d3a9309036cf6954afd1fd331beb1b'
          type: string
        signer_uuid:
          $ref: '#/components/schemas/SignerUUID'
        verification_type:
          $ref: '#/components/schemas/VerificationType'
      required:
      - signer_uuid
      - address
      - block_hash
      - eth_signature
      title: AddVerificationReqBody
      type: object
    Signer:
      properties:
        fid:
          $ref: '#/components/schemas/Fid'
        object:
          enum:
          - signer
          type: string
        permissions:
          items:
            $ref: '#/components/schemas/SharedSignerPermission'
          type: array
        public_key:
          $ref: '#/components/schemas/Ed25519PublicKey'
        signer_approval_url:
          type: string
        signer_uuid:
          $ref: '#/components/schemas/SignerUUID'
        status:
          enum:
          - generated
          - pending_approval
          - approved
          - revoked
          type: string
      required:
      - signer_uuid
      - public_key
      - status
      title: Signer
      type: object
    BulkFollowResponse:
      properties:
        details:
          items:
            $ref: '#/components/schemas/FollowResponse'
          type: array
        success:
          type: boolean
      required:
      - success
      - details
      title: BulkFollowResponse
      type: object
    ChannelMemberRole:
      description: The role of a channel member
      enum:
      - member
      - moderator
      - owner
      title: ChannelMemberRole
      type: string
    ErrorRes:
      description: Details for the error response
      properties:
        code:
          type: string
        message:
          type: string
        property:
          type: string
        status:
          format: int32
          type: integer
      required:
      - message
      title: ErrorRes
      type: object
    SharedSignerPermission:
      enum:
      - WRITE_ALL
      - READ_ONLY
      - NONE
      - PUBLISH_CAST
      - DELETE_CAST
      - PUBLISH_REACTION
      - DELETE_REACTION
      - UPDATE_PROFILE
      - FOLLOW_USER
      - UNFOLLOW_USER
      - FOLLOW_CHANNEL
      - UNFOLLOW_CHANNEL
      - ADD_VERIFICATION
      - REMOVE_VERIFICATION
      - WRITE_FRAME_ACTION
      title: SharedSignerPermission
      type: string
    Protocol:
      description: 'Blockchain protocol for the linked wallet: evm for Ethereum/EVM-compatible chains (Base, Optimism, etc.) and solana for Solana'
      enum:
      - evm
      - solana
      example: evm
      title: Protocol
      type: string
    RegisterUserReqBody:
      properties:
        deadline:
          type: number
        fid:
          type: number
        fname:
          type: string
        metadata:
          properties:
            bio:
              type: string
            display_name:
              type: string
            location:
              properties:
                latitude:
                  format: double
                  maximum: 90
                  minimum: -90
                  type: number
                longitude:
                  format: double
                  maximum: 180
                  minimum: -180
                  type: number
              required:
              - latitude
              - longitude
              type: object
            pfp_url:
              type: string
            url:
              type: string
            username:
              type: string
            verified_accounts:
              properties:
                github:
                  type: string
                x:
                  type: string
              type: object
          type: object
        requested_user_custody_address:
          type: string
        signature:
          type: string
        signer:
          properties:
            app_fid:
              type: number
            deadline:
              type: number
            signed_key_request_metadata_signature:
              type: string
            uuid:
              format: uuid
              type: string
          required:
          - uuid
          - signed_key_request_metadata_signature
          - app_fid
          - deadline
          type: object
      required:
      - signature
      - fid
      - requested_user_custody_address
      - deadline
      title: RegisterUserReqBody
      type: object
    UpdateUserReqBody:
      properties:
        banner:
          description: Requires pro subscription.
          type: string
        bio:
          type: string
        display_name:
          type: string
        location:
          properties:
            latitude:
              format: double
              maximum: 90
              minimum: -90
              type: number
            longitude:
              format: double
              maximum: 180
              minimum: -180
              type: number
          required:
          - latitude
          - longitude
          type: object
        pfp_url:
          type: string
        primary_eth_address:
          description: Must be one of the verified addresses.
          example: '0x5a927ac639636e534b678e81768ca19e2c6280b7'
          pattern: ^0x[a-fA-F0-9]{40}$
          type: string
        primary_sol_address:
          description: Must be one of the verified addresses.
          pattern: ^[1-9A-HJ-NP-Za-km-z]{32,44}$
          type: string
        signer_uuid:
          $ref: '#/components/schemas/SignerUUID'
        url:
          type: string
        username:
          type: string
        verified_accounts:
          properties:
            github:
              type: string
            x:
              type: string
          type: object
      required:
      - signer_uuid
      title: UpdateUserReqBody
      type: object
    Location:
      description: Coordinates and place names for a location
      properties:
        address:
          $ref: '#/components/schemas/LocationAddress'
        latitude:
          format: double
          maximum: 90
          minimum: -90
          type: number
        longitude:
          format: double
          maximum: 180
          minimum: -180
          type: number
        radius:
          description: The radius in meters for the location search. Any location within this radius will be returned.
          minimum: 0
          type: number
      required:
      - latitude
      - longitude
      title: Location
      type: object
    OperationResponse:
      properties:
        message:
          type: string
        success:
          type: boolean
      title: OperationResponse
      type: object
    FollowResponse:
      properties:
        hash:
          type: string
        success:
          type: boolean
        target_fid:
          $ref: '#/components/schemas/Fid'
      required:
      - success
      - target_fid
      - hash
      title: FollowResponse
      type: object
    UserViewerContext:
      description: Adds context on the viewer's follow relationship with the user.
      properties:
        blocked_by:
          description: Indicates if the viewer is blocked by the user.
          type: boolean
        blocking:
          description: Indicates if the viewer is blocking the user.
          type: boolean
        followed_by:
          description: Indicates if the viewer is followed by the user.
          type: boolean
        following:
          description: Indicates if the viewer is following the user.
          type: boolean
      required:
      - following
      - followed_by
      - blocking
      - blocked_by
      title: UserViewerContext
      type: object
    UserSearchResponse:
      properties:
        result:
          properties:
            next:
              $ref: '#/components/schemas/NextCursor'
            users:
              items:
                $ref: '#/components/schemas/User'
              type: array
          required:
          - users
          type: object
      required:
      - result
      title: Use

# --- truncated at 32 KB (47 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/neynar/refs/heads/main/openapi/neynar-user-api-openapi.yml