Inconsistency in Guild Upgrades API — Guild Wars 2 Forums

Inconsistency in Guild Upgrades API

Kenogu.3640Kenogu.3640 Member
edited February 19, 2019 in API Development

I'm noticing some odd behaviour in Guild Upgrades. Pinging this endpoint repeatedly, I get two different-sized payloads each time. Might be some sort of sharding issue?

https://api.guildwars2.com/v2/guild/upgrades?ids=129,130,156,167,176,180,182,204,290,303,308,322,354,366,368,381,415,424,428,440,443,444,451,486,504,520,524,605,610,622,638,756,765,782

EDIT: It's not just the upgrades listing. I'm noticing similar issues in the treasury: I'm noticing the list of 'needed_by' upgrades for items in the treasury alternately growing and shrinking, sometimes dropping upgrades we know we have unlocked. There's definitely something weird going on with at least a segment of the API.

Comments

  • Hi,
    I've seen the same issue like with https://api.guildwars2.com/v2/guild/upgrades/840
    Sometimes we can have :
    "prerequisites": []

    Instead of :

    "prerequisites": [
                253,
                424
            ],
    

    With Postman it's almost 100%...

    {
        "id": 840,
        "name": "Guild Hall Music: Super Adventure Box",
        "description": "Visit the minstrel at the tavern to change the background music of your guild hall to a selection of themes based on Moto's Super Adventure Box.",
        "build_time": 0,
        "icon": "https://render.guildwars2.com/file/96E17707772DCB56487E9EE5D84C1C3E034D7A6B/1202618.png",
        "type": "Unlock",
        "required_level": 8,
        "experience": 35,
        "prerequisites": [],
        "costs": [
            {
                "type": "Collectible",
                "count": 128,
                "name": "Guild Favor",
                "item_id": 70701
            },
            {
                "type": "Item",
                "count": 1,
                "name": "World 1 Super Boom Box",
                "item_id": 46500
            },
            {
                "type": "Item",
                "count": 1,
                "name": "World 2 Super Boom Box",
                "item_id": 46504
            },
            {
                "type": "Item",
                "count": 500,
                "name": "Continue Coin",
                "item_id": 41824
            },
            {
                "type": "Currency",
                "count": 256,
                "name": "Aetherium"
            }
        ]
    }
    

    Any way to get it fixed?

  • I'm pretty sure this is the correct list of guild upgrade prerequisites (found via repeatedly requesting the guild upgrades endpoint with different query strings to avoid caching and then manually merging the results):

    https://git.lubar.me/lubar-local/ravenvale/src/branch/master/data-cache/upgrades.json

    I've got some extra code for the treasury request that removes upgrades that shouldn't be there: https://git.lubar.me/lubar-local/ravenvale/src/commit/a95fe0ab080cad6d52f349e6b917ec5cea9ea3c4/guild-api.go#L203-L258

    The treasury does at least seem to be consistent with what each upgrade requires, just not with the prerequisites needed to make them available to the treasury panel ingame.

©2010–2018 ArenaNet, LLC. All rights reserved. Guild Wars, Guild Wars 2, Heart of Thorns, Guild Wars 2: Path of Fire, ArenaNet, NCSOFT, the Interlocking NC Logo, and all associated logos and designs are trademarks or registered trademarks of NCSOFT Corporation. All other trademarks are the property of their respective owners.