oh sure, I was just thinking if there was a sensible heuristic for "in-between". Like, if a user has permission x, he can also use the api key to do that x. But I think that is more troublesome then it is useful
I can't find it in the backlog right now, but this was discussed previously. Basically, the game doesn't really keep track of what NPC gives what upgrades, it's all UI-based and not easily serialized. The best solution right now is just to hardcode your own lookup table.