At 20,000 clients I would be trying to use a RADIUS based solution, as it wont require any API calls.
Me personally; I would spin up an Ubuntu instance in Amazon AWS on a t3.micro instance. I would probably start with writing a script in Python. And then I would use cron to schedule it to run hourly.
Likely running cost - $5 per month.
Python is "trendy" so their are lots of example scripts. It is not that fast though.
You can easily have a play on your workstation though. You just need to install Pyhton, and then do some of the learning courses at:
https://create.meraki.io/learn/