public async Task <List <Agent> > GetAllAgents(string?q, string?orderBy, bool?onlineOnly, int?page, int?perPage) { JToken queryResponse = await this.QueryAgents(q, orderBy, onlineOnly, page, perPage); AgentsObject agentsObject = JsonConvert.DeserializeObject <AgentsObject>(queryResponse.ToString()); List <Agent> agents = new List <Agent>(); foreach (Agent agent in agentsObject.Data) { agents.Add(agent); } // agents.Count <= agentsObject.TotalCount while (page != 648) { page++; queryResponse = await this.QueryAgents(q, orderBy, onlineOnly, page, 100); agentsObject = JsonConvert.DeserializeObject <AgentsObject>(queryResponse.ToString()); foreach (Agent agent in agentsObject.Data) { agents.Add(agent); } } return(agents); }
/// <summary> /// Searches the Intruder API for a single or list of agents. /// </summary> /// <param name="usernameOrID">Can be the Steam Username or Steam ID of an agent.</param> /// <returns>Lists of matched Agents.</returns> public async Task <List <Agent> > SearchAgent(string?usernameOrID) { JToken queryResponse = await this.QueryAgents(usernameOrID, null, null, null, null); AgentsObject agentsObject = JsonConvert.DeserializeObject <AgentsObject>(queryResponse.ToString()); List <Agent> agents = new List <Agent>(); foreach (Agent agent in agentsObject.Data) { agents.Add(agent); } return(agents); }