Skip to content

Endpoints

Every route is scoped by chronicle; today that’s always interlude. List endpoints accept limit and offset for pagination. armor-sets, locations, and regions return every record in a single response and ignore pagination.

Route lists use real example IDs so URLs can be opened directly.

https://l2api.dev/api/interlude/items
https://l2api.dev/api/interlude/items/57
https://l2api.dev/api/interlude/items/57/dropped-by
https://l2api.dev/api/interlude/items/57/spoiled-by
https://l2api.dev/api/interlude/npcs
https://l2api.dev/api/interlude/npcs/30048
https://l2api.dev/api/interlude/npcs/30048/drops
https://l2api.dev/api/interlude/npcs/30048/shop
https://l2api.dev/api/interlude/npcs/30048/spawns
https://l2api.dev/api/interlude/monsters
https://l2api.dev/api/interlude/monsters/29001
https://l2api.dev/api/interlude/quests
https://l2api.dev/api/interlude/quests/1
https://l2api.dev/api/interlude/classes
https://l2api.dev/api/interlude/classes/2
https://l2api.dev/api/interlude/hennas
https://l2api.dev/api/interlude/hennas/1
https://l2api.dev/api/interlude/armor-sets
https://l2api.dev/api/interlude/locations
https://l2api.dev/api/interlude/regions
https://l2api.dev/api/interlude/meta/item-grades
https://l2api.dev/api/interlude/meta/item-types
https://l2api.dev/api/interlude/meta/npc-types

Source-faithful records, mainly for auditing and debugging — see Scope.

https://l2api.dev/api/interlude/raw/npcs
https://l2api.dev/api/interlude/raw/npcs/30048
https://l2api.dev/api/interlude/raw/monsters
https://l2api.dev/api/interlude/raw/monsters/29001
https://l2api.dev/api/interlude/raw/monsters/29001/spawns

List endpoints accept limit and offset:

https://l2api.dev/api/interlude/items?limit=10&offset=20
  • limit — records per page. Default 50, max 200.
  • offset — records to skip. Default 0.

armor-sets, locations, and regions return everything in one response and ignore these parameters.

Failed requests return a flat error message and a status code:

{
"error": "Invalid id: abc",
"status": 400
}