BYTETOOLS

Raider.IO API

Free World of Warcraft API with no key: Mythic+ scores, raid progression, character and guild rankings, and the current week's affixes with icons. Live tested example.

No API key requiredCORS enabledHTTPSFree tier

Endpoint tested and returned HTTP 200 on 2026-08-21

What is the Raider.IO API?

Raider.IO's API is a free, key-free source of World of Warcraft character and guild data — Mythic+ scores and run history, raid progression, guild rankings, and the rotating affixes for the current week in any region.

The affix endpoint is the one worth wiring into a UI first, because it changes weekly and everything else in Mythic+ depends on it. The response gives you a `title` that reads like a season name but is not — it is simply the week's affix names joined with commas. Each affix then appears in `affix_details` with its own description and two image fields: `icon`, a bare WoW icon key like `ability_toughness`, and `icon_url`, the ready-made CDN link. Use the URL; the key exists so you can point at your own icon pack if you have one.

Character lookups need three parameters together — `region`, `realm` and `name` — and the realm must be the slug form, lowercase and hyphenated, not the display name with spaces and apostrophes. Getting that wrong yields a 400 rather than a 404, which sends people hunting for a malformed request when the real problem is `Area 52` instead of `area-52`. The free tier is generous but explicitly non-commercial; commercial use is a conversation with Raider.IO, not a paid self-serve plan.

Quick facts

Base URL
https://raider.io/api/v1
Authentication
The free tier needs no key. It is licensed for non-commercial use; commercial applications need to arrange access with Raider.IO directly.
Rate limit
No rate-limit headers are returned on the free tier. Raider.IO asks for reasonable use and caching, particularly for character lookups.
Pricing
Free for non-commercial use.
CORS
Enabled — callable directly from browser JavaScript
Official docs
Read the docs

How to use the Raider.IO API

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

1. Fetch this week's Mythic+ affixes for the US region

GET https://raider.io/api/v1/mythic-plus/affixes?region=us&locale=en

curl
curl 'https://raider.io/api/v1/mythic-plus/affixes?region=us&locale=en'
JavaScript (fetch)
const res = await fetch("https://raider.io/api/v1/mythic-plus/affixes?region=us&locale=en");
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://raider.io/api/v1/mythic-plus/affixes?region=us&locale=en", timeout=20)
res.raise_for_status()
print(res.json())
Response — HTTP 200 (truncated)
{
  "region": "us",
  "title": "Xal'atath's Bargain: Pulsar, Fortified, Tyrannical, Xal'atath's Guile",
  "leaderboard_url": "https://raider.io/mythic-plus-affix-rankings/season-mn-2/all/us/leaderboards-strict/xalataths-bargain-pulsar-fortified-tyrannical-xalataths-guile",
  "affix_details": [
    {
      "id": 162,
      "name": "Xal'atath's Bargain: Pulsar",
      "description": "While in combat, Xal'atath summons pulsars that orbit players.",
      "icon": "inv_cosmicvoid_nova",
      "icon_url": "https://cdn.raiderio.net/images/wow/icons/large/inv_cosmicvoid_nova.jpg",
      "wowhead_url": "https://wowhead.com/affix=162"
    },
    {
      "id": 10,
      "name": "Fortified",
      "description": "Non-boss enemies have 20% more health and inflict up to 20% increased damage.",
      "icon": "ability_toughness",
      "icon_url": "https://cdn.raiderio.net/images/wow/icons/large/ability_toughness.jpg",
      "wowhead_url": "https://wowhead.com/affix=10"
    },
    {
      "id": 9,
      "name": "Tyrannical",
      "description": "Bosses have 25% more health. Bosses and their minions inflict up to 15% increased damage.",
      "icon": "achievement_boss_archaedas",
      "icon_url": "https://cdn.raiderio.net/images/wow/icons/large/achievement_boss_archaedas.jpg",
      "wowhead_url": "https://wowhead.com/affix=9"
    },
    {
      "id": 147,
      "name": "Xal'atath's Guile",
      "description": "Xal'atath betrays players, revoking her bargains while making deaths subtract 15 seconds from time remaining.",
      "icon": "ability_racial_chillofnight",
      "icon_url": "htt

Parameters

ParameterTypeRequiredDescription
regionqueryRequiredGame region: `us`, `eu`, `tw`, `kr`, `cn`. us
localequeryOptionalLanguage for names and descriptions. en
realmqueryOptionalRealm slug for character and guild endpoints — lowercase and hyphenated, not the display name. area-52
namequeryOptionalCharacter or guild name for the profile endpoints. Thrall
fieldsqueryOptionalComma-separated expansions on a character profile, such as `mythic_plus_scores_by_season:current`. gear,raid_progression

Response fields

regionstring
Echo of the region you queried — useful when caching several regions in one store.
titlestring
The week's affixes joined into one comma-separated string. Not a season name, despite reading like one.
leaderboard_urlstring
Deep link to the Raider.IO leaderboard filtered to this affix set.
affix_details[].idinteger
Blizzard's own affix id — stable across weeks, so it is the right key to cache on.
affix_details[].descriptionstring
Player-facing explanation of the affix's effect, already localised to `locale`.
affix_details[].iconstring
Bare WoW icon key such as `ability_toughness`, with no path or extension.
affix_details[].icon_urlstring
Fully-formed CDN URL for the same icon. Use this unless you host your own icons.
affix_details[].wowhead_urlstring
Link to the Wowhead page for the affix, handy as a 'read more' target.

What you can build with the Raider.IO API

  • Show the current week's Mythic+ affixes on a guild site
  • Display a player's Mythic+ score in a Discord bot
  • Track raid progression across a guild roster
  • Build a recruitment tool that filters applicants by score
  • Chart a character's key runs over a season

Common errors and how to fix them

400

A required parameter is missing, or the realm is in display form rather than slug form.

Fix: Realms are lowercase and hyphenated: `area-52`, not `Area 52`. A bad realm gives 400, not 404 — check the slug before assuming the character is missing.

400 on a character that exists

The character has not been scanned recently enough, or the region and realm do not match.

Fix: Confirm the character on the Raider.IO site first; the API only serves profiles the site has indexed.

Unexpectedly empty fields block

You requested a `fields` expansion that does not apply to that character.

Fix: Request expansions one at a time while debugging; unknown or inapplicable fields are dropped silently rather than erroring.

Raider.IO API — frequently asked questions

Is the Raider.IO API free?

Yes, for non-commercial use, and it needs no API key. Character profiles, guild data, rankings and the weekly affix rotation are all readable anonymously. Commercial applications are expected to contact Raider.IO rather than self-serve.

How do I get a character's Mythic+ score?

Call the character profile endpoint with `region`, `realm` and `name`, and add `fields=mythic_plus_scores_by_season:current`. The realm must be the slug form — lowercase, hyphenated — or you get a 400 rather than a not-found.

What is the title field in the affix response?

It is the week's affix names joined with commas, not a season title. If you want to display a season, read it from the leaderboard URL or the individual affix entries instead of parsing `title`.

Which regions does Raider.IO cover?

US, EU, Taiwan, Korea and China, selected with the `region` parameter. Affixes rotate on different schedules per region, so cache the affix response per region rather than globally.

Tools that pair with this API

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