How to Check USCIS Case Status Using the Internal API

A step-by-step walkthrough for accessing detailed case data through the same endpoints used by the myUSCIS website. Plus how to access direct links and get a USCIS API analysis.

TL;DR: Log into myUSCIS → enter your IOE case number on CaseStatusAPI → click the generated links to view raw API data → copy and paste the JSON for analysis. Takes about 2 minutes and reveals hidden fields like active location, silent updates, and document history that are hidden from the public tracker.

What Is the USCIS Internal API?

The USCIS internal API is a set of secure HTTP endpoints hosted at my.uscis.gov that the myUSCIS web application uses to fetch your case information. When you log into your myUSCIS dashboard and view your case status, the website is making requests to these very same API endpoints behind the scenes.

These endpoints return data in JSON format — a structured, machine-readable format. This raw JSON contains more detailed information than what the official dashboard displays, including internal status codes (like NIEM event codes), processing timestamps, and document links.

Official Case Tracker vs. Internal API

FeatureOfficial Public TrackerUSCIS Internal API
URLegov.uscis.gov/casestatusmy.uscis.gov (API endpoints)
Login required❌ No✅ Yes (myUSCIS account)
Data formatStyled HTML pageRaw JSON
Event history❌ Most recent only✅ Full timeline history
Internal status codes❌ No✅ Yes (e.g. FTA0, DA)
Active service center❌ No✅ Yes (Location code)
Document records❌ No✅ Yes (including early notices)

Before You Start

  • A myUSCIS account at my.uscis.gov
  • A receipt number that starts with "IOE" (legacy paper-filed prefixes like MSC or WAC are not supported on these API endpoints)
  • A desktop or mobile browser (Chrome, Firefox, Safari, Edge)

Step-by-Step Walkthrough

Step 1: Log In to myUSCIS

Open my.uscis.gov/account and log in. Keep this tab open. This creates the secure authentication session cookie inside your browser. Without it, requesting the API links directly will fail with a 401 Unauthorized error.

Step 2: Enter Your Case Number

On CaseStatusAPI.com, navigate to Step 2 and enter your receipt number (must start with IOE). Click Generate Links. This creates direct URL configurations mapped to your receipt number.

Step 3: Open the Data Links

Click each link to open the raw backend endpoints in new tabs. If you want to perform a manual check, these are the four main endpoints:

Case Location & Info: https://my.uscis.gov/secure-messaging/api/case-service/receipt_info/YOUR_IOE_NUMBER
Receipt Notice & Status: https://my.uscis.gov/account/case-service/api/case_status/YOUR_IOE_NUMBER
Document List: https://my.uscis.gov/account/case-service/api/cases/YOUR_IOE_NUMBER/documents
Case Status Details: https://my.uscis.gov/account/case-service/api/cases/YOUR_IOE_NUMBER

Step 4: Copy the JSON Response

In the browser tab showing the raw JSON database text, press Ctrl+A (or Cmd+A) to select all and Ctrl+C to copy it. Paste the copied text into the corresponding tab under Step 3 on CaseStatusAPI.

Step 5: Get Your USCIS API Analysis

Click "Analyze Case Data". The AI reads the raw JSON and decodes internal NIEM timeline codes (like FTA0, IAF) and active processing center locations to deliver a plain-English explanation.

Troubleshooting & FAQ

ProblemSolution
Link returns "unauthorized"Log into my.uscis.gov/account again on this browser to refresh your session cookie.
Blank or error pageVerify your receipt number is correct and starts with IOE.
Analysis shows "Invalid JSON"Make sure you copied the entire text (Ctrl+A). If using a mobile browser, it can sometimes truncate whitespace.

Security & Common Misconceptions

"Is this a hack or data leak?"

No. The USCIS internal API is not a exploit or leak. It is visible through standard browser developer tools (Network tab) and requires full authentication. You are simply viewing the raw data that your browser already has access to when logging into your official account.

"Can someone else see my data?"

No. The API requires your personal session cookie, which is only available in the browser where you are logged in. No third party ever receives your credentials or session cookie. The data request happens entirely in your own browser.

Risks and Limitations

  • Unofficial endpoints: These APIs are not publicly documented by USCIS and may change or be removed without notice.
  • IOE cases only: Currently, these endpoints only work with receipt numbers beginning with "IOE" (the electronic system).
  • Rate limiting: Making too many requests in a short period may result in temporary blocks.
CS
Written by the CaseStatusAPI Team

We are immigration applicants and technologists who built CaseStatusAPI to help others navigate the USCIS process with transparency. Our guides are informed by firsthand experience, community feedback, and deep analysis of USCIS internal API data.

Learn more about us →

AIGet Your Detailed Case Analysis

See internal USCIS data the regular tracker doesn't show — with a personalized breakdown of your case status, timeline, and next steps.

Starting at just $1.99$1.49 for an Analysis & Chat Pass.

Check Your Case Status →

Related Guides

USCIS Silent Update: Meaning, Causes, and How to Track ItUSCIS JSON Reader: How to Find, Read & Analyze Case JSONIOE Case Status: How to Check & Track Your USCIS Case OnlineUSCIS Service Centers ExplainedEvery USCIS Case Status Meaning Explained

Explore More Tools

Case TimelinesCommunity Forum
Disclaimer: This content is for educational and informational purposes only. CaseStatusAPI is an independent tool and is not affiliated with, endorsed by, or connected to U.S. Citizenship and Immigration Services (USCIS) or any government agency. For official case information, visit uscis.gov.