Character achievement statistics data issue

depending on some toons character_achievement_statistics returns different arrays …
$region = ‘US’;
$realm = ‘wyrmrest-accord’;
$toon = ‘ferrerona’;
returns $chardata[‘categories’]
where as
$toon = ‘ulminia’;
$region = ‘US’;
$realm = ‘zangarmarsh’;
returns $chardata[‘statistics’]

this is really not what i was expecting to have 2 names return for one endpoint…


I have same issue.

On US api :

_links: {}, character: {}, categories: [{“id”: 130,“name”: “Character”…}]

On EU api :

_links: {}, character: {}, statistics: [{“id”: 130,“name”: “Character”…}]


I have EU case with array name “categories” here :

Have you heard anything about the problem?


On 2020/03/24, the statistics field was renamed to categories. This is a breaking change. Characters that log out after that date will have the new categories field name; characters that last logged out before that date will have the old statistics field name.

We would like to apologize for making this change without notice or explanation. We had intended for the rename to happen before releasing the endpoint and, after it was released with the statistics field name, had intended to keep the statistics field name. Due to a miscommunication internally, the rename was applied during weekly maintenance last week.

“Foo was renamed to Bar. New data will have Bar, old data will have Foo. We originally meant to rename Foo to Bar, until we forgot to do that before release and published Foo, then we meant to keep it as Foo, then we forgot to keep it as Foo and renamed it to Bar later anyway.”

So are we sticking with “Bar”, aka “categories”, from now on?

Correct. We made a mistake here, and we’re sorry.

As characters log out, the old field name will (slowly) be phased out. Hopefully, as time goes on, this lessens the impact of this issue.

I wasn’t trying to scold. We all make mistakes. My point was that your story, while interesting, was also confusing and ultimately unimportant regarding what API consumers should expect. Obviously at different points in development you preferred Foo or Bar, and it was unclear (at least to me) after identifying the issue whether you would stick with Bar or revert back to Foo.

Thank you for answering that question. We understand that old data may be cached with the incorrect field name until it is eventually updated to use the intended “categories”.