Wynncraft Recipe Resource

Rate-Limit

The Rate Limit for the Recipe Resource is 600 requests per 30 minutes per IP.

Get


GET /recipe/get/{name}

Returns a Recipe Object, which details public statistical information about the recipe.

Response

{
    "kind": "wynncraft/recipe/get",
    "code": Number,
    "message": String,
    "timestamp": Number,
    "version": String,
    "data": [Recipe Object]
    // ...
}

Recipe Object

Field Type Description Options
level Object Minimum / Maximum
type String Recipe Type
skill String Skills that use this recipe
materials Object Array Materials required for this recipe
healthOrDamage Object Minimum / Maximum
durability Object Minimum / Maximum
id String Recipe ID/Name List Below
{
    //...
    "data": [{
        "level": {
            "minimum":3,
            "maximum":5
        },
        "type": "BOOTS",
        "skill": "TAILORING", 
        "materials": [{
                "item": "Refined Copper Ingot", 
                "amount": 1
            }, {
                "item": "Refined Wheat String",
                "amount": 2
        }],
        "healthOrDamage": {
            "minimum": 14,
            "maximum": 20
        },
        "durability": {
            "minimum": 104, 
            "maximum": 108
        },
        "id": "Boots-3-5"
    }]
}

List


GET /recipe/list

Returns a list of all recipe ids.

It is recommended to call this route once, and cache the results upon each recipe update.

Response

{
    "kind": "wynncraft/recipe/list",
    "code": Number,
    "message": String,
    "timestamp": Number,
    "version": String,
    "data": [String]
    // ...
}

GET /recipe/search/{query}/{args}

This is the base route for searching for recipes. Each query has its own structure of how to search. Please read carefully.

Response

{
    "kind": "wynncraft/recipe/search",
    "code": Number,
    "message": String,
    "timestamp": Number,
    "version": String,
    "data": [Recipe Object]
    // ...
}

Search Queries

Query Name Query Complexity
type Simple
skill Simple
level Complex
durability Complex
healthOrDamage Complex
duration Complex
basicDuration Complex
  • Note: Sadly, there are no material searches at this time.

Simple Queries

Simple queries perform simple pattern matching and display results. There is no conditionality.


Type Query

GET /recipe/search/type/{type}

Will return a list of Recipe Object whose name includes the pattern type.


Complexity: Simple
Requirements: None

{
    "kind": "wynncraft/recipe/search/type/Boots",
    "code": Number,
    "message": String,
    "timestamp": Number,
    "version": String,
    "data": [{
        "id": "Boots-1-3",
        //...
    }, {
        "id": "Boots-1-5",
        // ...
    }, ...]
}

Skill Query

GET /recipe/search/skill/{skill}

Will return a list of Recipe Object whose skill is skill.


Complexity: Simple
Requirements:

  • Must be a full skill name, not a partial one.
{
    "kind": "wynncraft/recipe/search/skill/Tailoring",
    "code": Number,
    "message": String,
    "timestamp": Number,
    "version": String,
    "data": [{
        "id": "Boots-1-3",
        //...
    }, {
        "id": "Pants-1-3",
        // ...
    }, ...]
}

Complex Queries

Complex queries combine conditionality and Object field searches.


Symbols

Moderate and complex queries use the notion of "symbols" for expression. Each symbol has its own meaning, and it manipulates the list succeeding it accordingly. At this time, there is no ability to combine symbols that behave similarly to && and || in many popular programming languages.

Symbol Meaning
& Requires inclusion of all items in succeeding list. Acts like and in programming.
^ Requires inclusion of at least one item in succeeding list. Acts like or in programming.

Triangular Bracket Notation

Complex queries use <> notation to do advanced searches that include specifying Object fields.

Level Query

GET /recipe/search/level/{symbol}{props}

Will return a list of Recipe Object. This query searches for recipes whose properties (or props) of the level field are the specified value.


Complexity: Complex
Requirements:

  • symbol must be valid and supported symbol.
  • props must either be one or a list of the properties described below:
Property Notation
minimum minimum<Number> or min<Number>
maximum maximum<Number> or max<Number>
{
    "kind": "wynncraft/recipe/search/level/&min<5>",
    "code": Number,
    "message": String,
    "timestamp": Number,
    "version": String,
    "data": [{
        "id": "Bow-5-7",
        //...
    }, {
        "id": "Bracelet-5-7",
        // ...
    }, ...]
}

Durability Query

GET /recipe/search/durability/{symbol}{props}

Will return a list of Recipe Object. This query searches for recipes whose properties (or props) of the durability field are the specified value.


Complexity: Complex
Requirements:

  • symbol must be valid and supported symbol.
  • props must either be one or a list of the properties described below:
Property Notation
minimum minimum<Number> or min<Number>
maximum maximum<Number> or max<Number>
{
    "kind": "wynncraft/recipe/search/durability/&min<100>",
    "code": Number,
    "message": String,
    "timestamp": Number,
    "version": String,
    "data": [{
        "id": "Boots-1-3",
        //...
    }, {
        "id": "Bow-1-3",
        // ...
    }, ...]
}

HealthOrDamage, Duration, BasicDuration

These follow the same format as Level and Durability Searches.