Skip to content

Sales

Sales reads return confirmed sales ordered newest first.

Returns a cursor-paginated feed of confirmed sales.

NameTypeRequiredDefaultDescription
limitintegerno50Page size. Min 1, max 100.
cursorstringnoOpaque cursor from pagination.nextCursor.
collectionSlugstringnoRestrict to one collection. Case-insensitive. Letters, numbers, hyphens, and underscores are allowed.
Terminal window
curl "https://ord.net/api/v1/sales?collectionSlug=wizards&limit=25" \
-H "Authorization: Bearer $ORD_SESSION_TOKEN"
FieldTypeDescription
salesarrayConfirmed sale rows, newest first.
sales[].saleIdstringSale event identifier.
sales[].saleTypestringinternal for ORD.NET-settled sales, external for off-market sales detected from chain data.
sales[].txidstring | nullSettlement transaction id.
sales[].inscriptionIdstringSold inscription id.
sales[].inscriptionNumberstringInscription number as a string.
sales[].inscriptionNamestringDisplay name of the inscription.
sales[].collection.slugstring | nullCollection slug, if any.
sales[].collection.namestring | nullCollection display name.
sales[].collection.kindstring | nullOne of parent_child, gallery.
sales[].collection.verificationStatusstring | nullOne of verified, unverified.
sales[].sellerAddressstring | nullSeller ordinals address.
sales[].buyerAddressstring | nullBuyer ordinals address.
sales[].priceSatsintegerSale price in sats.
sales[].pricenumberSale price in BTC.
sales[].priceUsdnumber | nullSale price in USD using the block-time BTC/USD quote, when available.
sales[].soldAtISO 8601 datetimeSale confirmation time.
sales[].blockHeightintegerSale block height.
pagination.pageSizeintegerItems in this page.
pagination.hasNextbooleantrue if more pages exist.
pagination.nextCursorstring | nullCursor for the next call. null on the last page.
{
"sales": [
{
"saleId": "99",
"saleType": "external",
"txid": "abc123...",
"inscriptionId": "abc123...i0",
"inscriptionNumber": "12345",
"inscriptionName": "Inscription 12345",
"collection": {
"slug": "wizards",
"name": "Wizards",
"kind": "parent_child",
"verificationStatus": "verified"
},
"sellerAddress": "bc1p...",
"buyerAddress": "bc1p...",
"priceSats": 50000,
"price": 0.0005,
"priceUsd": 50,
"soldAt": "2026-05-08T18:00:00.000Z",
"blockHeight": 900101
}
],
"pagination": {
"pageSize": 25,
"hasNext": true,
"nextCursor": "<opaque-cursor>"
}
}
  • 200: sales returned.
  • 400: invalid limit, cursor, or collectionSlug.
  • 401: missing or invalid bearer token.
  • 403: wallet not allowed.
  • 429: rate limited.
  • 500: internal server error.

The cursor encodes the last seen sale. Changing collectionSlug between calls invalidates the cursor. Start a new pagination from the beginning.

Unknown collectionSlug filters return an empty page, not 404.