Skip to content

OTC Offer Event History

GET /api/otc/offer/history/v2
Fills the fields below — runs automatically if your API key is saved.
Get a free API key →
curl

Returns the immutable event log for OTC buy-side offers: every created, updated, cancelled, filled, and expired event with block + extrinsic context. For current offer state use /api/otc/offer/v2.

NameInTypeRequiredDescription
offer_idquerystringFilter to events for one specific offer.
event_typequeryEvent type: created, updated, cancelled, filled, expired.
buyerquerystringFilter by buyer coldkey (SS58).
sellerquerystringFilter to events involving a specific seller (e.g. filled events).
netuidqueryintegerSubnet id.
block_startqueryintegerEarliest block height (inclusive).
block_endqueryintegerLatest block height (inclusive).
timestamp_startqueryintegerEarliest Unix timestamp in seconds (inclusive).
timestamp_endqueryintegerLatest Unix timestamp in seconds (inclusive).
pagequeryinteger1-based page number.
limitqueryintegerPage size (max 200).
orderquerySort order.

200 — TAO offer history retrieved successfully

Section titled “200 — TAO offer history retrieved successfully”

Media: application/json

Schema
{
"type": "object",
"required": [
"pagination",
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"offer_id",
"event_type",
"buyer",
"netuid",
"amount",
"price_offset_bps",
"block_number",
"timestamp",
"extrinsic_id"
],
"properties": {
"alpha_amount": {
"type": "string",
"nullable": true
},
"amount": {
"type": "string"
},
"amount_returned": {
"type": "string",
"nullable": true
},
"block_number": {
"type": "integer",
"format": "int32"
},
"buyer": {
"type": "object",
"required": [
"ss58",
"hex"
],
"properties": {
"hex": {
"type": "string",
"description": "The hex format of the hot key"
},
"ss58": {
"type": "string",
"description": "The SS58 format of the hot key"
}
}
},
"event_type": {
"type": "string"
},
"executed_price": {
"type": "string",
"nullable": true
},
"extrinsic_id": {
"type": "string"
},
"fee": {
"type": "string",
"nullable": true
},
"id": {
"type": "string"
},
"netuid": {
"type": "integer",
"format": "int32"
},
"offer_id": {
"type": "string"
},
"price_offset_bps": {
"type": "integer",
"format": "int32"
},
"seller": {
"allOf": [
{
"type": "object",
"required": [
"ss58",
"hex"
],
"properties": {
"hex": {
"type": "string",
"description": "The hex format of the hot key"
},
"ss58": {
"type": "string",
"description": "The SS58 format of the hot key"
}
}
}
],
"nullable": true
},
"timestamp": {
"type": "string",
"format": "date-time"
}
}
}
},
"pagination": {
"type": "object",
"required": [
"current_page",
"per_page",
"total_items",
"total_pages"
],
"properties": {
"current_page": {
"type": "integer",
"format": "int32"
},
"next_page": {
"type": "integer",
"format": "int32",
"nullable": true
},
"per_page": {
"type": "integer",
"format": "int32"
},
"prev_page": {
"type": "integer",
"format": "int32",
"nullable": true
},
"total_items": {
"type": "integer",
"format": "int32"
},
"total_pages": {
"type": "integer",
"format": "int32"
}
}
}
}
}

All Taostats API requests require an Authorization header containing your API key. See Getting Started.