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

# List lifecycle events for a deposit account

> Returns normalized lifecycle events for the deposit account, ordered by occurred_at ASC (oldest first). Events are sourced from the existing bridge-webhook ingestion (virtual_account.activity). Cross-tenant ids surface 404. Per ONR-05.



## OpenAPI

````yaml /api-reference/openapi.json get /payout/onramp/deposit-accounts/{id}/events
openapi: 3.0.0
info:
  title: Relayer
  description: >-
    Relayer API — Kit-based crypto infrastructure for OTC exchange, wallet
    signing, payouts, and widget actions.
  version: '1.0'
  contact: {}
servers:
  - url: https://testnet.relayer.fi/v1
    description: Sandbox (testnet wallets, no real fiat)
  - url: https://api.relayer.fi/v1
    description: Production (mainnet wallets, regulated fiat rails)
security:
  - api-key: []
tags:
  - name: 'Action: Builders'
    description: Transaction metadata builders
  - name: 'Action: Directory'
    description: Widget directory
  - name: 'Action: Execute'
  - name: 'Action: Tokens'
    description: Token lists per chain/protocol
  - name: Addresses
  - name: Agents
  - name: App
    description: Application endpoints
  - name: 'Payout: Accounts'
    description: Payment execution
  - name: 'Payout: Off-ramp'
  - name: 'Payout: On-ramp'
  - name: 'Payout: Orders'
  - name: 'Payout: Recipients'
    description: Beneficiary management
  - name: Signing - Passkeys
  - name: Signing - Recovery
  - name: Signing Approvals
    description: Transaction signing approvals
  - name: Signing Policies
    description: Signing policy management
  - name: Transactions
    description: Transaction signing and broadcasting
  - name: Wallets
    description: Wallet and address management
paths:
  /payout/onramp/deposit-accounts/{id}/events:
    get:
      tags:
        - 'Payout: On-ramp'
      summary: List lifecycle events for a deposit account
      description: >-
        Returns normalized lifecycle events for the deposit account, ordered by
        occurred_at ASC (oldest first). Events are sourced from the existing
        bridge-webhook ingestion (virtual_account.activity). Cross-tenant ids
        surface 404. Per ONR-05.
      operationId: OnrampController_listEvents
      parameters:
        - name: id
          required: true
          in: path
          schema:
            type: string
      responses:
        '200':
          description: Event list (may be empty)
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/DepositAccountEventResponseDto'
        '404':
          description: Deposit account not found for this integrator
      security:
        - bearer: []
      x-codeSamples:
        - lang: bash
          label: cURL
          source: >-
            curl
            https://api.relayer.fi/v1/payout/onramp/deposit-accounts/$DEPOSIT_ID/events
            \
              -H "Authorization: ApiKey $RELAYER_API_KEY"
        - lang: TypeScript
          label: Node.js
          source: >-
            const response = await fetch(
              `https://api.relayer.fi/v1/payout/onramp/deposit-accounts/${depositId}/events`,
              { headers: { Authorization: `ApiKey ${process.env.RELAYER_API_KEY}` } },
            );

            // Lifecycle events: deposit_received → fiat_converted →
            stablecoin_sent → completed.
components:
  schemas:
    DepositAccountEventResponseDto:
      type: object
      properties:
        id:
          type: string
          description: Event row UUID (payout.deposit_account_events.id)
          example: b2c3d4e5-f6a7-8901-bcde-f23456789012
        deposit_account_id:
          type: string
          description: Owning deposit account UUID
          example: a1b2c3d4-e5f6-7890-abcd-ef1234567890
        bridge_deposit_id:
          type: object
          description: >-
            Bridge deposit id grouping events for a single transaction. Null
            pre-receipt.
          nullable: true
          example: dep_01h5x...
        type:
          type: string
          description: FE-stable normalized event type — switch on this in the timeline UI
          enum:
            - received
            - scheduled
            - submitted
            - processed
            - refunded
            - in_review
            - unknown
          example: received
        raw_type:
          type: string
          description: >-
            Raw Bridge event type verbatim from the webhook payload. Kept for
            debugging / future-proofing in case Bridge introduces a new event
            before NORMALIZED_EVENT_TYPES is updated.
          example: funds_received
        status:
          type: object
          description: Optional sub-status from Bridge (e.g. payment processor state)
          nullable: true
        amount:
          type: object
          description: >-
            Decimal amount as a string (numeric column — stringified to avoid JS
            float precision loss).
          nullable: true
          example: '125.50'
        currency:
          type: object
          description: ISO-3-letter currency code for the amount
          nullable: true
          example: usd
        occurred_at:
          type: string
          description: >-
            When the event happened (Bridge-supplied). Null if Bridge omitted
            it.
          format: date-time
          nullable: true
      required:
        - id
        - deposit_account_id
        - bridge_deposit_id
        - type
        - raw_type
        - status
        - amount
        - currency
        - occurred_at
  securitySchemes:
    api-key:
      type: apiKey
      in: header
      name: Authorization
      description: 'Use this format: `ApiKey <your_api_key>`'

````