Auto Check Engine

The Auto Check Engine is the core technology that automatically monitors your USCIS case status without manual checking.

Overview

Instead of manually visiting egov.uscis.gov multiple times per day, the Auto Check Engine runs in the background and checks your case status automatically every few hours. When a change is detected, you receive an instant notification.

How It Works

Step 1: Case Registration

When you add a USCIS receipt number to the app:

Step 2: Background Monitoring

The Auto Check Engine runs as a background service:

Step 3: Change Detection Algorithm

1. Fetch current status from USCIS
2. Load previous status from local database
3. Compare status text (exact match)
4. If different:
   - Save new status to history
   - Update "last checked" timestamp
   - Trigger notification system
5. If same:
   - Update "last checked" timestamp only
   - No notification

Step 4: History Tracking

Every status change is recorded with:

Step 5: Notification Delivery

When change detected:

Technical Architecture

Background Processing

iOS Background Modes:

Network Efficiency:

Data Storage

Local Database (SQLite):

iCloud Sync (Optional):

Check Frequency Explained

Why Not Real-Time?

USCIS does not provide real-time webhooks or APIs. The only way to check status is by querying their website periodically.

Why Every 2-6 Hours?

Balance between:

Reality check: USCIS typically updates cases during business hours (9 AM - 6 PM EST), so checking every 4 hours is sufficient.

Check Frequency Tiers

TierFrequencyAvailability
StandardEvery 6 hoursFree users
PremiumEvery 2-4 hoursPremium subscribers
ManualOn-demandAll users

What Gets Checked

USCIS Case Status Elements:

What does NOT get checked:

Notification Logic

When Notifications Are Sent

Trigger conditions:

Smart Filtering

To avoid false positives:

Notification Content

Example notification:

📬 Case Status Update
IOE0123456789

Old: Case Was Received
New: Case Was Approved

Tap to view details

Reliability & Error Handling

Network Failures

If check fails due to network:

USCIS Server Issues

If USCIS website is down:

Invalid Receipt Numbers

If receipt number becomes invalid:

Privacy & Security

What We Send to USCIS

Data Stored Locally

Data NOT Stored

Battery Impact

Optimization Techniques

User Control

You can:

Limitations

iOS Background Restrictions

Apple's limitations:

Recommendation: Open app occasionally to keep background refresh active

USCIS Update Timing

Even if we check every 2 hours, there's inherent delay:

This is still much better than checking manually once per day!

Comparison: Manual vs Auto

AspectManual CheckAuto Check Engine
FrequencyWhen you rememberEvery 2-6 hours
EffortMust visit websiteZero effort
NotificationsNoneInstant alerts
HistoryYou must recordAutomatic tracking
Miss updatesLikelyNever

Technical Specifications

API Endpoint: https://egov.uscis.gov/casestatus/mycasestatus.do

Method: POST with form data

Response: HTML parsing (USCIS doesn't provide JSON API)

Timeout: 30 seconds

User-Agent: CaseTracker Auto iOS/3.0

Learn More

Never miss an update

Let Auto Check Engine monitor your case 24/7 while you focus on what matters.

Download App