USCIS JSON Reader: How to Find, Read & Analyze Case JSON

Learn how to extract, read, and interpret the raw JSON data behind your myUSCIS case status. Decode hidden timestamps, document lists, and internal service codes.

Have a case with USCIS? Check my case free

TL;DR: When you log in to myUSCIS, the website fetches raw data structured in JSON format (JavaScript Object Notation). This raw text contains deep details like precise database modification dates and document attachments that are omitted from the main status screen. You can extract this JSON manually using your browser's Developer Tools or automatically using our free Chrome Extension, then paste it into CaseStatusAPI to read the translated analysis instantly.

What is myUSCIS case JSON?

JSON (JavaScript Object Notation) is a text format used by modern web applications to transmit data between a database server and a browser client.

When you view your cases on my.uscis.gov, the web application doesn't load pre-made HTML. Instead, it queries a series of secure background endpoints. These endpoints return structured JSON files containing your raw case details. The browser then reads this JSON and renders it into the clean boxes and timelines you see on the dashboard.

Because the dashboard is designed to be simple for the average applicant, it hides most of the fields returned in the raw JSON response. By accessing the JSON directly, you can read these hidden details.

How to manually find your case JSON

If you are using a desktop or laptop computer, you can find the raw JSON using built-in developer tools. Follow these steps:

No developer tools needed, on a phone or a computer. Enter your receipt number on CaseStatusAPI and it makes the links to your own USCIS data. Sign in to myUSCIS, open the Status link, copy all of it, and paste it back. Make my links
  1. Open Google Chrome, Microsoft Edge, or Firefox, and log into your account at my.uscis.gov.
  2. Right-click anywhere on the page and click Inspect (or press F12). This opens Developer Tools.
  3. Click on the Network tab at the top of the DevTools panel.
  4. Refresh the myUSCIS page. You will see a list of network requests loading in real-time.
  5. In the filter/search box, type /api/cases/.
  6. Click on the request that matches your receipt number (e.g., IOE0912345678).
  7. Go to the Response or Preview tab. You will see a block of curly braces and keys. This is your raw case JSON.

Key JSON fields decoded

When you inspect the JSON data, you will see a list of key-value pairs. Here are the most significant keys that a USCIS JSON reader parses:

JSON KeyTypeDescription & Meaning
receiptNumberStringYour official case receipt number (e.g. starting with IOE).
formTypeStringThe form classification (I-130, I-485, I-765, etc.).
updatedAtTimestampNumberA Unix epoch timestamp marking the millisecond of the last database save. Critical for tracking silent updates.
agencyActionRequiredBooleanIndicates if USCIS is currently processing your file (false) or if you must take action like biometrics or RFE (true).
cmsFailureBooleanIndicates if the Content Management System failed to sync (often explaining why public status is broken).
documentListArrayIn your case's Documents data (the Documents link): the notices USCIS has posted to your account, such as approval notices or RFEs.

Why you need a dedicated USCIS JSON reader

While you can read raw JSON in text editors, it is very difficult to extract meaningful insights manually. Here is why using a dedicated analyzer like CaseStatusAPI makes a difference:

  • Timestamp Translation: Converts Unix millisecond codes (e.g. 1781453042187) into standard human dates (e.g. June 14, 2026, 4:04 PM).
  • Since your last check: A full report compares this check with your last one (your case's steps and its last-updated time) and points out what changed.
  • AI Explanation: Feeds the raw attributes into our secure AI engine which cross-references community data, offering a plain-English explanation of what each step on your record means.

The CaseStatusAPI Chrome extension (one-click)

If opening browser inspection tools and copying text sounds too complicated, we built a free Chrome Extension to automate everything.

Once installed, you simply open the CaseStatusAPI home page. Our extension detects your active myUSCIS login session, fetches the JSON responses from all 4 primary endpoints behind the scenes, and loads them directly into our analyzer dashboard in a single click.

You get all the analytical depth of the USCIS case status API without ever seeing a line of raw code.

Security Notice: The Chrome Extension never reads, sees or sends your password or credentials. It uses the session already open in your browser to request your own records, then passes them to CaseStatusAPI for your analysis. We never see your USCIS password, and we never store the name, A-Number, address or documents from your case. Community benchmarks use a de-identified copy of shared cases (you can opt out), a report you buy is saved for 90 days so you can reopen it, and My Case keeps a history of each case you check with a paid report until you delete your account.

Frequently asked questions

What is a USCIS JSON reader?

A tool that turns the raw case data from your myUSCIS account into readable text: it explains the steps, dates, office codes and flags in plain words.

How do I extract myUSCIS case JSON data manually?

On a computer, sign in to my.uscis.gov, open your browser's developer tools (F12), go to the Network tab, refresh the page and find the '/api/cases/' call; its Response tab holds the raw text to copy. Without developer tools, CaseStatusAPI makes the links to your case data, and its Chrome extension fetches it when you tap it.

Can I read myUSCIS JSON data on my phone?

Phone browsers don't have developer tools, so CaseStatusAPI makes direct links to your case data instead. They open with your own myUSCIS sign-in in Safari or Chrome; copy the text and paste it on our home page.

Is it safe to copy and paste my USCIS JSON response?

You copy it from your own signed-in myUSCIS account, so you never share your password or session cookie with us. We never store the name, A-Number, address, or documents from your case. Your filing is analyzed in real time. If you share with the community (on by default), we keep a de-identified copy of the case data, with names, A-Numbers and addresses removed and your receipt number reduced to a keyed one-way hash and its 8-character block prefix, and build the timeline benchmarks from it; you can opt out at any time and delete the contributions we can link to you. If you buy a report, we save it (it shows your receipt number) behind a private link for 90 days so you can reopen it, and you can delete it sooner. A paid report also adds a snapshot of the case to your My Case history, under your email, so you can see how it changed; that history is kept until you delete your account. Our Privacy Policy explains how we use and protect receipt numbers.

Why is the updatedAtTimestamp field important in the JSON?

It records when your case record was last updated in USCIS's systems. A silent update is when USCIS updates your case record on a later day than its most recent public step, without adding a new step you can see. The record doesn't say what changed. It can follow your own upload, a system update or an office move, so it isn't a sign of review, progress or approval.

Can I see PDF letters in the JSON?

The notices USCIS has posted for your case are listed in your case's Documents data (the Documents link), not in the Status data.

See your own case, explained.

See every step USCIS has recorded for your case, in plain English: your timeline, silent updates, and what usually comes next for cases like yours.

Check my case free
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

Related guides

USCIS Silent Update: Meaning, Causes, and How to Track ItWhat Is the USCIS Case Status API?How to Check USCIS Case Status Using the Internal API

Explore more community tools

Community 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.