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

# position_effects — DeFi Position Changes in TxReport

> position_effects surfaces high-level DeFi position changes in TxReport — borrow, repay, collateral, liquidity, and liquidation events.

`position_effects` contains high-level semantic DeFi position changes inferred from the transaction. Rather than parsing raw token flows to determine if collateral increased, `position_effects` surfaces that interpretation directly.

## Example

```json theme={null}
{
  "subject": "0x...",
  "effect": "IncreaseCollateral",
  "kind": "LendingPosition"
}
```

## Fields

<ResponseField name="subject" type="string | null">
  The address associated with the position change. May be `null` if the engine could not resolve a specific subject for the effect.
</ResponseField>

<ResponseField name="effect" type="string" required>
  Describes what changed in the position. Common values include:

  | Value                | Description                                        |
  | -------------------- | -------------------------------------------------- |
  | `IncreaseCollateral` | Collateral was added to a lending position         |
  | `DecreaseCollateral` | Collateral was withdrawn from a lending position   |
  | `Borrow`             | An asset was borrowed against deposited collateral |
  | `Repay`              | A borrowed asset was fully or partially repaid     |
  | `AddLiquidity`       | Liquidity was supplied to a pool                   |
  | `RemoveLiquidity`    | Liquidity was withdrawn from a pool                |
  | `Liquidate`          | A position was liquidated                          |
</ResponseField>

<ResponseField name="kind" type="string" required>
  The category of the position that was affected. Common values include:

  | Value               | Description                                         |
  | ------------------- | --------------------------------------------------- |
  | `LendingPosition`   | A collateral or debt position in a lending protocol |
  | `LiquidityPosition` | An LP position in a liquidity pool                  |
</ResponseField>

## When to use `position_effects`

`position_effects` is most valuable for DeFi-specific transaction kinds. Apply the following guidance when building UIs or analytics:

* **Prefer `position_effects` over raw token flows** for the following `classification.intent_kind` values: `LendingDeposit`, `LendingWithdraw`, `Borrow`, `Repay`, `Liquidation`, `LiquidityProvision`, `LiquidityRemoval`. These intents are best explained through their position-level semantics rather than individual token movements.
* **Build semantic cards** — use `position_effects` to surface human-readable summaries like *"Collateral increased by 5 ETH"* or *"Borrowed 1,000 USDC"* instead of generic token transfer tables.
* **Check for empty arrays** — for non-DeFi transactions (swaps, plain transfers, contract deployments), `position_effects` will typically be empty. Guard against this before rendering DeFi-specific UI components.

<Note>
  Not every transaction produces position effects. Simple swaps, transfers, and contract deployments typically return an empty `position_effects` array.
</Note>
