Super Shop Wizard: Difference between revisions

From Computers Wiki
Jump to navigationJump to search
(→‎Notes: Add string stuff)
(→‎Notes: Mention the Super Wiz)
 
(4 intermediate revisions by the same user not shown)
Line 679: Line 679:
</syntaxhighlight>
</syntaxhighlight>
</div>
</div>

== Example of a failure ==

Searching for a SSW-disallowed item:

=== Example request ===

<code>https://www.neopets.com/shops/ssw/ssw_query.php?q=Baby+Paint+Brush&priceOnly=0&context=0&partial=0&min_price=&max_price=&lang=en&json=1&cb=641314</code>

=== Pretty-printed response ===

<syntaxhighlight lang="json">
{
"data": {
"rowcount": 0,
"owners": [],
"amounts": [],
"prices": [],
"cats": [],
"error": "Sorry, You are not allowed to search for \"Baby Paint Brush\" in the Super Wiz.\n",
"search_lang": "en",
"price_str": [],
"links": []
},
"req": {
"search": "Baby Paint Brush",
"oii": 17244,
"item_name": "Baby Paint Brush",
"type": "0",
"criteria": "exact",
"minp": 0,
"maxp": 0
},
"html": " <div id=\"ssw_error_result\">Sorry, You are not allowed to search for \"Baby Paint Brush\" in the Super Wiz.\n<\\/div>\r\n"
}
</syntaxhighlight>


== Notes ==
== Notes ==


* The response contains a lot of duplicate information. Compare <code>prices</code> with <code>price_str</code>, and the fact that the sample response contains 127 shops while the server-generated HTML that the UI actually uses is limited to the top 10. This suggests that only <code>req</code> and <code>html</code> are used, with the other values merely being intermediate variables that the server should not be sending to the client.
* The response contains a lot of duplicate information. Compare <code>prices</code> with <code>price_str</code>, and the fact that the sample response contains 127 shops while the server-generated HTML that the UI actually uses is limited to the top 10. This suggests that only <code>req</code> and <code>html</code> are used, with the other values merely being intermediate variables that the server should not be sending to the client.
* The order-of-magnitude quicker response time when attempting to search for a SSW-disallowed item further suggests that performant shop searching is a mess.
* Everything except some elements of <code>req</code> is a string. However, the prices are presorted correctly despite all being strings.
* Everything except some elements of <code>req</code> is a string. However, the prices are presorted correctly despite all being strings.
* If the Super Shop Wizard is used from pages adhering to the 2021 redesign, <code>caller=h5</code> is set after <code>q</code> in the query string. <code>caller</code> is not present when using pages adhering to the 2007 redesign.
* If <code>priceOnly=1</code>, everything is still stuffed into <code>data</code>, and the query still takes seconds to run! There appears to be no performance benefit to checking this box. The only difference is in <code>html</code>; here's an example: <syntaxhighlight lang="html"><div class="ssw-result-priceonly">The 126 lowest prices of a One Dubloon Coin average out to:&nbsp;&nbsp;&nbsp;2,719 NP</div></syntaxhighlight>
* The Super Shop Wizard is sometimes inconsistently called the Super Wiz.


== References ==
== References ==

Latest revision as of 19:36, 3 August 2024

The Super Shop Wizard is only available for Premium users. I have not tested how the API reacts to attempts to hit it from a non-Premium account.

/shops/ssw/ssw_query.php

The example takes 1.35 to 3.50 seconds to run. Given how there is a ton of manual sharding going on based on the first letter of the username,[1][2] this is not surprising.

Example request

https://www.neopets.com/shops/ssw/ssw_query.php?q=One+Dubloon+Coin&priceOnly=0&context=0&partial=0&min_price=&max_price=&lang=en&json=1&cb=871733

Pretty-printed response

This is collapsed by default due to the long length. The raw response has all whitespace removed.

{
    "data": {
        "rowcount": 127,
        "owners": [
            "misfits138x",
            "turdiagrace7",
            "matth3w_rawr",
            "poaxath",
            "vampiepipo",
            "hiddensnake",
            "florentine03",
            "amulthate",
            "sweetaliencandy",
            "chattycattysarah",
            "gardenialily89",
            "neufalien",
            "silver_graffiti",
            "stinkyneo",
            "anonniemaus",
            "iusedtoplayin2005",
            "roxasensora_fan",
            "annaliffey",
            "sanneke204",
            "sandi_h",
            "emileah19942874",
            "deimosthecursed",
            "angelgocrazy",
            "ryo_masatou",
            "gibottan",
            "avachier",
            "fatin9",
            "emmawatson155",
            "applefaerie99",
            "archi_bueno",
            "tippypop",
            "luckymassi",
            "plantprotector",
            "drum116",
            "dingthechoo",
            "luuvii",
            "dorki1999111999",
            "devin_in_wonderland",
            "lolobain",
            "6847694",
            "soo_prettiie",
            "chipslike",
            "gizmonito",
            "redghostknee",
            "ciuti17",
            "lunisfaerie",
            "repping_something",
            "_mariokart_",
            "redick004",
            "yajimad",
            "midnightblue35",
            "_loveboat_",
            "puresirenangel",
            "yumichan_4",
            "thecondimentsalsa",
            "craigyb",
            "eikeros",
            "glassarrows",
            "gingerbread_princess",
            "dragon50005",
            "cha0s_warri0r",
            "coldneo2019",
            "hunturbot",
            "robsgirl5",
            "z2b",
            "sherdelune",
            "kevcat4",
            "iamsky51",
            "elagujeronegro",
            "velasa",
            "deloryn20",
            "flowerpowervvv",
            "murphssss",
            "latikath",
            "xo__reinacandy",
            "little_sailoor_cm",
            "xxxmiss_moixxx",
            "pink0991",
            "zdanielwilbanksz",
            "lisraell",
            "hulking_dynamo",
            "ifluvwzred",
            "goldelfchen",
            "ladycupcake25",
            "_slowone_",
            "winston23m",
            "jairoavaca",
            "mizerable_vanilla",
            "_ravensford",
            "milena_branco",
            "midnightsaphira",
            "horantu",
            "ddc26",
            "hannah050777",
            "orangefreckles2000",
            "bergsice",
            "m0ni7yy_5",
            "karline_n",
            "kellyr0090",
            "benjamine84",
            "hiwi",
            "jenzigreg",
            "june11111",
            "oliver_11_2005",
            "dobbyhero",
            "boolady13",
            "jaeauri",
            "blackjewelledqueen",
            "beckyjo69",
            "boogabooga_69",
            "orangina96",
            "imjudas",
            "jasmine_0404",
            "bananas04",
            "jaredmely",
            "darkphantom25",
            "way_to_go123",
            "jtran0",
            "jalepino_",
            "virginia0928",
            "ukkepup",
            "indigoviolett",
            "hannybanan0928",
            "vengador980065",
            "ulsa99",
            "i_love_mlpfim",
            "henry200444"
        ],
        "amounts": [
            "1",
            "2",
            "127",
            "1",
            "98",
            "183",
            "44",
            "40",
            "17",
            "5",
            "2",
            "1",
            "1",
            "1",
            "98",
            "1",
            "2",
            "1",
            "1",
            "1",
            "77",
            "25",
            "4",
            "3",
            "3",
            "3",
            "1",
            "1",
            "1",
            "1",
            "1",
            "24",
            "20",
            "14",
            "9",
            "5",
            "5",
            "4",
            "2",
            "1",
            "1",
            "1",
            "1",
            "1",
            "1",
            "1",
            "1",
            "115",
            "18",
            "6",
            "1",
            "4",
            "3",
            "2",
            "1",
            "1",
            "1",
            "1",
            "2",
            "24",
            "1",
            "58",
            "92",
            "2",
            "47",
            "39",
            "25",
            "22",
            "98",
            "4",
            "3",
            "3",
            "2",
            "2",
            "2",
            "2",
            "2",
            "1",
            "1",
            "1",
            "1",
            "1",
            "1",
            "1",
            "8",
            "1",
            "1",
            "1",
            "10",
            "1",
            "1",
            "7",
            "4",
            "4",
            "4",
            "3",
            "2",
            "2",
            "2",
            "1",
            "1",
            "1",
            "1",
            "1",
            "1",
            "1",
            "1",
            "1",
            "4",
            "2",
            "6",
            "4",
            "1",
            "1",
            "1",
            "2",
            "4",
            "4",
            "1",
            "40",
            "5",
            "1",
            "1",
            "1",
            "21",
            "1",
            "36"
        ],
        "prices": [
            "2499",
            "2500",
            "2547",
            "2547",
            "2549",
            "2550",
            "2550",
            "2550",
            "2550",
            "2550",
            "2550",
            "2550",
            "2550",
            "2550",
            "2555",
            "2555",
            "2580",
            "2580",
            "2590",
            "2594",
            "2595",
            "2599",
            "2599",
            "2599",
            "2599",
            "2599",
            "2599",
            "2599",
            "2599",
            "2599",
            "2599",
            "2600",
            "2600",
            "2600",
            "2600",
            "2600",
            "2600",
            "2600",
            "2600",
            "2600",
            "2600",
            "2600",
            "2600",
            "2600",
            "2600",
            "2600",
            "2600",
            "2602",
            "2611",
            "2618",
            "2629",
            "2650",
            "2650",
            "2650",
            "2650",
            "2650",
            "2650",
            "2650",
            "2665",
            "2666",
            "2688",
            "2690",
            "2695",
            "2698",
            "2699",
            "2699",
            "2699",
            "2699",
            "2700",
            "2700",
            "2700",
            "2700",
            "2700",
            "2700",
            "2700",
            "2700",
            "2700",
            "2700",
            "2700",
            "2700",
            "2700",
            "2700",
            "2700",
            "2700",
            "2750",
            "2750",
            "2760",
            "2767",
            "2770",
            "2780",
            "2799",
            "2800",
            "2800",
            "2800",
            "2800",
            "2800",
            "2800",
            "2800",
            "2800",
            "2800",
            "2800",
            "2800",
            "2800",
            "2800",
            "2800",
            "2852",
            "2881",
            "2888",
            "2895",
            "2895",
            "2899",
            "2900",
            "2900",
            "2900",
            "2900",
            "2950",
            "2999",
            "2999",
            "2999",
            "3000",
            "3000",
            "3000",
            "3000",
            "3000",
            "3100",
            "3333",
            "3500"
        ],
        "cats": [],
        "error": "",
        "search_lang": "en",
        "price_str": [
            "2,499 NP",
            "2,500 NP",
            "2,547 NP",
            "2,547 NP",
            "2,549 NP",
            "2,550 NP",
            "2,550 NP",
            "2,550 NP",
            "2,550 NP",
            "2,550 NP",
            "2,550 NP",
            "2,550 NP",
            "2,550 NP",
            "2,550 NP",
            "2,555 NP",
            "2,555 NP",
            "2,580 NP",
            "2,580 NP",
            "2,590 NP",
            "2,594 NP",
            "2,595 NP",
            "2,599 NP",
            "2,599 NP",
            "2,599 NP",
            "2,599 NP",
            "2,599 NP",
            "2,599 NP",
            "2,599 NP",
            "2,599 NP",
            "2,599 NP",
            "2,599 NP",
            "2,600 NP",
            "2,600 NP",
            "2,600 NP",
            "2,600 NP",
            "2,600 NP",
            "2,600 NP",
            "2,600 NP",
            "2,600 NP",
            "2,600 NP",
            "2,600 NP",
            "2,600 NP",
            "2,600 NP",
            "2,600 NP",
            "2,600 NP",
            "2,600 NP",
            "2,600 NP",
            "2,602 NP",
            "2,611 NP",
            "2,618 NP",
            "2,629 NP",
            "2,650 NP",
            "2,650 NP",
            "2,650 NP",
            "2,650 NP",
            "2,650 NP",
            "2,650 NP",
            "2,650 NP",
            "2,665 NP",
            "2,666 NP",
            "2,688 NP",
            "2,690 NP",
            "2,695 NP",
            "2,698 NP",
            "2,699 NP",
            "2,699 NP",
            "2,699 NP",
            "2,699 NP",
            "2,700 NP",
            "2,700 NP",
            "2,700 NP",
            "2,700 NP",
            "2,700 NP",
            "2,700 NP",
            "2,700 NP",
            "2,700 NP",
            "2,700 NP",
            "2,700 NP",
            "2,700 NP",
            "2,700 NP",
            "2,700 NP",
            "2,700 NP",
            "2,700 NP",
            "2,700 NP",
            "2,750 NP",
            "2,750 NP",
            "2,760 NP",
            "2,767 NP",
            "2,770 NP",
            "2,780 NP",
            "2,799 NP",
            "2,800 NP",
            "2,800 NP",
            "2,800 NP",
            "2,800 NP",
            "2,800 NP",
            "2,800 NP",
            "2,800 NP",
            "2,800 NP",
            "2,800 NP",
            "2,800 NP",
            "2,800 NP",
            "2,800 NP",
            "2,800 NP",
            "2,800 NP",
            "2,852 NP",
            "2,881 NP",
            "2,888 NP",
            "2,895 NP",
            "2,895 NP",
            "2,899 NP",
            "2,900 NP",
            "2,900 NP",
            "2,900 NP",
            "2,900 NP",
            "2,950 NP",
            "2,999 NP",
            "2,999 NP",
            "2,999 NP",
            "3,000 NP",
            "3,000 NP",
            "3,000 NP",
            "3,000 NP",
            "3,000 NP",
            "3,100 NP",
            "3,333 NP",
            "3,500 NP"
        ],
        "links": [
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=misfits138x&buy_obj_info_id=12755&buy_cost_neopoints=2499' target='_blank'>misfits138x<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=turdiagrace7&buy_obj_info_id=12755&buy_cost_neopoints=2500' target='_blank'>turdiagrace7<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=matth3w_rawr&buy_obj_info_id=12755&buy_cost_neopoints=2547' target='_blank'>matth3w_rawr<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=poaxath&buy_obj_info_id=12755&buy_cost_neopoints=2547' target='_blank'>poaxath<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=vampiepipo&buy_obj_info_id=12755&buy_cost_neopoints=2549' target='_blank'>vampiepipo<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=hiddensnake&buy_obj_info_id=12755&buy_cost_neopoints=2550' target='_blank'>hiddensnake<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=florentine03&buy_obj_info_id=12755&buy_cost_neopoints=2550' target='_blank'>florentine03<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=amulthate&buy_obj_info_id=12755&buy_cost_neopoints=2550' target='_blank'>amulthate<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=sweetaliencandy&buy_obj_info_id=12755&buy_cost_neopoints=2550' target='_blank'>sweetaliencandy<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=chattycattysarah&buy_obj_info_id=12755&buy_cost_neopoints=2550' target='_blank'>chattycattysarah<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=gardenialily89&buy_obj_info_id=12755&buy_cost_neopoints=2550' target='_blank'>gardenialily89<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=neufalien&buy_obj_info_id=12755&buy_cost_neopoints=2550' target='_blank'>neufalien<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=silver_graffiti&buy_obj_info_id=12755&buy_cost_neopoints=2550' target='_blank'>silver_graffiti<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=stinkyneo&buy_obj_info_id=12755&buy_cost_neopoints=2550' target='_blank'>stinkyneo<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=anonniemaus&buy_obj_info_id=12755&buy_cost_neopoints=2555' target='_blank'>anonniemaus<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=iusedtoplayin2005&buy_obj_info_id=12755&buy_cost_neopoints=2555' target='_blank'>iusedtoplayin2005<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=roxasensora_fan&buy_obj_info_id=12755&buy_cost_neopoints=2580' target='_blank'>roxasensora_fan<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=annaliffey&buy_obj_info_id=12755&buy_cost_neopoints=2580' target='_blank'>annaliffey<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=sanneke204&buy_obj_info_id=12755&buy_cost_neopoints=2590' target='_blank'>sanneke204<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=sandi_h&buy_obj_info_id=12755&buy_cost_neopoints=2594' target='_blank'>sandi_h<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=emileah19942874&buy_obj_info_id=12755&buy_cost_neopoints=2595' target='_blank'>emileah19942874<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=deimosthecursed&buy_obj_info_id=12755&buy_cost_neopoints=2599' target='_blank'>deimosthecursed<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=angelgocrazy&buy_obj_info_id=12755&buy_cost_neopoints=2599' target='_blank'>angelgocrazy<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=ryo_masatou&buy_obj_info_id=12755&buy_cost_neopoints=2599' target='_blank'>ryo_masatou<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=gibottan&buy_obj_info_id=12755&buy_cost_neopoints=2599' target='_blank'>gibottan<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=avachier&buy_obj_info_id=12755&buy_cost_neopoints=2599' target='_blank'>avachier<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=fatin9&buy_obj_info_id=12755&buy_cost_neopoints=2599' target='_blank'>fatin9<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=emmawatson155&buy_obj_info_id=12755&buy_cost_neopoints=2599' target='_blank'>emmawatson155<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=applefaerie99&buy_obj_info_id=12755&buy_cost_neopoints=2599' target='_blank'>applefaerie99<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=archi_bueno&buy_obj_info_id=12755&buy_cost_neopoints=2599' target='_blank'>archi_bueno<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=tippypop&buy_obj_info_id=12755&buy_cost_neopoints=2599' target='_blank'>tippypop<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=luckymassi&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>luckymassi<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=plantprotector&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>plantprotector<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=drum116&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>drum116<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=dingthechoo&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>dingthechoo<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=luuvii&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>luuvii<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=dorki1999111999&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>dorki1999111999<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=devin_in_wonderland&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>devin_in_wonderland<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=lolobain&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>lolobain<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=6847694&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>6847694<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=soo_prettiie&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>soo_prettiie<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=chipslike&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>chipslike<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=gizmonito&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>gizmonito<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=redghostknee&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>redghostknee<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=ciuti17&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>ciuti17<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=lunisfaerie&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>lunisfaerie<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=repping_something&buy_obj_info_id=12755&buy_cost_neopoints=2600' target='_blank'>repping_something<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=_mariokart_&buy_obj_info_id=12755&buy_cost_neopoints=2602' target='_blank'>_mariokart_<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=redick004&buy_obj_info_id=12755&buy_cost_neopoints=2611' target='_blank'>redick004<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=yajimad&buy_obj_info_id=12755&buy_cost_neopoints=2618' target='_blank'>yajimad<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=midnightblue35&buy_obj_info_id=12755&buy_cost_neopoints=2629' target='_blank'>midnightblue35<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=_loveboat_&buy_obj_info_id=12755&buy_cost_neopoints=2650' target='_blank'>_loveboat_<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=puresirenangel&buy_obj_info_id=12755&buy_cost_neopoints=2650' target='_blank'>puresirenangel<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=yumichan_4&buy_obj_info_id=12755&buy_cost_neopoints=2650' target='_blank'>yumichan_4<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=thecondimentsalsa&buy_obj_info_id=12755&buy_cost_neopoints=2650' target='_blank'>thecondimentsalsa<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=craigyb&buy_obj_info_id=12755&buy_cost_neopoints=2650' target='_blank'>craigyb<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=eikeros&buy_obj_info_id=12755&buy_cost_neopoints=2650' target='_blank'>eikeros<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=glassarrows&buy_obj_info_id=12755&buy_cost_neopoints=2650' target='_blank'>glassarrows<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=gingerbread_princess&buy_obj_info_id=12755&buy_cost_neopoints=2665' target='_blank'>gingerbread_princess<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=dragon50005&buy_obj_info_id=12755&buy_cost_neopoints=2666' target='_blank'>dragon50005<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=cha0s_warri0r&buy_obj_info_id=12755&buy_cost_neopoints=2688' target='_blank'>cha0s_warri0r<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=coldneo2019&buy_obj_info_id=12755&buy_cost_neopoints=2690' target='_blank'>coldneo2019<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=hunturbot&buy_obj_info_id=12755&buy_cost_neopoints=2695' target='_blank'>hunturbot<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=robsgirl5&buy_obj_info_id=12755&buy_cost_neopoints=2698' target='_blank'>robsgirl5<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=z2b&buy_obj_info_id=12755&buy_cost_neopoints=2699' target='_blank'>z2b<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=sherdelune&buy_obj_info_id=12755&buy_cost_neopoints=2699' target='_blank'>sherdelune<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=kevcat4&buy_obj_info_id=12755&buy_cost_neopoints=2699' target='_blank'>kevcat4<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=iamsky51&buy_obj_info_id=12755&buy_cost_neopoints=2699' target='_blank'>iamsky51<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=elagujeronegro&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>elagujeronegro<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=velasa&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>velasa<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=deloryn20&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>deloryn20<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=flowerpowervvv&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>flowerpowervvv<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=murphssss&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>murphssss<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=latikath&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>latikath<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=xo__reinacandy&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>xo__reinacandy<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=little_sailoor_cm&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>little_sailoor_cm<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=xxxmiss_moixxx&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>xxxmiss_moixxx<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=pink0991&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>pink0991<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=zdanielwilbanksz&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>zdanielwilbanksz<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=lisraell&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>lisraell<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=hulking_dynamo&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>hulking_dynamo<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=ifluvwzred&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>ifluvwzred<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=goldelfchen&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>goldelfchen<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=ladycupcake25&buy_obj_info_id=12755&buy_cost_neopoints=2700' target='_blank'>ladycupcake25<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=_slowone_&buy_obj_info_id=12755&buy_cost_neopoints=2750' target='_blank'>_slowone_<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=winston23m&buy_obj_info_id=12755&buy_cost_neopoints=2750' target='_blank'>winston23m<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=jairoavaca&buy_obj_info_id=12755&buy_cost_neopoints=2760' target='_blank'>jairoavaca<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=mizerable_vanilla&buy_obj_info_id=12755&buy_cost_neopoints=2767' target='_blank'>mizerable_vanilla<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=_ravensford&buy_obj_info_id=12755&buy_cost_neopoints=2770' target='_blank'>_ravensford<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=milena_branco&buy_obj_info_id=12755&buy_cost_neopoints=2780' target='_blank'>milena_branco<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=midnightsaphira&buy_obj_info_id=12755&buy_cost_neopoints=2799' target='_blank'>midnightsaphira<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=horantu&buy_obj_info_id=12755&buy_cost_neopoints=2800' target='_blank'>horantu<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=ddc26&buy_obj_info_id=12755&buy_cost_neopoints=2800' target='_blank'>ddc26<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=hannah050777&buy_obj_info_id=12755&buy_cost_neopoints=2800' target='_blank'>hannah050777<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=orangefreckles2000&buy_obj_info_id=12755&buy_cost_neopoints=2800' target='_blank'>orangefreckles2000<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=bergsice&buy_obj_info_id=12755&buy_cost_neopoints=2800' target='_blank'>bergsice<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=m0ni7yy_5&buy_obj_info_id=12755&buy_cost_neopoints=2800' target='_blank'>m0ni7yy_5<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=karline_n&buy_obj_info_id=12755&buy_cost_neopoints=2800' target='_blank'>karline_n<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=kellyr0090&buy_obj_info_id=12755&buy_cost_neopoints=2800' target='_blank'>kellyr0090<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=benjamine84&buy_obj_info_id=12755&buy_cost_neopoints=2800' target='_blank'>benjamine84<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=hiwi&buy_obj_info_id=12755&buy_cost_neopoints=2800' target='_blank'>hiwi<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=jenzigreg&buy_obj_info_id=12755&buy_cost_neopoints=2800' target='_blank'>jenzigreg<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=june11111&buy_obj_info_id=12755&buy_cost_neopoints=2800' target='_blank'>june11111<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=oliver_11_2005&buy_obj_info_id=12755&buy_cost_neopoints=2800' target='_blank'>oliver_11_2005<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=dobbyhero&buy_obj_info_id=12755&buy_cost_neopoints=2800' target='_blank'>dobbyhero<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=boolady13&buy_obj_info_id=12755&buy_cost_neopoints=2852' target='_blank'>boolady13<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=jaeauri&buy_obj_info_id=12755&buy_cost_neopoints=2881' target='_blank'>jaeauri<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=blackjewelledqueen&buy_obj_info_id=12755&buy_cost_neopoints=2888' target='_blank'>blackjewelledqueen<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=beckyjo69&buy_obj_info_id=12755&buy_cost_neopoints=2895' target='_blank'>beckyjo69<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=boogabooga_69&buy_obj_info_id=12755&buy_cost_neopoints=2895' target='_blank'>boogabooga_69<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=orangina96&buy_obj_info_id=12755&buy_cost_neopoints=2899' target='_blank'>orangina96<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=imjudas&buy_obj_info_id=12755&buy_cost_neopoints=2900' target='_blank'>imjudas<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=jasmine_0404&buy_obj_info_id=12755&buy_cost_neopoints=2900' target='_blank'>jasmine_0404<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=bananas04&buy_obj_info_id=12755&buy_cost_neopoints=2900' target='_blank'>bananas04<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=jaredmely&buy_obj_info_id=12755&buy_cost_neopoints=2900' target='_blank'>jaredmely<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=darkphantom25&buy_obj_info_id=12755&buy_cost_neopoints=2950' target='_blank'>darkphantom25<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=way_to_go123&buy_obj_info_id=12755&buy_cost_neopoints=2999' target='_blank'>way_to_go123<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=jtran0&buy_obj_info_id=12755&buy_cost_neopoints=2999' target='_blank'>jtran0<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=jalepino_&buy_obj_info_id=12755&buy_cost_neopoints=2999' target='_blank'>jalepino_<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=virginia0928&buy_obj_info_id=12755&buy_cost_neopoints=3000' target='_blank'>virginia0928<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=ukkepup&buy_obj_info_id=12755&buy_cost_neopoints=3000' target='_blank'>ukkepup<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=indigoviolett&buy_obj_info_id=12755&buy_cost_neopoints=3000' target='_blank'>indigoviolett<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=hannybanan0928&buy_obj_info_id=12755&buy_cost_neopoints=3000' target='_blank'>hannybanan0928<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=vengador980065&buy_obj_info_id=12755&buy_cost_neopoints=3000' target='_blank'>vengador980065<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=ulsa99&buy_obj_info_id=12755&buy_cost_neopoints=3100' target='_blank'>ulsa99<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=i_love_mlpfim&buy_obj_info_id=12755&buy_cost_neopoints=3333' target='_blank'>i_love_mlpfim<\\/b><\\/a>",
            "<a class=\"plink\" href='\\/browseshop.phtml?owner=henry200444&buy_obj_info_id=12755&buy_cost_neopoints=3500' target='_blank'>henry200444<\\/b><\\/a>"
        ]
    },
    "req": {
        "search": "One Dubloon Coin",
        "oii": 12755,
        "item_name": "One Dubloon Coin",
        "type": "0",
        "criteria": "exact",
        "minp": 0,
        "maxp": 0
    },
    "html": "<table cellspacing=\"0\" cellpadding=\"0\" id=results_table>\r\n<tr>\r\n<th class=\"ssw_col1\" >Owner<\\/th>\r\n<th class=\"ssw_col2\" >Stock<\\/th>\r\n<th class=\"ssw_col3\" >Price<\\/th>\r\n<\\/tr>\r\n   <tr class=darkbg><td><a class=\"plink\" href='\\/browseshop.phtml?owner=misfits138x&buy_obj_info_id=12755&buy_cost_neopoints=2499' target='_blank'>misfits138x<\\/b><\\/a><\\/td><td>1<\\/td><td>2,499 NP<\\/td><\\/tr>\r\n   <tr ><td><a class=\"plink\" href='\\/browseshop.phtml?owner=turdiagrace7&buy_obj_info_id=12755&buy_cost_neopoints=2500' target='_blank'>turdiagrace7<\\/b><\\/a><\\/td><td>2<\\/td><td>2,500 NP<\\/td><\\/tr>\r\n   <tr class=darkbg><td><a class=\"plink\" href='\\/browseshop.phtml?owner=matth3w_rawr&buy_obj_info_id=12755&buy_cost_neopoints=2547' target='_blank'>matth3w_rawr<\\/b><\\/a><\\/td><td>127<\\/td><td>2,547 NP<\\/td><\\/tr>\r\n   <tr ><td><a class=\"plink\" href='\\/browseshop.phtml?owner=poaxath&buy_obj_info_id=12755&buy_cost_neopoints=2547' target='_blank'>poaxath<\\/b><\\/a><\\/td><td>1<\\/td><td>2,547 NP<\\/td><\\/tr>\r\n   <tr class=darkbg><td><a class=\"plink\" href='\\/browseshop.phtml?owner=vampiepipo&buy_obj_info_id=12755&buy_cost_neopoints=2549' target='_blank'>vampiepipo<\\/b><\\/a><\\/td><td>98<\\/td><td>2,549 NP<\\/td><\\/tr>\r\n   <tr ><td><a class=\"plink\" href='\\/browseshop.phtml?owner=hiddensnake&buy_obj_info_id=12755&buy_cost_neopoints=2550' target='_blank'>hiddensnake<\\/b><\\/a><\\/td><td>183<\\/td><td>2,550 NP<\\/td><\\/tr>\r\n   <tr class=darkbg><td><a class=\"plink\" href='\\/browseshop.phtml?owner=florentine03&buy_obj_info_id=12755&buy_cost_neopoints=2550' target='_blank'>florentine03<\\/b><\\/a><\\/td><td>44<\\/td><td>2,550 NP<\\/td><\\/tr>\r\n   <tr ><td><a class=\"plink\" href='\\/browseshop.phtml?owner=amulthate&buy_obj_info_id=12755&buy_cost_neopoints=2550' target='_blank'>amulthate<\\/b><\\/a><\\/td><td>40<\\/td><td>2,550 NP<\\/td><\\/tr>\r\n   <tr class=darkbg><td><a class=\"plink\" href='\\/browseshop.phtml?owner=sweetaliencandy&buy_obj_info_id=12755&buy_cost_neopoints=2550' target='_blank'>sweetaliencandy<\\/b><\\/a><\\/td><td>17<\\/td><td>2,550 NP<\\/td><\\/tr>\r\n   <tr ><td><a class=\"plink\" href='\\/browseshop.phtml?owner=chattycattysarah&buy_obj_info_id=12755&buy_cost_neopoints=2550' target='_blank'>chattycattysarah<\\/b><\\/a><\\/td><td>5<\\/td><td>2,550 NP<\\/td><\\/tr>\r\n"
}

Example of a failure

Searching for a SSW-disallowed item:

Example request

https://www.neopets.com/shops/ssw/ssw_query.php?q=Baby+Paint+Brush&priceOnly=0&context=0&partial=0&min_price=&max_price=&lang=en&json=1&cb=641314

Pretty-printed response

{
    "data": {
        "rowcount": 0,
        "owners": [],
        "amounts": [],
        "prices": [],
        "cats": [],
        "error": "Sorry, You are not allowed to search for \"Baby Paint Brush\" in the Super Wiz.\n",
        "search_lang": "en",
        "price_str": [],
        "links": []
    },
    "req": {
        "search": "Baby Paint Brush",
        "oii": 17244,
        "item_name": "Baby Paint Brush",
        "type": "0",
        "criteria": "exact",
        "minp": 0,
        "maxp": 0
    },
    "html": "  <div id=\"ssw_error_result\">Sorry, You are not allowed to search for \"Baby Paint Brush\" in the Super Wiz.\n<\\/div>\r\n"
}

Notes

  • The response contains a lot of duplicate information. Compare prices with price_str, and the fact that the sample response contains 127 shops while the server-generated HTML that the UI actually uses is limited to the top 10. This suggests that only req and html are used, with the other values merely being intermediate variables that the server should not be sending to the client.
  • The order-of-magnitude quicker response time when attempting to search for a SSW-disallowed item further suggests that performant shop searching is a mess.
  • Everything except some elements of req is a string. However, the prices are presorted correctly despite all being strings.
  • If the Super Shop Wizard is used from pages adhering to the 2021 redesign, caller=h5 is set after q in the query string. caller is not present when using pages adhering to the 2007 redesign.
  • If priceOnly=1, everything is still stuffed into data, and the query still takes seconds to run! There appears to be no performance benefit to checking this box. The only difference is in html; here's an example:
    <div class="ssw-result-priceonly">The 126 lowest prices of a One Dubloon Coin average out to:&nbsp;&nbsp;&nbsp;2,719 NP</div>
    
  • The Super Shop Wizard is sometimes inconsistently called the Super Wiz.

References

  1. https://www.jellyneo.net/?go=shopwiz
  2. https://www.reddit.com/r/neopets/comments/1asklqr/nc_capsule_rerolls/ "There are many tables in neopets that are sharded (split) by username. Some, like this one, are split depending on the first character of the username. In this case, it means all users that start both with d and q will have their nc items in the same table, while users starting with c will be in another table."