*_names.json static?

#1 - May 20, 2013, 4:59 p.m.
Blizzard Post

Can we assume that the three _names.json API calls are relatively static? i.e. that the server/event/map associated with an id will not change arbitrarily?

Specifically in the context of an Android app, I’d like to cache the results from these calls for a given “session” and avoid calling all three whenever I make an events.json call.

#2 - May 20, 2013, 5:17 p.m.
Blizzard Post

Yes, please cache the results!

The names are guaranteed to be static between game patches/builds, but it’s possible for the list to grow between patches. The Events API, like the Item API, only shows events and maps that have been discovered by players.

So the ‘perfect’ logic would be to cache the results, and only do a lookup after a patch or if you don’t have a cached result for a particular event ID. And you probably don’t really need to do it between patches, as event names will rarely if ever change after being created.

#4 - May 20, 2013, 5:30 p.m.
Blizzard Post

If any player in the world participates in an event, then it is considered discovered.
If any player in the world acquires an item, then it is considered discovered.

How quickly an item or event is discovered depends on how well-hidden it is in the world. It’s possible that an event or item might never be discovered.

Edit: To clarify, once something is discovered on any world, it is considered discovered on all worlds.