Skip to content
DonutStatsAPI
Sign up
Items and prices

List price movers

The items whose price rose or fell the most since yesterday.

GET/v1/items/movers

Compares each product's market price with yesterday's daily price. Products need a price yesterday and at least minListings open listings today, which keeps one-off listings from dominating the list.

Authentication

API key with the read scope

Cached for

2 min

Data updates

Prices every 5 minutes, compared with yesterday's close.

Query parameters

  • limitintegeroptionaldefault 8

    Gainers and losers to return, each.

    1 to 50
  • minListingsintegeroptionaldefault 5

    Only products with at least this many open listings. Raise it for steadier results.

    1 to 1,000

Response

Gainers and losers.

  • gainersItem[]

    Biggest rises first. Each item also has change, equal to change1d.

    Show7 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.

        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.

    • pricesPrice

      Current figures.

      Show10 child fields
      • pricenumber | null

        Market price per item: the median unit price of the 5 cheapest open listings. null when nothing is listed.

      • lownumber | null

        Cheapest open listing, per item.

      • mediannumber | null

        Median unit price across every open listing of the product.

      • bidnumber | null

        Best open buy order, per item. Lowball orders under 25% of the market price are ignored unless they have already been filled for at least 1%.

      • listingsinteger

        Number of open auction listings.

      • quantityinteger

        Items for sale across those listings.

      • ordersinteger

        Number of open buy orders counted towards bid.

      • demandinteger

        Items those buy orders still want.

      • orderValuenumber

        Money those buy orders would still pay out: the sum of price times remaining amount.

      • updatedAttimestamp

        When these figures were computed.

  • losersItem[]

    Biggest drops first.

    Show10 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.

        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.

    • Current market figures.

      Show10 child fields
      • pricenumber | null

        Market price per item: the median unit price of the 5 cheapest open listings. null when nothing is listed.

      • lownumber | null

        Cheapest open listing, per item.

      • mediannumber | null

        Median unit price across every open listing of the product.

      • bidnumber | null

        Best open buy order, per item. Lowball orders under 25% of the market price are ignored unless they have already been filled for at least 1%.

      • listingsinteger

        Number of open auction listings.

      • quantityinteger

        Items for sale across those listings.

      • ordersinteger

        Number of open buy orders counted towards bid.

      • demandinteger

        Items those buy orders still want.

      • orderValuenumber

        Money those buy orders would still pay out: the sum of price times remaining amount.

      • updatedAttimestamp

        When these figures were computed.

    • change1dnumber | null

      Price change since yesterday as a fraction: 0.05 is 5% up.

    • change7dnumber | null

      Price change over 7 days as a fraction.

    • sparknumber[]

      Daily market prices for the last 30 days, oldest first. Only in lists.