{"id":15649311,"url":"https://github.com/theoomoregbee/us-visa-appointment-notifier","last_synced_at":"2025-07-22T23:04:49.229Z","repository":{"id":65101740,"uuid":"529067399","full_name":"theoomoregbee/US-visa-appointment-notifier","owner":"theoomoregbee","description":"This is just a script I put together to check and notify me via email (MailGun) when there's an earlier date before my initial appointment date. It doesn't handle rescheduling.","archived":false,"fork":false,"pushed_at":"2024-01-12T16:40:48.000Z","size":79,"stargazers_count":113,"open_issues_count":7,"forks_count":56,"subscribers_count":9,"default_branch":"main","last_synced_at":"2025-04-07T22:12:10.486Z","etag":null,"topics":["appointments-manager","us","visa"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/theoomoregbee.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-08-26T01:00:07.000Z","updated_at":"2025-01-14T08:43:35.000Z","dependencies_parsed_at":"2024-10-03T12:29:53.902Z","dependency_job_id":"ec415e76-9af7-465c-af9f-5f3eec082ccb","html_url":"https://github.com/theoomoregbee/US-visa-appointment-notifier","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/theoomoregbee/US-visa-appointment-notifier","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theoomoregbee%2FUS-visa-appointment-notifier","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theoomoregbee%2FUS-visa-appointment-notifier/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theoomoregbee%2FUS-visa-appointment-notifier/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theoomoregbee%2FUS-visa-appointment-notifier/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/theoomoregbee","download_url":"https://codeload.github.com/theoomoregbee/US-visa-appointment-notifier/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/theoomoregbee%2FUS-visa-appointment-notifier/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266586905,"owners_count":23952205,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-22T02:00:09.085Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["appointments-manager","us","visa"],"created_at":"2024-10-03T12:29:12.327Z","updated_at":"2025-07-22T23:04:49.202Z","avatar_url":"https://github.com/theoomoregbee.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# US-visa-appointment-notifier\n\nThis is just a script I put together to check and notify me via email ([MailGun](https://www.mailgun.com/)) when there's an earlier date before my initial appointment date. It doesn't handle **rescheduling**. \n\n\n```\n$ npm start\n=====\u003e\u003e\u003e Step: starting process with 250 tries left\n=====\u003e\u003e\u003e Step: logging in\n=====\u003e\u003e\u003e Step: checking for schedules\n[{\"date\":\"2023-02-08\",\"business_day\":true},{\"date\":\"2023-04-26\",\"business_day\":true},{\"date\":\"2023-10-11\",\"business_day\":true}]\n=====\u003e\u003e\u003e Step: starting process with 249 tries left\n=====\u003e\u003e\u003e Step: checking for schedules\n[{\"date\":\"2023-04-26\",\"business_day\":true},{\"date\":\"2023-10-11\",\"business_day\":true}]\n=====\u003e\u003e\u003e Step: starting process with 248 tries left\n=====\u003e\u003e\u003e Step: checking for schedules\n[{\"date\":\"2023-10-11\",\"business_day\":true}]\n=====\u003e\u003e\u003e Step: sending an email to schedule for 2023-10-11\n...\n```\n\n![email notification sample](./email-screen-shot.png)\n\n\n## How it works\n\n* Logs you into the portal\n* checks for schedules by day \n* If there's a date before your initial appointment, it notifies you via email\n* If no dates found, the process waits for set amount of seconds to cool down before restarting and will stop when it reaches the set max retries.\n\n\u003e see `config.js` or `.env.example` for values you can configure\n\n## Configuration\n\ncopy the example configuration file exampe in `.env.example`, rename the copied version to `.env` and replace the values.\n\n### MailGun config values \n\nYou can create a free account with https://www.mailgun.com/ which should be sufficient and use the provided sandbox domain on your dashboard. The `MAILGUN_API_KEY` can be found in your Mailgun dashboard, it starts with `key-xxxxxx`. You'll need to add authorised recipients to your sandbox domain for free accounts\n\n\n## FAQ\n\n* How do I get my facility ID - https://github.com/theoomoregbee/US-visa-appointment-notifier/issues/3\n* How do I get my schedule ID - https://github.com/theoomoregbee/US-visa-appointment-notifier/issues/8, https://github.com/theoomoregbee/US-visa-appointment-notifier/issues/7#issuecomment-1372565292\n* How to setup Mailgun Authorised recipients - https://github.com/theoomoregbee/US-visa-appointment-notifier/issues/5\n\n## How to use it\n\n* clone the repo \n* run `npm i` within the cloned repo directory\n* start the process with `npm start`\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftheoomoregbee%2Fus-visa-appointment-notifier","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftheoomoregbee%2Fus-visa-appointment-notifier","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftheoomoregbee%2Fus-visa-appointment-notifier/lists"}