Automatically check your U.S. visa application status in CEAC and notify you instantly when it updates!
You can deploy it to your own machine, but it is highly recommended to use Github Actions.
-
LOCATION: the location where you applied for your visa. To find the corresponding location name for the embassy, please refer to this table. Use the embassy location name directly, such as
CHINA, BEIJING
. -
NUMBER: your Application ID or Case Number help icon (e.g., AA0020AKAX or 2012118 345 0001)
-
PASSPORT_NUMBER: your passport number
-
SURNAME: first 5 Letters of surname
-
TIMEZONE: optional, set your timezone to avoid disturbing during sleep. :-) Some example:
Asia/Shanghai
America/New_York
-
GH_TOKEN: to access previous status, you need to set a Github token with
repo
scope. You can create a new token in Github -> Settings -> Developer settings -> Personal access tokens.
Add the following env variables if you want to send notification by email.
-
FROM: the email address you use to send the notification.
-
TO: the email address you want the notification sent to. You can send to more than one email, split the email address with "|" and without space. Here is an example:
[email protected]|[email protected]|[email protected]
-
PASSWORD: the password of the
FROM
email. Notice: for some email, such as QQ Mail, you should use "authorization code" instead of your password here, because this repo use SMTP to send email. Check the SMTP usage of your Mailbox Service Provider for more details. -
SMTP: (optional) specify the smtp server to send the email (e.g.
smtp.example.com
,smtp.example.com:587
)
Add the following env variables if you want to send notification by a Telegram bot.
Create a Telegram bot and get the info below according to this tutorial.
-
TG_BOT_TOKEN: the bot token
-
TG_CHAT_ID: the chat id you want to receive the notification
-
folk this repo
-
set your Environment Variables in
Github -> Settings -> Secrets and variables -> Actions -> New repository secret
-
check your workflow in Actions and your Mailbox / Telegram
You can also run this bot locally. Simply clone this repo and use uv to build the environment:
pip install uv # if you don't have uv installed
uv sync
uv run trigger.py
- Send Email to multiple emails.
- Add more third-party notification services.
- More human-friendly interface.
h4x3rotab : Telegram bot, Adaption to new CEAC interface
Part of the code in this repo refers to the following project. Thank you for your pretty work.