You can do that by: Using a proxy system and a list of proxy servers to override steam's inventory request limits. Having a random bot responsible for the deposits if you are fetching your information from the database (username/password/shared_secret/identity_secret and misc. data) and loading user's inventory. Running multiple bots by creating instances on start, making a communication between them (using socket.io which is highly recommended over database checking (of course it's important to log everything)). Lookup for the available item to withdraw from bot (fetch assetid -> check botid containing the item) -> transfer to main bot. It's basically an easy concept, just a lot of coding and fail-safes, and the last but not least, be careful when getting item prices or any other data, make sure to always null check the items or prices.
client.on('friendRelationship', function(steamID, relationship) {
if (relationship == SteamUser.Steam.EFriendRelationship.RequestRecipient) {
client.addFriend(steamID);
}
}); You can use getPersonas to get names and other profile data.