The old XML api had a raw quantity field which enabled us to differentiate BPOs from BPCs. This doesn’t seem the case with ESI anymore. Or does it? We have a quantity field which seems to work like your typical quantity - 1 BPO and 1 BPC should both have the quantity of 1. But, I got a report that quantity suddenly appeared as -1 for blueprints. So the question is - is quantity field in ESI equivalent to raw quantity in XML, or is it the actual quantity, which should never drop below 1? @Steve_Ronuken do you have any inside info on that?
Could you not use the runs field on the ESI? -1 is a BPO and anything else is a BPC
From ESI swagger doc:
quantity* integer($int32)
title: get_characters_character_id_blueprints_quantity
Typically will be -1 or -2 designating a singleton item, where -1 is an original and -2 is a copy. It can be a positive integer if it is a stack of blueprint originals fresh from the market (no activities performed on them yet).
The run field also tell you if it is a BPC (run >0) or BPO (run = -1)
This is exactly the same as XML API blueprint behave currently.
Yes, but the assets endpoint (/v1/characters/{character_id}/assets/) doesn’t have this info. So, can we assume assets work the same way as /v1/characters/{character_id}/blueprints/?
Quantity and rawQuantity have been merged in ESI. If it is a blueprint, that is not in a stack, it will work as rawQuantity. Please also note that singleton is wrong, when it’s a blueprint copy
Eh, what a mess. So, to summarize:
- quantity in assets endpoint works as raw quantity
- we cannot rely on the singleton field for blueprints
Yerh, but, you can make it work. Just have to know all the undocumented pitfalls.
Another thing, I have had a few instances of quantity not being returned at all for blueprints. I don’t know how to handle that, but, you should know it’s possible. I have a issue on GitHub about it, but, no response from ccp yet.
No inside knowledge on this, (mostly because tech co have been very open about things )
This topic was automatically closed after 90 days. New replies are no longer allowed.