/covid-vaccine-booking

This tool can be used to automate booking slots on Co-WIN Platform.

Primary LanguagePythonMIT LicenseMIT

COVID-19 Vaccination Slot Booking Script

Update:

First up, a big thank you to everyone for supporting this project and building upon it! I'm glad we were able to help a lot of people through this. However, recently we have been attracting some unwanted attention - which is getting harder to handle. So unfortunately there won't be any additional commits to this project. This has been put on indefinite hold.

Important:

  • This is a proof of concept project. I do NOT endorse or condone, in any shape or form, automating any monitoring/booking tasks. Use at your own risk.
  • This CANNOT book slots automatically. It doesn't skip any of the steps that a normal user would have to take on the official portal. You will still have to enter the OTP and Captcha.
  • Do NOT use unless all the beneficiaries selected are supposed to get the same vaccine and dose.
  • There is no option to register new mobile or add beneficiaries. This can be used only after beneficiary has been added through the official app/site.
  • This goes without saying but, once you get your shot, please do help out any underprivileged people around you who may not have a laptop or the know-how. For instance any sort of domestic help, or the staff in your local grocery store, or literally the thousands of people who don't have the knowledge or luxury we do.
  • API Details (read the first paragraph at least): https://apisetu.gov.in/public/marketplace/api/cowin/cowin-public-v2
  • BMC Link: https://www.buymeacoffee.com/pallupz
    • All donations, as they materialize, will be split equally between COVID Kerala CMDRF and a centre for cerebral palsied children with multiple handicaps.
  • Discord ID for DMs: pallupz#5726
  • And finally, I know, code quality is awful. May be some day I will rewrite the whole thing from scratch.

Noteworthy Forks

Usage:

EXE file that was being built via pyinstaller on GitHub Actions does not work anymore but the Python 3.7 code still does. If you don't already have Python and do not know how to set it up, instructions are at the bottom. It's not complicated at all and takes literally 5 minutes. Please do that and come back here.

Download this code as zip, and extract it to some folder like C:\temp\covid-vaccine-booking. Going by this structure, the py files should be in C:\temp\covid-vaccine-booking\src.

Open command prompt and run cd C:\temp\covid-vaccine-booking

Install all the dependencies with the below. This is a one-time activity (for anyone not familiar with Python)

pip install -r requirements.txt

If you're on Linux or MacOS, install the SoX (Sound eXchange) before running the Python script. To install, run:

Ubuntu:

sudo apt install sox

MacOS:

brew install sox

Finally, run the script file as shown below:

python src\covid-vaccine-slot-booking.py

If you already have a bearer token, you can also use:

python src\covid-vaccine-slot-booking.py --token=YOUR-TOKEN-HERE

If you'd prefer to pass the mobile number while running the script instead of typing in later, you can also use:

python src\covid-vaccine-slot-booking.py --mobile=YOUR-MOBILE-NUMBER

Python 3.7.3 Installation in Windows

  • Check if Python is already installed by opening command prompt and running python --version.
  • If the above command returns Python <some-version-number> you're probably good - provided version number is above 3.6
  • If Python's not installed, command would say something like: 'python' is not recognized as an internal or external command, operable program or batch file.
  • If so, download the installer from: https://www.python.org/ftp/python/3.7.3/python-3.7.3-amd64.exe
  • Run that. In the first screen of installer, there will be an option at the bottom to "Add Python 3.7 to Path". Make sure to select it.
  • Open command prompt and run python --version. If everything went well it should say Python 3.7.3
  • You're all set!