Dofus APIdofus.com ↗
Access Dofus 3.0 game data via API: 19 playable classes, daily Almanax bonuses, bug tracker reports, and global achievement rankings.
What is the Dofus API?
The Dofus API exposes 5 endpoints covering Dofus 3.0 encyclopedia and community data, including all 19 playable classes, daily Almanax calendar entries, bug tracker reports, and global player rankings. The get_class_detail endpoint returns per-class roles, lore descriptions, and baseline role labels, while get_almanax delivers today's in-game date, bonus, zodiac sign, and Meridia effect in a single call.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/789fc286-b339-4031-9496-f3a44ec7320b/get_all_classes' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace dofus-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
from parse_apis.dofus_3_0_api import Dofus, DofusClass, Bug, Almanax, Player, BugStatus
client = Dofus()
# List all playable classes
for cls in client.dofusclasses.list():
print(cls.id, cls.name, cls.slug)
# Get detailed info for a specific class
feca = client.dofusclasses.get(id="1", slug="feca")
print(feca.name, feca.baseline, feca.roles, feca.description)
# Get today's almanax
almanax = client.almanaxes.today()
print(almanax.date, almanax.zodiac, almanax.bonus, almanax.quest)
print(almanax.meridia.name, almanax.meridia.description)
# List bugs filtered by status using the enum
for bug in client.bugs.list(status=BugStatus.IN_PROGRESS):
print(bug.id, bug.priority, bug.status, bug.description)
# Browse achievement rankings
for player in client.players.list(limit=10):
print(player.rank, player.name, player.class_, player.server, player.level, player.points)
Get all playable character classes from the Dofus encyclopedia. Returns 19 classes with their IDs, slugs, display names, page URLs, and avatar image URLs. Each class entry provides the id and slug needed for get_class_detail.
No input parameters required.
{
"type": "object",
"fields": {
"classes": "array of class objects each containing id, slug, name, url, and icon_url"
},
"sample": {
"data": {
"classes": [
{
"id": "1",
"url": "https://www.dofus.com/en/mmorpg/encyclopedia/classes/1-feca",
"name": "Feca",
"slug": "feca",
"icon_url": "https://static.ankama.com/dofus/ng/img/../modules/mmorpg/encyclopedia/unity/breeds/assets/avatar/1.jpg"
},
{
"id": "8",
"url": "https://www.dofus.com/en/mmorpg/encyclopedia/classes/8-iop",
"name": "Iop",
"slug": "iop",
"icon_url": "https://static.ankama.com/dofus/ng/img/../modules/mmorpg/encyclopedia/unity/breeds/assets/avatar/8.jpg"
}
]
},
"status": "success"
}
}About the Dofus API
Class Encyclopedia
The get_all_classes endpoint returns the full list of 19 playable classes, each with an id, slug, name, url, and icon_url. Pass the id and slug together to get_class_detail to retrieve role arrays (e.g. ["Tank", "Protector", "Debuffer"]), a baseline primary role label, and a description containing the class lore text. Both IDs and slugs come directly from get_all_classes, so no external lookup is required.
Almanax and Daily Content
get_almanax requires no inputs and returns everything needed to display the current day's Krosmoz calendar entry: date in the in-game format (e.g. '7 Maysial'), bonus, quest, zodiac, and a meridia object with name, description, and the separate meridian_effect string. This endpoint reflects today's data and does not accept a date parameter for future or past lookups.
Bug Tracker
list_bugs pulls from the Dofus community bug tracker and returns up to 100 records per call. Each bug object includes id, priority, type, status, sprint, player_type, description, and a forum_link. The optional status filter accepts known values such as 'Verified or Done' and 'To Check'; matching is case-insensitive. The total field in the response indicates how many bugs match the applied filter.
Player Rankings
get_rankings returns global achievement leaderboard data, 100 players per page. Each entry includes rank, name, class, server, level, and points. Use the optional page parameter (as a string) to paginate through the full rankings list.
The Dofus API is a managed, monitored endpoint for dofus.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when dofus.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official dofus.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Display up-to-date Almanax daily bonuses and offerings in a Dofus companion app using
get_almanax. - Build a class comparison tool using
get_class_detailrole arrays and baseline labels for all 19 classes. - Show a live bug tracker dashboard filtered by status (e.g. 'To Check') using
list_bugs. - Populate a server-specific leaderboard widget with rank, class, level, and achievement points from
get_rankings. - Generate class-selection guides using lore descriptions and multi-role data from
get_class_detail. - Monitor newly verified or resolved bugs by diffing
list_bugsresults filtered to 'Verified or Done' over time. - Display class icons and slugs in a character builder UI sourced directly from
get_all_classes.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Dofus have an official developer API?+
Can I query Almanax data for a specific past or future date?+
get_almanax returns today's entry only and does not accept a date parameter. Historical or scheduled Almanax data is not currently covered. You can fork the API on Parse and revise it to add a date-parameterized endpoint if you need calendar range lookups.What does the `status` filter in `list_bugs` accept, and are there other filter options?+
status parameter accepts known values including 'Verified or Done' and 'To Check', matched case-insensitively. Filtering by priority, type, or sprint is not currently supported. You can fork the API on Parse and revise it to add those filter parameters.Does `get_rankings` cover server-specific or guild leaderboards?+
How many bugs does `list_bugs` return per call, and can I paginate?+
total count for the filtered set. Pagination is not currently supported on this endpoint, so only the first 100 matching results are returned per request.