---
title: "Get user tx history"
method: GET
path: "/api/v1/users/{address}/tx-history"
tags: ["User"]
---

# Get user tx history

`GET /api/v1/users/{address}/tx-history`

## Path parameters

- `address` string, required — The user account address

## Query parameters

- `action` union
  - 'borrow_flash_loan'
  - 'return_flash_loan'
  - 'create_token_unlock'
  - 'reclaim_token_unlock'
  - 'liquidate'
  - 'borrow'
  - 'return'
  - 'lend'
  - 'redeem'
  - 'deposit_collateral'
  - 'withdraw_collateral'
  - 'claim_war_chest'
  - 'bond'
  - 'unbond'
  - 'claim_unbonded'
  - 'claim_token_unlock'
  - 'claim_rewards'
  - 'cascade'
  - 'send'
- `sort_order` union
  - 'asc'
  - 'desc'
- `prev_event_uuid` string, uuid, nullable — Optional UUID skip parameter used for pagination. Providing the last event UUID on a given page will return the next page beginning with the following (unseen) item.
- `limit` integer — Maximum number of transactions to return. Optional and defaults to `20` if missing.
- `with_text` boolean — Include text variation fields
- `with_value` boolean — Calculate and include USD values for amounts, where applicable

## Response `200`

Success response

- UserTxListResponse
  - `data` UserTx[], required
    - `event_uuid` string, uuid, required — Internal UUID created when the transaction was first indexed by Neptune. Primary usage for API clients is tx history pagination offsets. NOTE: event UUIDs should not be used as a guaranteed method of uniquely identifying a transaction event over extended periods of time. Future updates to our indexer may infrequently require a full re-index of transactions, resulting in newly generated UUIDs.
    - `event_time` string, date-time, required — Event/transaction block time
    - `tx_hash` string, required — Transaction hash
    - `action` union, required
      - 'borrow_flash_loan'
      - 'return_flash_loan'
      - 'create_token_unlock'
      - 'reclaim_token_unlock'
      - 'liquidate'
      - 'borrow'
      - 'return'
      - 'lend'
      - 'redeem'
      - 'deposit_collateral'
      - 'withdraw_collateral'
      - 'claim_war_chest'
      - 'bond'
      - 'unbond'
      - 'claim_unbonded'
      - 'claim_token_unlock'
      - 'claim_rewards'
      - 'cascade'
      - 'send'
    - `contract_address` string, required — Address for the event's corresponding contract
    - `account_address` string, required — Account address corresponding to the transaction
    - `destination_address` string, nullable, required — Destination account address. Non-null for `send`/`transfer` transactions. This field will be null for all other action types.
    - `account_index` integer, nullable, required — Neptune market sub-account index. Will be set for the following event types: `borrow`, `return`, `deposit_collateral`, `withdraw_collateral`, `liquidate`, `bond`, `unbond`. Otherwise the value is guaranteed to be null.
    - `asset` AssetInfo, required — Asset identifiers with associated metadata
      - `asset` AssetSpec, required — Provides a unique identifier for an asset for use throughout the Neptune API. IDs are unique across asset domains (contract tokens, native denoms, etc)
        - `id` string, required
        - `group` union, required
          - 'native'
          - 'token'
        - `group_key` string, required
      - `metadata` AssetMetadata, required — Additional metadata for assets
        - `name` string, required — Full name of the asset
        - `symbol` string, required — Symbol of the asset, e.g.: `NEPT` `INJ`
        - `symbol_denom` string, required — Denom symbol for the asset (e.g. `inj` for `INJ`, `sat` for `BTC`)
        - `decimals_denom` integer, required — Denom exponent, or num. of decimal places that shift between denom/standard amounts (e.g. `18` for `INJ`)
        - `decimals_display` integer, required — Number of decimals used when displaying amounts of this asset (this is subjective and used for generating text representations)
      - `classification` union, required — The asset's classification metadata. Assets are classfied to provide context on their usage throughout the Neptune API (e.g. regular assets, neptune receipt tokens, LSTs, etc.) Each asset belongs to only a single classification type. This object contains metadata pertaining to the given classification. While some fields may be common among the distinct classifcations, each classification is distinct and subject to independent change.
        - object
          - `kind` 'regular', required
          - `neptune_receipt_asset` AssetSpec, required — Provides a unique identifier for an asset for use throughout the Neptune API. IDs are unique across asset domains (contract tokens, native denoms, etc)
            - `id` string, required
            - `group` union, required
              - …
            - `group_key` string, required
        - object
          - `kind` 'neptune_receipt_token', required
          - `origin_asset` AssetSpec, required — Provides a unique identifier for an asset for use throughout the Neptune API. IDs are unique across asset domains (contract tokens, native denoms, etc)
            - `id` string, required
            - `group` union, required
              - …
            - `group_key` string, required
        - object
          - `kind` 'liquid_staking_token', required
          - `origin_asset` AssetSpec, required — Provides a unique identifier for an asset for use throughout the Neptune API. IDs are unique across asset domains (contract tokens, native denoms, etc)
            - `id` string, required
            - `group` union, required
              - …
            - `group_key` string, required
    - `amount` string, nullable, required — The relevant amount for the given tx/event. This value will be set for all currently implemented action types. It is set as nullable for forwards compatibility for future action types which may not have an associated amount.
    - `historic_price` union, required — The price of the associated asset at the time of the transaction. This value will be set for all currently implemented action types. It is set as nullable for forwards compatibility for future action types which may not have an associated amount.
      - string
      - number
    - `historic_value` union, required — The USD value at the time of the transaction. Derived using the amount and historical price of the associated asset. This value will be set for all currently implemented action types. It is set as nullable for forwards compatibility for future action types which may not have an associated amount.
      - string
      - number
    - `extra` object, required
      - `text` object, nullable, required — Human-readable field variants. Will not be null when query param `with_text` is `true`.
        - `event_time` string, required
        - `historic_value` string, required
        - `amount` string, required
        - `action` string, required
        - `historic_price` string, required
      - `value` object, nullable, required — USD values for the corresponding amounts above. Will not be null when query param `with_value` is `true`. ### Note This variant group contains an additional `price` field (set to the number used in value calculation). The embedded text group will contain the text variant if `with_text` was specified as well.
        - `amount` string, nullable, required
        - `price` string, required — Price used in value calculations
        - `extra` object, required
          - `text` object, nullable, required — Human-readable variants of USD values. Will not be null when query params `with_text` and `with_value` are `true`.
            - `amount` string, nullable
            - `price` string, nullable — Text representation of price
  - `count` integer, required — Total number of objects irrespective of any pagination parameters.
  - `error` unknown, required
  - `status` integer, required — HTTP status. Successful responses are guaranteed to be < `400`. Conversely, error responses are guaranteed to be >= `400`.
  - `status_text` string, required — HTTP status text

## Other responses

- `500` — Server error response
- `default`

## Changes

- **2026-04-02** `3e68b318eeaa` — 4 breaking, 6 info
  - removed the required property `data/items/extra/text/price` from the response with the `200` status
  - removed the required property `data/items/extra/text/value` from the response with the `200` status
  - removed the required property `data/items/price` from the response with the `200` status
  - removed the required property `data/items/value` from the response with the `200` status
  - …6 more
- **2026-03-31** `09b5978b7e7d` — 4 breaking, 10 info
  - added `subschema #9: JSON invalid, subschema #10: JSON decode, subschema #11: JSON body deserialize failure` to the `error/allOf[#/components/schemas/ErrorDataVariants]/anyOf[subschema #1: General/common error -> subschema #2: General/common error]/allOf[#/components/schemas/ErrorData]/kind/allOf[#/components/schemas/ErrorKind]/` response property `oneOf` list for the response status `500`
  - added `subschema #9: JSON invalid, subschema #10: JSON decode, subschema #11: JSON body deserialize failure` to the `error/allOf[#/components/schemas/ErrorDataVariants]/anyOf[subschema #1: General/common error -> subschema #2: General/common error]/allOf[#/components/schemas/ErrorData]/kind/allOf[#/components/schemas/ErrorKind]/` response property `oneOf` list for the response status `default`
  - removed the required property `count` from the response with the `500` status
  - removed the required property `count` from the response with the `default` status
  - …10 more
- …earlier changes not shown

[Full history](https://skmtc.dev/cryptechdev/apis/neptune-api-v2/changes/api/v1/users/:address/tx-history/get.md)

---

[API](https://skmtc.dev/cryptechdev/apis/neptune-api-v2.md) · [All operations](https://skmtc.dev/cryptechdev/apis/neptune-api-v2/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/cryptechdev/neptune-api-v2/revisions/05e0ec4b9b94/schema)
