Skip to content

List OTC lockup listings

GET /api/otc/lockup/listing/v1

Returns active and historical lockup listings on the Taostats OTC desk. A lockup listing is a sell-side OTC offer where the purchased alpha is held in an escrow account and only claimable by the buyer after a defined unlock_block. Sellers commit alpha; buyers commit TAO up-front; the escrow releases on unlock.

Lockups use offset pricing (price_offset_bps) — the executed price floats with the current alpha market price plus or minus the offset in basis points, snapped at purchase time.

NameInTypeRequiredDescription
listing_idquerystringFilter by exact lockup listing id.
sellerquerystringFilter by seller coldkey (SS58).
hotkeyquerystringFilter by the hotkey the alpha is delegated to.
netuidqueryintegerSubnet id.
statusqueryLifecycle state: active, filled, cancelled, expired.
price_offset_bps_minqueryintegerMinimum price offset in basis points (signed; -10000 to +10000). Negative = discount, positive = premium.
price_offset_bps_maxqueryintegerMaximum price offset in basis points.
lockup_duration_minqueryintegerMinimum lockup duration in blocks.
lockup_duration_maxqueryintegerMaximum lockup duration in blocks.
total_amount_minquerystringMinimum total alpha originally listed (rao).
total_amount_maxquerystringMaximum total alpha originally listed (rao).
remaining_amount_minquerystringMinimum alpha still available to purchase (rao).
remaining_amount_maxquerystringMaximum alpha still available to purchase (rao).
created_block_startqueryintegerEarliest creation block (inclusive).
created_block_endqueryintegerLatest creation block (inclusive).
created_timestamp_startqueryintegerEarliest creation timestamp (seconds, inclusive).
created_timestamp_endqueryintegerLatest creation timestamp (seconds, inclusive).
pagequeryinteger1-based page number.
limitqueryintegerPage size (max 200).
orderquerySort order, e.g. created_block_desc.

200 — Lockup listings retrieved successfully

Section titled “200 — Lockup listings retrieved successfully”

Media: application/json

Schema
{
"type": "object",
"required": [
"pagination",
"data"
],
"properties": {
"data": {
"type": "array",
"items": {
"type": "object",
"required": [
"listing_id",
"seller",
"hotkey",
"netuid",
"total_amount",
"remaining_amount",
"price_offset_bps",
"lockup_duration",
"status",
"force_cancelled",
"created_block",
"created_timestamp",
"updated_block",
"updated_timestamp"
],
"properties": {
"created_block": {
"type": "integer",
"format": "int32"
},
"created_timestamp": {
"type": "string",
"format": "date-time"
},
"force_cancelled": {
"type": "boolean"
},
"hotkey": {
"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"
}
}
},
"initiated_by": {
"type": "string",
"nullable": true
},
"listing_id": {
"type": "string"
},
"lockup_duration": {
"type": "integer",
"format": "int32"
},
"netuid": {
"type": "integer",
"format": "int32"
},
"price_offset_bps": {
"type": "integer",
"format": "int32"
},
"remaining_amount": {
"type": "string"
},
"seller": {
"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"
}
}
},
"status": {
"type": "string"
},
"total_amount": {
"type": "string"
},
"updated_block": {
"type": "integer",
"format": "int32"
},
"updated_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"
}
}
}
}
}

Interactive request console coming soon. In the meantime you can use the OpenAPI spec with any client (Insomnia, Bruno, Scalar, curl).

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