Index: binary-improvements/MapRendering/Web/API/GetPlayerInventories.cs
===================================================================
--- binary-improvements/MapRendering/Web/API/GetPlayerInventories.cs	(revision 321)
+++ binary-improvements/MapRendering/Web/API/GetPlayerInventories.cs	(revision 321)
@@ -0,0 +1,60 @@
+using AllocsFixes.JSON;
+using AllocsFixes.PersistentData;
+using System;
+using System.Collections.Generic;
+using System.Net;
+
+namespace AllocsFixes.NetConnections.Servers.Web.API {
+	public class GetPlayerInventories : WebAPI {
+
+		public override void HandleRequest (HttpListenerRequest req, HttpListenerResponse resp, WebConnection user, int permissionLevel) {
+			JSONArray AllInventoriesResult = new JSONArray ();
+            
+			foreach (string sid in PersistentContainer.Instance.Players.SteamIDs) {
+				Player p = PersistentContainer.Instance.Players [sid, false];
+
+				if (p == null) {
+					continue;
+				}
+
+				if (p.IsOnline) {
+					PersistentData.Inventory inv = p.Inventory;
+
+					JSONObject result = new JSONObject ();
+					JSONArray bag = new JSONArray ();
+					JSONArray belt = new JSONArray ();
+					JSONObject equipment = new JSONObject ();
+					result.Add ("steamid", new JSONString (sid));
+					result.Add ("entityid", new JSONNumber (p.EntityID));
+					result.Add ("playername", new JSONString (p.Name));
+					result.Add ("bag", bag);
+					result.Add ("belt", belt);
+					result.Add ("equipment", equipment);
+
+					GetPlayerInventory.DoInventory (belt, inv.belt);
+					GetPlayerInventory.DoInventory (bag, inv.bag);
+
+					GetPlayerInventory.AddEquipment (equipment, "head", inv.equipment, EquipmentSlots.Headgear);
+					GetPlayerInventory.AddEquipment (equipment, "eyes", inv.equipment, EquipmentSlots.Eyewear);
+					GetPlayerInventory.AddEquipment (equipment, "face", inv.equipment, EquipmentSlots.Face);
+
+					GetPlayerInventory.AddEquipment (equipment, "armor", inv.equipment, EquipmentSlots.ChestArmor);
+					GetPlayerInventory.AddEquipment (equipment, "jacket", inv.equipment, EquipmentSlots.Jacket);
+					GetPlayerInventory.AddEquipment (equipment, "shirt", inv.equipment, EquipmentSlots.Shirt);
+
+					GetPlayerInventory.AddEquipment (equipment, "legarmor", inv.equipment, EquipmentSlots.LegArmor);
+					GetPlayerInventory.AddEquipment (equipment, "pants", inv.equipment, EquipmentSlots.Legs);
+					GetPlayerInventory.AddEquipment (equipment, "boots", inv.equipment, EquipmentSlots.Feet);
+
+					GetPlayerInventory.AddEquipment (equipment, "gloves", inv.equipment, EquipmentSlots.Hands);
+
+					AllInventoriesResult.Add (result);
+				}
+			}
+
+			WriteJSON (resp, AllInventoriesResult);
+		}
+
+	}
+}
+
Index: binary-improvements/MapRendering/Web/API/GetPlayerInventory.cs
===================================================================
--- binary-improvements/MapRendering/Web/API/GetPlayerInventory.cs	(revision 315)
+++ binary-improvements/MapRendering/Web/API/GetPlayerInventory.cs	(revision 321)
@@ -56,5 +56,5 @@
 		}
 
-		private void DoInventory (JSONArray _jsonRes, List<InvItem> _inv) {
+		internal static void DoInventory (JSONArray _jsonRes, List<InvItem> _inv) {
 			for (int i = 0; i < _inv.Count; i++) {
 				_jsonRes.Add (GetJsonForItem (_inv [i]));
@@ -62,5 +62,5 @@
 		}
 
-		private void AddEquipment (JSONObject _eq, string _slotname, InvItem[] _items, EquipmentSlots _slot) {
+		internal static void AddEquipment (JSONObject _eq, string _slotname, InvItem[] _items, EquipmentSlots _slot) {
 			int[] slotindices = XUiM_PlayerEquipment.GetSlotIndicesByEquipmentSlot (_slot);
 
@@ -76,5 +76,5 @@
 		}
 
-		private JSONNode GetJsonForItem (InvItem _item) {
+		internal static JSONNode GetJsonForItem (InvItem _item) {
 			if (_item != null) {
 				JSONObject jsonItem = new JSONObject ();
