---
title: "Get trade by tx hash"
method: GET
path: "/v1/trades/{txHash}"
tags: ["Trades"]
---

# Get trade by tx hash

`GET /v1/trades/{txHash}`

## Request

- Base URL: `https://crowdintel.xyz/api`
- URL: `https://crowdintel.xyz/api/v1/trades/{txHash}`
- Auth: HTTP bearer

**Min tier: `free`.** Single trade fill by transaction hash (Postgres point lookup).

## Path parameters

- `txHash` string, required

## Response `200`

Trade fill.

- Trade
  - `id` union
    - integer
    - string
  - `tx_hash` string
  - `proxy_wallet` string
  - `condition_id` string, nullable
  - `market_slug` string, nullable
  - `market_title` string, nullable
  - `side` 'BUY' | 'SELL' | 'null', nullable
  - `outcome` string, nullable: What the trader bet on (e.g. 'Yes'), not WIN/LOSS.
  - `price` number, nullable
  - `size` number, nullable
  - `bet_value_usd` number, nullable
  - `trade_timestamp` string, date-time, nullable

## Other responses

- `400`: Malformed parameters or a rejected guardrail (e.g. unfiltered trades query, cluster blowup, window > 90 days).
- `401`: Missing, invalid, or revoked API key. Returned before the rate limiter runs, so it carries no `X-RateLimit-*` headers.
- `403`: Key valid but its tier is below this endpoint's minimum. Returned before the rate limiter runs, so it carries no `X-RateLimit-*` headers.
- `404`: The requested resource was not found.
- `429`: Hourly or monthly rate limit exceeded.

---

[API](https://skmtc.dev/crowdintel/apis/crowdintel-api.md) · [All operations](https://skmtc.dev/crowdintel/apis/crowdintel-api/llms.txt) · [OpenAPI document](https://skmtc.dev/crowdintel/apis/crowdintel-api/revisions/7059cfe9320d?raw)
