EOR API Documentation

Welcome to the EOR API. This documentation provides comprehensive details on interacting with the various endpoints available.

Graphics

Access graphical assets used throughout the game, ranging from character sprites to environment textures.

Classes

Retrieve information on character classes, including abilities and base stats.

Items

Query information on in-game items, encompassing weapons, armor, and other categories.

Maps

Access details on game maps, including layout, NPCs, and item locations.

NPCs

Endpoints to retrieve data on Non-Player Characters (NPCs) including their stats and behaviors.

Spells

Access information on spells, including effects, costs, and requirements.

Quests

Endpoints to retrieve data on quests, including their details, requirements, and rewards.

Guides

Provides quest markers and guidance system details, helping players navigate to quest objectives.

Rates

Access game rate tables parsed from the rates pub file, including primary and secondary rate groups.

Shops

Access shop data, including items they sell, items they craft, and associated NPCs.

Meta Files

Access supplemental metadata files used for client-side visual tweaks, effects, mounts, and NPC presentation details.

Meta Effects

Effect metadata, including effect positioning, layers, sprite references, sound references, and sub-effects.

Meta NPCs

NPC presentation metadata, including signed visual tweak values used by the client.

Meta Mounts

Mount presentation metadata, including signed mount offset/tweak values.

Enums

Retrieve predefined values for various enums used in the API. Each endpoint returns the name-value pairs for the specified enum.

Optional Parameter

Utilize the query parameter ?show_unk=1 to reveal unknown values that are unidentified by the parser.

Example Requests

JavaScript (using fetch)

fetch("https://eor-api.exile-studios.com/api/classes")
    .then(response => response.json())
    .then(data => console.log(data));

Python (using requests)

import requests
response = requests.get("https://eor-api.exile-studios.com/api/classes")
print(response.text)

curl (Command Line)

curl "https://eor-api.exile-studios.com/api/classes"

PHP (using cURL)

$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, "https://eor-api.exile-studios.com/api/classes");
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$response = curl_exec($curl);
curl_close($curl);
echo $response;

C# (using HttpClient)

using System;
using System.Net.Http;
using System.Threading.Tasks;

class Program
{
    static async Task Main(string[] args)
    {
        using (var client = new HttpClient())
        {
            var response = await client.GetStringAsync("https://eor-api.exile-studios.com/api/classes");
            Console.WriteLine(response);
        }
    }
}

Rust (using reqwest)

use reqwest;

#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
    let res = reqwest::get("https://eor-api.exile-studios.com/api/classes")
        .await?
        .text()
        .await?;

    println!("{}", res);
    Ok(())
}