OTC lockup claims
Endpoint
Section titled “Endpoint”GET /api/otc/lockup/claim/v1Description
Section titled “Description”Returns claim events — the on-chain moments where a buyer extracted their alpha from a lockup escrow account after the unlock_block. Each row records the escrow account, the alpha amount claimed, and the extrinsic that performed the claim. Pair with /api/otc/lockup/purchase/v1 to reconstruct full lockup lifecycles.
Parameters
Section titled “Parameters”| Name | In | Type | Required | Description |
|---|---|---|---|---|
buyer | query | string | Filter by buyer coldkey (SS58). | |
netuid | query | integer | Subnet id. | |
escrow_account | query | string | Filter by escrow account address (SS58). | |
unlock_block_start | query | integer | Earliest unlock block on the original purchase (inclusive). | |
unlock_block_end | query | integer | Latest unlock block (inclusive). | |
block_start | query | integer | Earliest claim block (inclusive). | |
block_end | query | integer | Latest claim block (inclusive). | |
timestamp_start | query | integer | Earliest claim timestamp (seconds, inclusive). | |
timestamp_end | query | integer | Latest claim timestamp (seconds, inclusive). | |
page | query | integer | 1-based page number. | |
limit | query | integer | Page size (max 200). | |
order | query | — | Sort order, e.g. block_number_desc. |
Responses
Section titled “Responses”200 — Lockup claims retrieved successfully
Section titled “200 — Lockup claims retrieved successfully”Media: application/json
Schema
{ "type": "object", "required": [ "pagination", "data" ], "properties": { "data": { "type": "array", "items": { "type": "object", "required": [ "id", "extrinsic_id", "buyer", "netuid", "amount_claimed", "unlock_block", "escrow_account", "block_number", "timestamp" ], "properties": { "amount_claimed": { "type": "string" }, "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" } } }, "escrow_account": { "type": "string" }, "extrinsic_id": { "type": "string" }, "id": { "type": "string" }, "netuid": { "type": "integer", "format": "int32" }, "timestamp": { "type": "string", "format": "date-time" }, "unlock_block": { "type": "integer", "format": "int32" } } } }, "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" } } } }}400 — Bad request
Section titled “400 — Bad request”500 — Internal server error
Section titled “500 — Internal server error”Try it
Section titled “Try it”Interactive request console coming soon. In the meantime you can use the OpenAPI spec with any client (Insomnia, Bruno, Scalar, curl).
Authentication
Section titled “Authentication”All Taostats API requests require an Authorization header containing your API key. See Getting Started.