Application status, office actions, ownership, PTAB, and maintenance for every US patent application since 2001.
Works with claude mcp add, ChatGPT, Cursor, Codex, or plain curl. No USPTO account needed.
// a real response, fetched from api.patentdata.ai { "application_number": "17942951", "title": "GROUND MEAT REPLICAS", "applicant_name": "Impossible Foods Inc.", "applicant_entity_id": "ent_c54d3fb3c2cf593ba26a", "status": { "code": "41", "description": "Non Final Action Mailed", "category": "pending", "date": "2026-08-26" }, "patent_number": null, "art_unit": "1636", "counts": { "office_actions": 6, "assignments": 1, "ptab_proceedings": 0, "cited_by": 0 }, "source": { "product": "PTFWPRD", "file_date": "2026-09-12" }, "as_of": "2026-09-22" }
as_of on every responseEach answer cites the USPTO product and file date it came from. Pick a question to see the shape of the response.
{
"application_number": "17942951",
"filing_date": "2022-09-12",
"status": {
"code": "41",
"description": "Non Final Action Mailed",
"category": "pending",
"date": "2026-08-26"
},
"patent_number": null,
"publication_number": "US20230080435A1",
"publication_date": "2023-03-16",
"entity_status": "undiscounted",
"art_unit": "1636",
"examiner_name": "DACE DENITO, ALEXANDRA GERALDINE",
"examiner_stats_summary": {
"sample_size": 149,
"allowance_rate": 0.438,
"median_months_to_first_action": 32.7
},
"continuity": {
"parents": [
{
"application_number": "61973181",
"relationship": "PRO",
"status_description": "Provisional Application Expired"
},
{
"application_number": "62058230",
"relationship": "PRO",
"status_description": "Provisional Application Expired"
},
{
"application_number": "15300339",
"relationship": "CON",
"status_description": "Patented Case"
}
],
"children": []
},
"as_of": "2026-09-22"
}
Every action carries its reply deadline. The application object carries examiner_stats_summary — how often this examiner allows and how long a first action takes — and GET /v1/examiners/{name}/stats has the full record.
// office-action text and USPTO's parsed rejections; response_due_estimate is the shortened statutory period for that action type (37 CFR 1.134) { "application_number": "17942951", "count": 5, "office_actions": [ { "document_code": "CTNF", "type": "non-final", "mailed_date": "2026-08-26", "response_due_estimate": "2026-11-26", "response_due_max": "2027-02-26", "restarts_period": true, "art_unit": "1636", "statutes": ["103"], "sections": null, "section_chars": 16338, "text_chars": 46785 } ], "source": { "product": "OA-API", "file_date": "2026-09-22" }, "as_of": "2026-09-22" }
// USPTO's code and description are verbatim; event_type is our timeline vocabulary (the events feed and webhooks use its prosecution subset) { "application_number": "17942951", "since": "2025-07-01", "count": 36, "transactions": [ { "date": "2026-08-22", "code": "CTNF", "description": "Non-Final Rejection", "event_type": "office_action" }, { "date": "2026-07-16", "code": "RCEX", "description": "Request for Continued Examination (RCE)", "event_type": "rce" }, { "date": "2026-07-16", "code": "BRCE", "description": "Workflow - Request for RCE - Begin", "event_type": "rce" }, { "date": "2026-04-18", "code": "CTFR", "description": "Final Rejection", "event_type": "office_action" }, { "date": "2026-03-20", "code": "A...", "description": "Response after Non-Final Action", "event_type": "response_filed" }, { "date": "2025-12-19", "code": "CTNF", "description": "Non-Final Rejection", "event_type": "office_action" } ] }
// recorded, not verified, by the USPTO — same caveat the source carries { "patent_number": "12302769", "application_number": "18331486", "count": 1, "assignments": [ { "reel_frame": "063963/0276", "recorded_date": "2023-06-15", "execution_date": "2023-06-05", "conveyance_type": "ASSIGNMENT OF ASSIGNOR'S INTEREST", "assignors": [ { "name": "WHITE, HAROLD" } ], "assignees": [ { "name": "LIMITLESS SPACE INSTITUTE", "entity_id": "ent_3492c891cccf906b8a1a", "city": "HOUSTON", "state": "TEXAS" } ], "properties": [ { "application_number": "18331486", "patent_number": "12302769" } ] } ] }
{
"patent_number": "12302769",
"count": 1,
"proceedings": [
{
"proceeding_number": "IPR2026-00469",
"type": "IPR",
"petitioner": "EverWave Inc. et al.",
"patent_owner": null,
"filed_date": "2026-09-03",
"status": "Pending",
"instituted": null,
"claims_outcome": null,
"final_decision_date": null,
"decisions": []
}
],
"source": {
"product": "PTAB-API",
"file_date": "2026-09-22"
}
}
{
"patent_number": "8116990",
"grant_date": "2012-02-14",
"small_entity": true,
"windows": {
"3.5y": "paid",
"7.5y": "paid",
"11.5y": "paid"
},
"alive": true,
"expired": false,
"expiration_estimate": "2030-12-14",
"estimate": true,
"events": [
{
"date": "2023-10-02",
"code": "REM.",
"description": "Maintenance Fee Reminder Mailed."
},
{
"date": "2023-10-30",
"code": "M2553",
"description": "Payment of Maintenance Fee, 12th Yr, Small Entity."
},
{
"date": "2023-10-30",
"code": "M2556",
"description": "11.5 yr surcharge- late pmt w/in 6 mo, Small Entity."
}
],
"source": {
"product": "PTMNFEE2",
"file_date": "2026-09-22"
}
}
// the disambiguated entity layer PatentsView used to publish, kept current { "entity": { "entity_id": "ent_c54d3fb3c2cf593ba26a", "canonical_name": "Impossible Foods Inc.", "aliases": ["Impossible Foods Inc."], "family_id": null, "source": { "product": "ours", "file_date": "2026-09-22" } }, "counts": { "applications": 144, "patents": 40, "pending": 15 }, "applications": [ { "application_number": "19210371", "title": "PURIFIED PROTEIN COMPOSITION", "status": { "description": "Docketed New Case - Ready for Examination", "date": "2025-05-28" }, "art_unit": "OPAP" }, { "application_number": "18989155", "title": "NON-ANIMAL-BASED WHOLE-CUT FOOD PRODUCTS", "status": { "description": "Non Final Action Mailed", "date": "2026-09-18" }, "art_unit": "1792" } ], "next_cursor": "eyJhcHBsaWNhdGlvbl9udW1iZXIiOiIxODk4OTE1NSJ9" }
// portfolio, velocity, prosecution record, CPC mix, PTAB exposure, acquisitions — with definitions { "entity_id": "ent_c54d3fb3c2cf593ba26a", "canonical_name": "Impossible Foods Inc.", "portfolio": { "known": 144, "granted": 40, "patents": 40, "pending": 15, "abandoned": 20, "applications": 144, "alive_patents": 39, "computed_over": { "filing_date_max": "2025-05-16", "filing_date_min": "2011-07-12" }, "not_prosecuted": 69, "expiring_within_12_months": 0 }, "prosecution": { "allowance_rate": 0.667, "median_months_to_first_action": 15.6, "median_months_to_grant": 27.4, "avg_office_actions_per_disposed": 2.9, "rce_rate": 0.467, "appeal_rate": 0.067, "sample_size": 144 }, "velocity": { "filings_per_year": [ { "n": 11, "year": 2024, "partial": false }, { "n": 1, "year": 2025, "partial": true }, { "n": 0, "year": 2026, "partial": true } ], "grants_per_year": [ { "n": 6, "year": 2024 }, { "n": 4, "year": 2025 }, { "n": 0, "year": 2026 } ] }, "where": { "cpc_subclasses": [ { "n": 41, "share": 0.586, "subclass": "A23J" }, { "n": 39, "share": 0.557, "subclass": "A23L" }, { "n": 25, "share": 0.357, "subclass": "C12N" } ], "cpc_coverage": 0.486, "art_units": [ { "n": 14, "art_unit": "1791" }, { "n": 13, "art_unit": "1792" } ] }, "who": { "examiners": [ { "n": 19, "key": "GWARTNEY, ELIZABETH A", "name": "GWARTNEY, ELIZABETH A" }, { "n": 8, "key": "ZILBERING, ASSAF", "name": "ZILBERING, ASSAF" } ] }, "ptab": { "as_petitioner": { "instituted": 0, "proceedings": 0 }, "as_patent_owner": { "instituted": 1, "claims_lost": 1, "proceedings": 7 } }, "ownership": { "sold": 0, "since": "2023-09-22", "acquired": 6 }, "definitions": "\u2026", "computed_at": "2026-09-22T22:26:19.997049+00:00", "source": { "product": "PTFWPRD", "file_date": "2026-09-21" } }
// claims with dependencies, abstract and CPC at issue, from the weekly grant XML { "doc_number": "12722607", "kind": "B2", "application_number": "18545568", "title": "Battery electric vehicle operator to charge technician interlock", "date": "2026-09-01", "abstract": "An electric vehicle includes a battery and an external charging port on the vehicle. A charging interlock system on the vehicle includes a charging interlock module configured to: when engaged by an operator of the vehicle, prevent movement of the vehicle during a battery charging procedure executable by a battery charging technician outside the vehicle and, when disengaged by the battery charging technician following the battery charging procedure, allow movement of the vehicle.", "cpc": ["B60T7/16", "B60H1/00642", "B60L3/00", "B60L50/60", "B60L53/16", "B60L53/18", "B60Q1/44", "H02J7/70", "B60L1/003", "B60L2200/40", "B60T2270/89", "G07C5/0825"], "claim_count": 19, "independent_claims": [1, 10, 18], "claims": [ { "number": 1, "text": "An electric vehicle comprising a battery and an external charging port on the vehicle, the vehicle further comprising:\na charging interlock system comprising a charging interlock module configured to:\nwhen engaged, prevent movement of the vehicle by disabling a propulsion system powering the vehicle during a battery charging procedure executable by a battery charging technician outside the vehicle, and\nwhen disengaged by the battery charging technician following the battery charging procedure, allow movement of the vehicle by enabling the propulsion system.", "dependent_on": [] }, { "number": 2, "text": "The vehicle of claim 1, wherein the charging interlock module is engaged from within a cab of the electric vehicle by an operator of the vehicle.", "dependent_on": [1] } ], "source": { "product": "PTGRXML", "file_date": "2026-09-01" } }
// forward citations: every loaded grant citing this patent number; backward = its own references { "patent_number": "9520482", "forward": { "count": 3304, "next_cursor": "eyJjb3VudCI6MzMwNCwicGF0ZW50X251bWJlciI6IjEyNzQ1NDQwIiwic29ydF9rZXkiOjEyNzQ1NDQwfQ", "patents": [ { "patent_number": "12745574", "grant_date": "2026-09-22", "title": "Semiconductor device, memory cell and method of forming the same", "categories": ["applicant"] }, { "patent_number": "12745448", "grant_date": "2026-09-22", "title": "Semiconductor structure and method for manufacturing the same", "categories": ["applicant"] }, { "patent_number": "12745440", "grant_date": "2026-09-22", "title": "Gate structures in semiconductor devices", "categories": ["applicant"] } ] }, "source": { "product": "PTGRXML", "file_date": "2026-09-22" } }
// keyword + CPC over title, abstract and claims; not similarity search { "total": 2745, "total_capped": false, "results": [ { "doc_number": "US20230343997A1", "doc_type": "publication", "title": "LITHIUM-BASED SOLID ELECTROLYTE, INORGANIC SOLID ELECTROLYTE, PRODUCTION METHOD FOR LITHIUM-BASED SOLID ELECTROLYTE, MODIFIED POSITIVE ELECTRODE ACTIVE MATERIAL, MODIFIED NEGATIVE ELECTRODE ACTIVE MATERIAL, ALL-SOLID STATE SECONDARY BATTERY, ELECTRODE SHEET FOR ALL-SOLID STATE SECONDARY BATTERY, SOLID ELECTROLYTE SHEET, AND ELECTRODE FOR ALL-SOLID STATE SECONDARY BATTERY", "date": "2023-10-26", "cpc": ["H01M10/0562", "H01M2300/0068"], "snippet": "present invention provides a **lithium**-based **solid** **electrolyte** excellent in ion conductivity, an inorganic **solid** **electrolyte**, a production method for a **lithium**-based **solid** \u2026 electrode for an all-**solid** state secondary battery. The **lithium**-based **solid** **electrolyte** according to the present invention contains **lithium** tetraborate in a noncrystalline" }, { "doc_number": "US20260155434A1", "doc_type": "publication", "title": "LITHIUM-BASED SOLID ELECTROLYTE, METHOD FOR PRODUCING LITHIUM-BASED SOLID ELECTROLYTE, MODIFIED POSITIVE ELECTRODE ACTIVE MATERIAL, MODIFIED NEGATIVE ELECTRODE ACTIVE MATERIAL, ALL-SOLID-STATE SECONDARY BATTERY, ELECTRODE SHEET FOR ALL-SOLID-STATE SECONDARY BATTERY, SOLID ELECTROLYTE SHEET, AND ELECTRODE FOR ALL-SOLID-STATE SECONDARY BATTERY", "date": "2026-06-04", "cpc": ["H01M10/0562", "H01M4/366", "H01M10/052", "H01M2004/027", "H01M2004/028", "H01M2300/0071"], "snippet": "object of the present invention is to provide a **lithium**-based **solid** **electrolyte** having excellent ion conductivity, a method for producing a **lithium**-based \u2026 electrode for an all-**solid**-state secondary battery.\n\nThe **lithium**-based **solid** **electrolyte** of the present invention contains amorphous **lithium** tetraborate, water" }, { "doc_number": "US20250105373A1", "doc_type": "publication", "title": "Reduced Graphene Oxide Interlayered LLTZO Laminated Solid-State Electrolyte for Arresting Lithium Dendrite Growth", "date": "2025-03-27", "cpc": ["H01M10/4235", "H01M10/0562", "H01M10/0525", "H01M2300/0071"], "snippet": "describes a method of inhibiting **lithium** dendrite penetration through a **lithium**-based **solid** **electrolyte** by providing the **lithium**-based **solid** **electrolyte** with an interlayer \u2026 reduced Graphene Oxide. The present disclosure also describes a **lithium**-based **solid** **electrolyte** with an interlayer of reduced Graphene Oxide" } ], "next_cursor": "eyJkYXRlIjoiMjAyNS0wMy0yNyIsImRvY19udW1iZXIiOiJVUzIwMjUwMTA1MzczQTEiLCJxdWVyeSI6IltcIidzb2xpZCcgJiAnZWxlY3Ryb2x5dCcgJiAnbGl0aGl1bSdcIiwgXCInc29saWQnICYgJ2VsZWN0cm9seXQnICYgJ2xpdGhpdW0nICYgJ2NwYzpoMDFtJ1wiLCBudWxsLCBcIjIwMjMtMDEtMDFcIiwgbnVsbCwgbnVsbF0iLCJyYW5rIjo1LjkzNjU3OCwidG90YWwiOjI3NDUsInRvdGFsX2NhcHBlZCI6ZmFsc2V9", "source": { "product": "PTGRXML", "file_date": "2026-09-22" } }
Requests takes tens of milliseconds and a thousand agents can hit it at once.
Human only needs to pay after 50 free requests. Everything else is four HTTP calls, documented for an agent reader at /agents.md.
POST /agent/signup
{ "owner_email": "you@company.com",
"agent_name": "docket-watch" }
Returns an API key once, with 50 free requests on it. Owner gets a confirmation email.
GET /v1/applications/17942951
X-API-KEY: pd_live_…
Org-level keys, unlimited concurrency. Mint more keys under the same balance.
402 Payment Required
{ "checkout": "POST /agent/checkout-link",
"minimum_usd": 20 }
When the free requests run out: 402 response. See response body for what to do next.
POST /agent/checkout-link
{ "amount_usd": 20 }
→ { "url": "https://checkout.stripe.com/…" }
Human pays in the browser. Credits land in seconds; $20 is 1,000 requests.
$ claude mcp add --transport http patent-data https://api.patentdata.ai/mcp --header "Authorization: Bearer $PATENT_API_KEY"
# tools: get_application_status · get_status_by_number · get_status_batch · get_events
# get_application_timeline · get_office_actions · get_claims · get_assignments
# get_ptab_proceedings · check_patent_alive · search_entities · list_entity_applications
# list_entity_patents · get_examiner_stats · get_art_unit_stats · create_monitor
# list_monitors · delete_monitor · get_monitor_events · get_entity_stats
# get_citations · search_patents
Set up access to Patent Data for me. 1. Read https://api.patentdata.ai/agents.md. 2. POST https://api.patentdata.ai/agent/signup with my email (ask me for it) and an agent name of your choice. Save the API key it returns in my secrets store; it is shown only once. 3. Call GET /v1/applications/17942951 with the X-API-KEY header and show me the result; the key starts with 50 free requests. 4. When a request answers 402, POST /agent/checkout-link for $20 and send me the URL to pay; continue once I confirm. 5. Add the MCP server https://api.patentdata.ai/mcp with the same key (Authorization: Bearer) so you can use the tools directly.
Give patent-watch, our open-source agent, a company name. It resolves the company to an entity, lists what's pending, and messages you when something moves. Runs anywhere an MCP client runs.
Uses your own API key. The agent is MIT-licensed; the data costs one request per event.
Status, transactions, assignments, and office-action text refresh daily from USPTO's feeds; every response carries an as_of date and a stale flag if a feed is more than 48 hours behind.
No, your agents can just start.
Send us an email.