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

# Get List Deposits

> Retrieve a list of all deposits along with the validator status either by withdrawal address, transaction hash or deposit ID.



## OpenAPI

````yaml GET /api/v1/eth/staking/ssv/p2p/deposits
openapi: 3.0.0
info:
  title: Staking API
  description: API used for staking
  version: 1.0.0
  contact: {}
servers:
  - url: https://api.p2p.org/api
security:
  - bearer: []
tags:
  - name: Aptos
    description: Aptos staking operations (stake, unstake, withdraw, claim).
  - name: Celestia
    description: Celestia staking operations (stake, unstake, redelegate, claim).
  - name: Cosmos
    description: Cosmos Hub staking operations (stake, unstake, redelegate, claim).
  - name: EigenLayer
    description: EigenLayer restaking operations.
  - name: Ethereum
    description: Ethereum staking operations (direct, SSV, pooled).
  - name: Hyperliquid
    description: Hyperliquid staking operations.
  - name: Monad
    description: Monad staking operations (delegate, undelegate, withdraw).
  - name: P2P SSV
    description: P2P-managed SSV validator operations (deposit, claim, withdraw).
  - name: Polkadot
    description: Polkadot staking and nomination pool operations.
  - name: Polygon
    description: Polygon staking operations.
  - name: Pooled Staking
    description: Pooled staking vault operations (deposit, unstake, withdraw).
  - name: Sei
    description: Sei staking operations (stake, unstake, redelegate, claim).
  - name: Solana
    description: Solana staking operations (stake, split, merge, deactivate, withdraw).
  - name: SSV
    description: SSV network validator operations.
  - name: Story
    description: Story network staking operations.
  - name: Sui
    description: Sui staking operations.
  - name: TON
    description: TON staking operations (single nominator, whales pool).
  - name: TRON
    description: TRON staking operations (freeze, delegate, vote, withdraw).
  - name: Unified
    description: Unified multi-chain staking interface.
paths:
  /api/v1/eth/staking/ssv/p2p/deposits:
    get:
      tags:
        - P2P SSV
      summary: Get List Deposits
      description: >-
        Retrieve a list of all deposits along with the validator status either
        by withdrawal address, transaction hash or deposit ID.
      operationId: p2p-transaction-deposit-list
      parameters:
        - name: limit
          required: true
          in: query
          description: Number of resources that a single response page contains.
          schema:
            minimum: 1
            maximum: 1000
            format: double
            example: 50
            type: number
        - name: offset
          required: true
          in: query
          description: Number of resources to exclude from a response.
          schema:
            minimum: 0
            maximum: 100000
            format: double
            example: 0
            type: number
        - name: type
          required: true
          in: query
          description: Type of the request.
          schema:
            example:
              WITHDRAWAL_ADDRESS: withdrawalAddress
              TRANSACTION_HASH: transactionHash
              MARKERS: markers
            type: string
            enum:
              - withdrawalAddress
              - transactionHash
              - markers
        - name: withdrawalAddress
          required: false
          in: query
          description: Withdrawal address for the validators.
          schema:
            pattern: ^0x[a-fA-F0-9]{40}$
            example: '0x338EF19fA2eC0fc4d1277B1307a613fA1FBbc0cb'
            type: string
        - name: transactionHash
          required: false
          in: query
          description: Hash of the deposit transaction.
          schema:
            pattern: ^0x([A-Fa-f0-9])+$
            nullable: false
            example: '0x2b1c6bbdeadb0b23ca8260a819fde1c0b0347b0fd42c33a9b2513b36d6521dc6'
            type: string
        - name: markers
          required: false
          in: query
          description: Array of markers to filter the deposits.
          schema:
            type: array
            items:
              type: string
              format: uuid
              minimum: 1
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/SuccessResponse'
                  - type: object
                    properties:
                      result:
                        $ref: '#/components/schemas/SsvDepositListResponse'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ExceptionResponse'
                  - type: object
                    properties:
                      error:
                        $ref: '#/components/schemas/CommonValidationException'
              examples:
                ValidationException:
                  value:
                    error:
                      code: 100101
                      message: >-
                        The data provided is not valid. Please check the request
                        parameters and try again.
                      name: ValidationException
                      type: client
                    result: null
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ExceptionResponse'
                  - type: object
                    properties:
                      error:
                        oneOf:
                          - $ref: '#/components/schemas/AuthNoTokenException'
                          - $ref: '#/components/schemas/AuthWrongTokenException'
              examples:
                NoTokenException:
                  value:
                    error:
                      code: 101111
                      message: >-
                        No Bearer token has been provided. To obtain an
                        authentication token, follow the instructions at
                        https://docs.p2p.org/docs/authentication.
                      name: NoTokenException
                      type: authentication
                    result: null
                WrongTokenException:
                  value:
                    error:
                      code: 101109
                      message: >-
                        An invalid Bearer token has been provided. Please
                        specify the correct authentication token.
                      name: WrongTokenException
                      type: authentication
                    result: null
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                allOf:
                  - $ref: '#/components/schemas/ExceptionResponse'
                  - type: object
                    properties:
                      error:
                        oneOf:
                          - $ref: '#/components/schemas/AuthTokenGuardException'
                          - $ref: '#/components/schemas/SsvDepositListException'
              examples:
                TokenGuardException:
                  value:
                    error:
                      code: 101110
                      message: >-
                        The request could not be performed because the server
                        authorization error occurred.
                      name: TokenGuardException
                      type: server
                    result: null
                DepositListException:
                  value:
                    error:
                      code: 111144
                      message: Failed to get list of deposits
                      name: DepositListException
                      type: server
                    result: null
      security:
        - bearer: []
components:
  schemas:
    SuccessResponse:
      type: object
      properties:
        error:
          type: object
          nullable: true
          default: null
          description: Error object. Always null on successful responses.
        result:
          type: object
          description: Response payload containing the requested data.
      description: Standard API success response envelope wrapping the result payload.
      required:
        - error
        - result
    SsvDepositListResponse:
      type: object
      properties:
        limit:
          type: integer
          format: int32
          minimum: 1
          default: 50
          example: 50
          description: Number of resources that a single response page contains.
        offset:
          type: integer
          format: int32
          minimum: 0
          example: 0
          description: Number of resources to exclude from a response.
        totalCount:
          type: integer
          format: int32
          minimum: 1
          example: 150
          description: >-
            Total count of resources relevant to the current request, based on
            filters applied.
        list:
          description: List of SSV deposit records.
          type: array
          items:
            $ref: '#/components/schemas/SsvDepositResponse'
        markers:
          description: Markers associated with the deposit.
          type: array
          items:
            $ref: '#/components/schemas/SsvAddEthMarkerResponse'
        totalAmount:
          type: string
          description: Total amount of tokens in the deposits.
        unprocessedAmount:
          type: string
          description: Total amount of unprocessed tokens in the deposits.
      required:
        - limit
        - offset
        - totalCount
        - list
        - markers
        - totalAmount
        - unprocessedAmount
    ExceptionResponse:
      type: object
      properties:
        error:
          type: object
          description: Error object containing exception details. Null on success.
        result:
          type: object
          nullable: true
          default: null
          description: Result payload. Always null on error responses.
        requestId:
          type: string
          description: >-
            Identifier of the request (the `x-request-id` header). Quote this
            value to correlate the response with server logs.
          example: 90c16e9e-6e99-4651-a033-60290356df2f
        timestamp:
          type: string
          format: date-time
          description: ISO 8601 timestamp of when the error response was generated.
          example: '2026-05-20T22:29:03.126Z'
      description: Standard API error response envelope wrapping the exception details.
      required:
        - error
        - result
        - timestamp
    CommonValidationException:
      type: object
      properties:
        type:
          type: string
          default: client
          example: client
          description: Exception category.
        code:
          type: integer
          format: int32
          default: 100101
          example: 100101
          description: Numeric error code identifying the exception type.
        message:
          type: string
          default: >-
            The data provided is not valid. Please check the request parameters
            and try again.
          example: >-
            The data provided is not valid. Please check the request parameters
            and try again.
          description: Human-readable error message describing what went wrong.
        errors:
          description: Validation error details when applicable.
          type: array
          items:
            $ref: '#/components/schemas/ValidationErrorResponse'
        name:
          type: string
          default: ValidationException
          example: ValidationException
          description: Exception class name for runtime error identification.
      required:
        - type
        - code
        - message
        - errors
        - name
    AuthNoTokenException:
      type: object
      properties:
        type:
          type: string
          default: authentication
          example: authentication
          description: Exception category.
        code:
          type: integer
          format: int32
          default: 101111
          example: 101111
          description: Numeric error code identifying the exception type.
        message:
          type: string
          default: >-
            No Bearer token has been provided. To obtain an authentication
            token, follow the instructions at
            https://docs.p2p.org/docs/authentication.
          example: >-
            No Bearer token has been provided. To obtain an authentication
            token, follow the instructions at
            https://docs.p2p.org/docs/authentication.
          description: Human-readable error message describing what went wrong.
        name:
          type: string
          default: NoTokenException
          example: NoTokenException
          description: Exception class name for runtime error identification.
      required:
        - type
        - code
        - message
        - name
    AuthWrongTokenException:
      type: object
      properties:
        type:
          type: string
          default: authentication
          example: authentication
          description: Exception category.
        code:
          type: integer
          format: int32
          default: 101109
          example: 101109
          description: Numeric error code identifying the exception type.
        message:
          type: string
          default: >-
            An invalid Bearer token has been provided. Please specify the
            correct authentication token.
          example: >-
            An invalid Bearer token has been provided. Please specify the
            correct authentication token.
          description: Human-readable error message describing what went wrong.
        name:
          type: string
          default: WrongTokenException
          example: WrongTokenException
          description: Exception class name for runtime error identification.
      required:
        - type
        - code
        - message
        - name
    AuthTokenGuardException:
      type: object
      properties:
        type:
          type: string
          default: server
          example: server
          description: Exception category.
        code:
          type: integer
          format: int32
          default: 101110
          example: 101110
          description: Numeric error code identifying the exception type.
        message:
          type: string
          default: >-
            The request could not be performed because the server authorization
            error occurred.
          example: >-
            The request could not be performed because the server authorization
            error occurred.
          description: Human-readable error message describing what went wrong.
        name:
          type: string
          default: TokenGuardException
          example: TokenGuardException
          description: Exception class name for runtime error identification.
      required:
        - type
        - code
        - message
        - name
    SsvDepositListException:
      type: object
      properties:
        type:
          type: string
          default: server
          example: server
          description: Exception category.
        code:
          type: integer
          format: int32
          default: 111144
          example: 111144
          description: Numeric error code identifying the exception type.
        message:
          type: string
          default: Failed to get list of deposits
          example: Failed to get list of deposits
          description: Human-readable error message describing what went wrong.
        name:
          type: string
          default: DepositListException
          example: DepositListException
          description: Exception class name for runtime error identification.
      required:
        - type
        - code
        - message
        - name
    SsvDepositResponse:
      type: object
      properties:
        deposit:
          description: Deposit details including transaction hash and amounts.
          allOf:
            - $ref: '#/components/schemas/SsvDepositDepoResponse'
        validator:
          description: Validator details including public key and status.
          allOf:
            - $ref: '#/components/schemas/SsvDepositValidatorResponse'
      required:
        - deposit
        - validator
    SsvAddEthMarkerResponse:
      type: object
      properties:
        marker:
          type: string
          description: Marker identifier.
          example: 3648ff79-a714-4503-9f0f-772f7e6a1105
        processStatus:
          type: string
          description: Marker process status.
          example: pending
        address:
          type: string
          description: Client withdrawal address linked to the marker.
          example: '0x338EF19fA2eC0fc4d1277B1307a613fA1FBbc0cb'
          pattern: ^0x[a-fA-F0-9]{40}$
        amount:
          type: string
          description: Total amount of tokens in Wei associated with this marker.
          example: '32000000000000000000'
        amountPerValidator:
          type: string
          description: Amount of tokens in Gwei per validator.
          example: '32000000000'
        feeRecipientAddress:
          type: string
          description: Fee recipient address for the marker.
          example: '0x53da3c92fCCEb0CFE1764f65DDfF1564A2b15585'
          pattern: ^0x[a-fA-F0-9]{40}$
      required:
        - marker
        - processStatus
        - address
        - amount
        - amountPerValidator
    ValidationErrorResponse:
      type: object
      properties:
        property:
          type: string
          description: Name of the property that failed validation.
        constraints:
          type: object
          additionalProperties:
            type: string
          description: Validation constraint details describing what was expected.
      required:
        - property
        - constraints
    SsvDepositDepoResponse:
      type: object
      properties:
        depositId:
          type: string
          description: Deposit ID generated by the P2P smart contract.
          example: 49851686-9058-491f-a393-9ca477a7063a
        marker:
          type: string
          example: 3648ff79-a714-4503-9f0f-772f7e6a1105
          description: Unique marker associated with the deposit and transaction.
        transactionHash:
          type: string
          description: Hash of the deposit transaction.
          example: '0xc6180e03f1ea7e30eba1c0870471516c575e695afa5066b55038ca73df242e33'
          readOnly: true
        senderAddress:
          type: string
          description: Sender address.
          example: '0x338EF19fA2eC0fc4d1277B1307a613fA1FBbc0cb'
          pattern: ^0x[a-fA-F0-9]{40}$
        withdrawalAddress:
          type: string
          description: Withdrawal address of the validator.
          example: '0x338EF19fA2eC0fc4d1277B1307a613fA1FBbc0cb'
          pattern: ^0x[a-fA-F0-9]{40}$
        feeRecipientAddress:
          type: string
          description: Fee recipient address.
          example: '0x338EF19fA2eC0fc4d1277B1307a613fA1FBbc0cb'
          pattern: ^0x[a-fA-F0-9]{40}$
        totalAmount:
          type: string
          description: Total amount of tokens deposited in Gwei.
          example: '32000000000'
        unprocessedAmount:
          type: string
          description: Amount of tokens in Gwei that was not processed by the contract.
          example: '32000000000'
      required:
        - depositId
        - marker
        - transactionHash
        - senderAddress
        - withdrawalAddress
        - feeRecipientAddress
        - totalAmount
        - unprocessedAmount
    SsvDepositValidatorResponse:
      type: object
      properties:
        status:
          type: string
          enum:
            - any
            - not_found
            - pending_initialized
            - pending_queued
            - active_ongoing
            - active_exiting
            - active_slashed
            - exited_unslashed
            - exited_slashed
            - withdrawal_possible
            - withdrawal_done
          description: >-
            <p>State of the validator:</p><ul><li>`not_found` — specified
            validator could not be located.</li><li>`pending_initialized` —
            validator is initialized but not yet in the queue for
            activation.</li><li>`pending_queued` — validator entered a queue for
            activation.</li><li>`active_ongoing` — validator was activated and
            currently participates in attesting and proposing
            blocks.</li><li>`active_exiting` — validator is in process of
            exiting the network while participating in the validator
            activities.</li><li>`active_slashed` — validator was slashed due to
            misbehaviors.</li><li>`exited_unslashed` — validator has exited the
            network without being slashed and is no longer acting as a
            validator.</li><li>`exited_slashed` — validator has exited the
            network after being slashed and is no longer acting as a
            validator.</li><li>`withdrawal_possible` — validator has a non-zero
            balance.</li><li>`withdrawal_done` — validator completed the
            withdrawal process.</li></ul>
          example: active_ongoing
          readOnly: true
        amount:
          type: string
          example: '1'
          description: Total stake amount for the validator at the moment.
        pubkey:
          type: string
          description: Validator public key.
          example: >-
            0xbe5E9c3Bb9eba1BF4C5eC1c1cbcF85ee2CE2fEC66Ce5460C23eF82332A044FDCabF7011F588CCbD77E73CCe6c4accDF0
          pattern: ^0x[a-fA-F0-9]{96}$
        withdrawalCredentials:
          type: string
          description: Withdrawal credentials of the validator.
          example: '0x01'
        signature:
          type: string
          description: Signature of the deposit data.
          example: '0x01'
        depositMessageRoot:
          type: string
          description: Deposit message root.
          example: '0x01'
          readOnly: true
        depositDataRoot:
          type: string
          description: Deposit data root.
          example: '0x01'
          readOnly: true
        forkVersion:
          type: string
          description: Fork version of the validator.
          example: '0x01'
        depositCliVersion:
          type: string
          description: Deposit CLI version used for the deposit.
          example: 0.1.0
        eth2NetworkName:
          type: string
          description: Ethereum 2.0 network name.
          example: mainnet
      required:
        - status
        - amount
        - pubkey
        - withdrawalCredentials
        - signature
        - depositMessageRoot
        - depositDataRoot
        - forkVersion
        - depositCliVersion
        - eth2NetworkName
  responses:
    TooManyRequests:
      description: >-
        Too Many Requests — the client exceeded its rate limit. The response
        advertises when to retry and the active quota via headers.
      headers:
        Retry-After:
          description: Number of seconds to wait before retrying the request.
          schema:
            type: integer
            example: 60
        RateLimit-Limit:
          description: >-
            The request quota (maximum number of requests) for the most
            restrictive applicable window.
          schema:
            type: integer
            example: 120
        RateLimit-Reset:
          description: >-
            Number of seconds until the rate-limit window resets and requests
            are accepted again.
          schema:
            type: integer
            example: 60
        RateLimit-Policy:
          description: >-
            The active rate-limit policy as `<limit>;w=<window-seconds>`,
            comma-separated when multiple windows apply.
          schema:
            type: string
            example: 120;w=60
      content:
        application/json:
          schema:
            type: object
            properties:
              error:
                type: object
                properties:
                  code:
                    type: integer
                  name:
                    type: string
                    example: ThrottlerException
                  message:
                    type: string
                    example: ThrottlerException
                  errors:
                    type: array
                    nullable: true
                    items:
                      type: object
              result:
                type: object
                nullable: true
                example: null
              requestId:
                type: string
                description: >-
                  Identifier of the request (the `x-request-id` header). Quote
                  this value to correlate the response with server logs.
                example: 90c16e9e-6e99-4651-a033-60290356df2f
              timestamp:
                type: string
                format: date-time
                description: ISO 8601 timestamp of when the error response was generated.
                example: '2026-05-20T22:29:03.126Z'
  securitySchemes:
    bearer:
      scheme: bearer
      bearerFormat: JWT
      type: http

````

## Related topics

- [Get List Deposits](/reference/p2p-transaction-direct-deposit-list.md)
- [Initial Staking](/docs/initial-staking.md)
- [Getting started](/docs/getting-started-ssv-31.md)
- [Deposit](/docs/morpho-staking.md)
- [Get Request Deposit Data](/reference/ssv-request-deposit-data.md)
