BYTETOOLS

OSRS Wiki Prices API

Free Old School RuneScape Grand Exchange price API with no key: real-time high and low prices with trade timestamps for every tradeable item. Tested example included.

No API key requiredCORS enabledHTTPSFree tier

Endpoint tested and returned HTTP 200 on 21 Aug 2026

What is the OSRS Wiki Prices API?

The OSRS Wiki Prices API is a free, key-free API returning live Grand Exchange prices for every tradeable Old School RuneScape item. Each entry gives the most recent buy and sell price with the Unix timestamp of that trade, updated continuously from in-game data.

This API is run by the Old School RuneScape Wiki and is the data source most price-tracking sites and flipping tools sit on top of. It reports actual trade prices rather than the Grand Exchange's own guide price, which lags badly on volatile items — that difference is precisely why serious tooling uses it.

The `/latest` response is a map keyed by item id, not an array, so lookups are constant-time once you have the payload. The `high` and `low` pair is the last instant-buy and last instant-sell, and the accompanying `highTime` and `lowTime` timestamps matter — an item that last traded three days ago has a stale price no matter how good the number looks. The Wiki asks that you send a descriptive User-Agent identifying your project.

Quick facts

Base URL
https://prices.runescape.wiki/api/v1/osrs
Authentication
No key. The Wiki does ask for a descriptive User-Agent naming your project and a contact, and reserves the right to block anonymous scrapers.
Rate limit
No hard limit published. Data refreshes roughly every minute, so polling faster than that gains nothing.
Pricing
Free, run by the OSRS Wiki community.
CORS
Enabled — callable directly from browser JavaScript
Official docs
Read the docs

How to use the OSRS Wiki Prices API

Every request below was executed against the live API on 21 Aug 2026, and the response shown is the real body it returned — not an illustration.

1. Fetch the latest Grand Exchange prices for every item

GET https://prices.runescape.wiki/api/v1/osrs/latest

curl
curl 'https://prices.runescape.wiki/api/v1/osrs/latest'
JavaScript (fetch)
const res = await fetch("https://prices.runescape.wiki/api/v1/osrs/latest");
if (!res.ok) throw new Error(`Request failed: ${res.status}`);
const data = await res.json();
console.log(data);
Python (requests)
import requests

res = requests.get("https://prices.runescape.wiki/api/v1/osrs/latest", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200 (truncated)
{
  "data": {
    "2": {
      "high": 243,
      "highTime": 1787288997,
      "low": 235,
      "lowTime": 1787288997
    },
    "6": {
      "high": 208644,
      "highTime": 1787285710,
      "low": 199654,
      "lowTime": 1787287919
    },
    "8": {
      "high": 187000,
      "highTime": 1787285736,
      "low": 180000,
      "lowTime": 1787287926
    },
    "10": {
      "high": 166630,
      "highTime": 1787287643,
      "low": 166630,
      "lowTime": 1787287935
    },
    "12": {
      "high": 208765,
      "highTime": 1787285757,
      "low": 195000,
      "lowTime": 1787288138
    },
    "28": {
      "high": 327,
      "highTime": 1787284279,
      "low": 325,
      "lowTime": 1787288029
    },
    "30": {
      "high": 384,
      "highTime": 1787288335,
      "low": 413,
      "lowTime": 1787275862
    },
    "36": {
      "high": 649,
      "highTime": 1787289012,
      "low": 401,
      "lowTime": 1787287956
    },
    "39": {
      "high": 7,
      "highTime": 1787287559,
      "low": 5,
      "lowTime": 1787288856
    },
    "40": {
      "high": 10,
      "highTime": 1787288756,
      "low": 7,
      "lowTime": 1787285904
    },
    "41": {
      "high": 35,
      "highTime": 1787289002,
      "low": 35,
      "lowTime": 1787289015
    },
    "42": {
      "high": 77,
      "highTime": 1787288910,
      "low": 65,
      "lowTime": 1787289005
    },
    "43": {
      "high": 102,
      "highTime": 1787288652,
      "low": 96,
      "lowTime": 1787288874
    },
    "44": {
      "high": 252,
      "highTime": 1787288386,
      "low": 250,
      "lowTime":

Parameters

ParameterTypeRequiredDescription
idqueryOptionalRestrict `/latest` to a single item id instead of returning the whole map. 4151
timestepqueryOptionalFor the `/5m`, `/1h`, `/6h` and `/24h` endpoints, the averaging window. 5m
timestampqueryOptionalFetch a historical window rather than the most recent one. Unix seconds, aligned to the timestep. 1787280000

Response fields

dataobject
Map of item id (as a string key) to that item's price record. Not an array — index it directly by id.
data.{id}.highinteger
Price in coins of the most recent instant-buy — what you pay to buy immediately.
data.{id}.highTimeinteger
Unix timestamp in seconds of that buy. Check it: a price from days ago is not a current price.
data.{id}.lowinteger
Price of the most recent instant-sell — what you receive selling immediately.
data.{id}.lowTimeinteger
Unix timestamp of that sell.

What you can build with the OSRS Wiki Prices API

  • Build a Grand Exchange price tracker or flipping-margin calculator
  • Alert a Discord server when an item crosses a price threshold
  • Value a player's bank or inventory from item ids
  • Chart price history for an item using the 5-minute and hourly endpoints

Common errors and how to fix them

400

Malformed `timestamp` or an unsupported timestep.

Fix: Timestamps must be Unix seconds aligned to the timestep boundary — round down to the nearest 5 minutes for `/5m`.

403

Blocked for sending a generic or missing User-Agent.

Fix: Send a header identifying your project and a contact address, as the Wiki requests.

Missing item

Not every item appears in `/latest`.

Fix: Items with no recent trades are simply absent from the map. Treat a missing key as no recent price, not as an error.

OSRS Wiki Prices API — frequently asked questions

Is the OSRS Grand Exchange price API free?

Yes, it is free with no API key. It is operated by the Old School RuneScape Wiki, which asks only that you send a descriptive User-Agent header naming your project so they can contact you if it misbehaves.

What is the difference between high and low prices?

`high` is the most recent instant-buy price — what a player paid to buy immediately — and `low` is the most recent instant-sell. The gap between them is the flipping margin, before the Grand Exchange tax.

How often do OSRS prices update?

Roughly once a minute for the `/latest` endpoint. Averaged endpoints exist at 5-minute, 1-hour, 6-hour and 24-hour resolutions, and those are the ones to use for charts, since single trades can be outliers.

How do I map item ids to names?

The prices API returns ids only. Fetch the companion `/mapping` endpoint once and cache it — it maps every id to its name, examine text, members flag, buy limit and high-alch value.

Tools that pair with this API

Alternatives to OSRS Wiki Prices API

If OSRS Wiki Prices does not fit, these game & anime apis cover similar ground. Every one was called before publishing, and each links to its own reference page with a working curl command and the response it returned.

APIWhat it doesAuthCORSLast verified
PokéAPIFree Pokémon API with no key: stats, types, abilities, moves, evolutions and sprites for 1,000+ species. The most popular API for learning REST. Tested example.No keyYes19 Aug 2026
Rick and Morty APIFree Rick and Morty API with no key: 800+ characters, episodes and locations with images, filtering and pagination. REST and GraphQL. Tested example.No keyYes19 Aug 2026
Jikan (MyAnimeList)Free unofficial MyAnimeList API with no key: anime and manga data, scores, characters, staff and seasonal listings. Tested curl example and live JSON.No keyYes19 Aug 2026
Deck of CardsFree playing card API with no key: shuffle decks, draw cards, manage piles and get card images. Stateful deck ids. Tested curl example and live JSON.No keyYes19 Aug 2026
Path of ExileOfficial Path of Exile API with no key for public endpoints: current leagues, ladders, PvP matches and the public stash tab river. Tested curl example included.No keyYes21 Aug 2026
PlayerDBFree player lookup API with no key: resolve a Minecraft username to a UUID and skin, or query Steam and Xbox accounts, from one consistent endpoint shape. Live example.No keyYes21 Aug 2026
All Game & Anime APIs

OSRS Wiki Prices is an independent third-party service and is not affiliated with ByteTools or ByteVancer. Details on this page were verified on 21 Aug 2026; always check the official documentation before relying on this API in production, as terms and limits can change.