Skip to content
DonutStatsAPI
Sign up
Auction house

List auction history

Every listing that ever left the auction house.

GET/v1/auction/history

The complete record of closed listings, newest first, going back to the first day of DonutStats. Filter by item, exact product or seller, and narrow it to a time range with from and to. Pages are walked with a cursor, so deep pages are as fast as the first one.

Listings that sold quickly are usually real sales. Listings that stayed up for days and then vanished are more likely cancelled or expired, so compare firstSeenAt and closedAt when you estimate prices from this feed.

Authentication

API key with the read scope

Cached for

20 s

Data updates

New entries with every auction house refresh. Kept forever.

Query parameters

  • itemstringoptional

    Exact item id such as diamond_sword. Matches every variant of the item.

  • productstringoptional

    Exact product key such as diamond_sword[sharpness:5]. Matches that variant only. URL encode the brackets.

  • sellerstringoptional

    Only listings by this player, when the seller is known.

  • fromtimestampoptional

    Only entries at or after this time, in Unix milliseconds.

  • totimestampoptional

    Only entries before this time, in Unix milliseconds.

  • limitintegeroptionaldefault 100

    Entries per page.

    1 to 1,000
  • cursorstringoptional

    The next value from the previous response. Leave it out for the first page. See cursors.

Response

A feed of closed listings, newest first. from and to apply to closedAt.

  • limitinteger

    Entries per page.

  • nextstring | null

    Pass this as cursor to get the next page. null on the last page.

  • The entries on this page, newest first.

    Show10 child fields
    • idinteger

      Stable id of the listing. It never changes or gets reused.

    • productProduct

      What is being sold.

      Show6 child fields
      • keystring

        Unique product key: the item id, plus the variant in square brackets when there is one. Examples: diamond, elytra[mending,unbreaking:3], potion[poison]. Use it with product= filters and /v1/items/{key}.

      • itemstring

        Minecraft item id without the minecraft: namespace, for example netherite_sword. Many products can share one item id.

      • namestring

        Display name, for example Potion of Poison.

      • variantstring

        What sets this product apart from the plain item. Empty for plain items. See variants for the rules.

      • categorystring | null

        One of combat, tools, valuables, drops, food, potions, blocks or misc.

      • Structured extras such as enchantments, shulker box contents or a custom name.

        Show5 child fields
        • enchantmentsEnchantment[]

          Enchantments on the item itself, sorted by id. Left out when there are none.

        • storedEnchantmentsEnchantment[]

          Enchantments stored in an enchanted book. Left out for every other item.

        • contentsContainerEntry[]

          What a shulker box holds, one entry per item id with counts added together, largest first.

        • customNamestring

          The name shown in game when it differs from the default item name. DonutSMP renames some items, for example Dried Ghast on a skeleton skull.

        • flightDurationinteger

          Flight duration of a firework rocket, from 1 to 3.

    • countinteger

      Stack size, from 1 to 64.

    • pricenumber

      Asking price for the whole stack.

    • unitPricenumber

      Asking price per item: price divided by count.

    • Details of this exact stack. They can carry more than the product does, such as the full contents of a shulker box.

      Show5 child fields
      • enchantmentsEnchantment[]

        Enchantments on the item itself, sorted by id. Left out when there are none.

        Show2 child fields
        • idstring

          Enchantment id without the minecraft: namespace, for example sharpness.

        • levelinteger

          Enchantment level, starting at 1.

      • storedEnchantmentsEnchantment[]

        Enchantments stored in an enchanted book. Left out for every other item.

        Show2 child fields
        • idstring

          Enchantment id without the minecraft: namespace, for example sharpness.

        • levelinteger

          Enchantment level, starting at 1.

      • contentsContainerEntry[]

        What a shulker box holds, one entry per item id with counts added together, largest first.

        Show2 child fields
        • itemstring

          Item id, for example netherite_sword.

        • countinteger

          Total number of that item in the box.

      • customNamestring

        The name shown in game when it differs from the default item name. DonutSMP renames some items, for example Dried Ghast on a skeleton skull.

      • flightDurationinteger

        Flight duration of a firework rocket, from 1 to 3.

    • firstSeenAttimestamp

      When the listing first appeared.

    • lastSeenAttimestamp

      When the listing was last confirmed on the auction house.

    • sellerstring | null

      Username of the seller, once known. null until then.

    • closedAttimestamp

      When the listing left the auction house: it sold, was cancelled or expired.

Status codes

StatusWhen
400Bad RequestA filter or the cursor is malformed.
404Not Foundseller is not a player on record.