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

# Get Pending Lending Actions

> Fetches the user's pending lending and settle actions - those submitted but never committed. Call [`POST /borrow/commit`](/api-reference/lending/commit) with each returned `tx_id` to resolve them.

Deposits, trades, and withdrawals are returned by [`POST /account/pending`](/api-reference/account/get_pending_actions) instead. Requires a read signature; see [Signing Requests](/guide/integration/signing#signing-requests) and [Recovering Pending Commits](/guide/handling#recovering-pending-commits).



## OpenAPI

````yaml POST /borrow/pending
openapi: 3.0.1
info:
  title: Vanish Core API
  description: API endpoints for the Vanish Core service.
  license:
    name: MIT
  version: 2.0.0
servers:
  - url: https://core-api-dev.vanish.trade
security:
  - ApiKeyAuth: []
paths:
  /borrow/pending:
    post:
      summary: Get Pending Lending Actions
      description: >-
        Fetches the user's pending lending and settle actions - those submitted
        but never committed. Call [`POST
        /borrow/commit`](/api-reference/lending/commit) with each returned
        `tx_id` to resolve them.


        Deposits, trades, and withdrawals are returned by [`POST
        /account/pending`](/api-reference/account/get_pending_actions) instead.
        Requires a read signature; see [Signing
        Requests](/guide/integration/signing#signing-requests) and [Recovering
        Pending Commits](/guide/handling#recovering-pending-commits).
      requestBody:
        description: Request payload for querying pending lending actions.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/BorrowPendingActionsRequest'
        required: true
      responses:
        '200':
          description: >-
            A successful response containing a list of the user's pending
            lending actions.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/BorrowPendingAction'
        '400':
          description: >-
            Bad request. The user address format is invalid, or the timestamp is
            outside the freshness window.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BorrowError'
        '401':
          description: >-
            Unauthorized. The request is missing a valid API key or the
            signature is invalid.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BorrowError'
        '429':
          description: >-
            Rate limit exceeded. Contact the Vanish team to raise your team's
            requests-per-second cap.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BorrowError'
        '500':
          description: Internal server error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BorrowError'
components:
  schemas:
    BorrowPendingActionsRequest:
      required:
        - user_address
        - timestamp
        - signature
      type: object
      properties:
        user_address:
          description: The Solana wallet address of the user.
          type: string
        timestamp:
          description: >-
            The current timestamp in milliseconds used for signature
            verification. Read-scoped: accepted within 24 hours. Can be provided
            as a string or a number
          oneOf:
            - type: string
              pattern: ^[0-9]+$
            - type: integer
              format: int64
        signature:
          description: >-
            Signature of the 'By signing, I hereby agree to Vanish's Terms of
            Service and agree to be bound by them (docs.vanish.trade/legal/TOS)


            Details: read:{timestamp}' string signed using the user's wallet.
            Note the field name is signature on this endpoint, not
            user_signature.
          type: string
    BorrowPendingAction:
      required:
        - tx_id
        - action_type
        - status
        - created_at
        - frozen_balance_changes
      type: object
      properties:
        tx_id:
          description: Transaction id of the pending action on chain
          type: string
        action_type:
          description: Type of pending action.
          enum:
            - borrow
            - settle
          type: string
        status:
          description: >-
            Current status of the action. Every row returned by this endpoint is
            expected to be pending.
          enum:
            - pending
          type: string
        created_at:
          description: Timestamp indicating when the action was created.
          type: string
        frozen_balance_changes:
          type: array
          items:
            $ref: '#/components/schemas/BalanceChange'
          description: >-
            The balance changes recorded when the action was initiated, before
            on-chain confirmation.
    BorrowError:
      required:
        - error
      type: object
      properties:
        error:
          description: >-
            The error code or short description. Endpoint errors use the HTTP
            status text (for example '400 Bad Request'); errors raised by the
            API key middleware and the rate limiter carry the description here
            instead.
          type: string
        message:
          description: >-
            The specific reason for the failure. Null on a signature
            verification failure, and absent entirely on API key and rate limit
            errors - check for the presence of this field rather than assuming
            every error body has the same shape.
          type: string
          nullable: true
    BalanceChange:
      required:
        - token_address
        - change
      type: object
      properties:
        token_address:
          description: The token address
          type: string
        change:
          description: >-
            Amount of balance change in the smallest unit (e.g., lamports for
            SOL).
          type: string
          format: int64
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key

````