Deploying real-time control on large-scale fleets of electric vehicles (EVs) is becoming pivotal as the share of EVs over internal combustion engine vehicles increases. In this paper, we present a Vehicle-to-Grid (V2G) algorithm to simultaneously schedule thousands of EVs charging and discharging operations, that can be used to provide ancillary services. To achieve scalability, the monolithic problem is decomposed using the alternating direction method of multipliers (ADMM). Furthermore, we propose a method to handle bilinear constraints of the original problem inside the ADMM iterations, which changes the problem class from Mixed-Integer Quadratic Program (MIQP) to Quadratic Program (QP), allowing for a substantial computational speed up. We test the algorithm using real data from the largest carsharing company in Switzerland and show how our formulation can be used to retrieve flexibility boundaries for the EV fleet. Our work thus enables fleet operators to make informed bids on ancillary services provision, thereby facilitating the integration of electric vehicles.