patentgrepDocs

PatentsView-compatible API

Move off PatentsView by changing one line.

patentgrep serves the PatentSearch API: all 27 endpoints, the same q, f, s and o parameters, the same field names and the same X-Api-Key header. It is rebuilt from USPTO full text and updated every week.

Read the reference
BeforePatentsView
import requests

BASE = "https://search.patentsview.org/api/v1"
resp = requests.post(f"{BASE}/patent/",
    headers={"X-Api-Key": KEY},
    json={"q": {"_gte": {"patent_date": "2026-01-01"}},
          "f": ["patent_id", "patent_title"],
          "o": {"size": 100}})
Afterpatentgrep
import requests

BASE = "https://api.patentgrep.com/api/v1"
resp = requests.post(f"{BASE}/patent/",
    headers={"X-Api-Key": KEY},
    json={"q": {"_gte": {"patent_date": "2026-01-01"}},
          "f": ["patent_id", "patent_title"],
          "o": {"size": 100}})

Same request, same response. Use a patentgrep key in the same header.

Coverage
387 of 390 fields
Across all 27 endpoints. The 3 missing are inferred inventor gender.
Endpoints
All 27
Patents, publications, citations, claims and text, people and places, classification.
Freshness
Weekly
Grants on Tuesdays, applications on Thursdays. Latest document 8 Oct 2026.
History
Since 1976
Grants since 1976, applications since 2001: 18,456,529 documents.

What is different

Checked against PatentsView's bulk tables

No inferred gender

PatentsView guesses inventor gender from first names. We don't, so inventor_gender_code is missing from /patent, /publication and /inventor. Asking for it returns a 400 “Unknown field” error, so drop it from f.

Our own entity IDs

assignee_id, inventor_id, attorney_id and location_id come from our own matching, so they don't equal PatentsView's. If you stored PatentsView IDs, map them once through the patents they appear on.

Newer classification

Current CPC comes from USPTO's latest master classification files. It agrees with PatentsView on 95.7% of symbols; the rest were reclassified after December 2025. WIPO fields agree on 98.5% of patents.

Limits per key

PatentsView allows 45 requests a minute per key. patentgrep sets limits per plan when accounts open. o.size goes up to 1,000, and cursor paging with o.after works the same way.

Questions

Does my PatentsView key work?

No. Get a patentgrep key and send it in the same X-Api-Key header. Nothing else in your request changes.

Will I get the same results?

Same fields and query semantics. Values are parsed from USPTO's XML rather than copied from PatentsView, so counts can differ slightly where PatentsView dropped rows or joined words.

Do GET and POST both work?

Yes. Send q, f, s and o as JSON query parameters with GET, or as one JSON body with POST.

Can I describe an invention instead of querying fields?

Yes, outside the PatentsView routes. /v1/search adds Best match, Exact words and Describe it: describe an invention in plain words and get back the claims that match.

How fresh is the data?

Grants are added on Tuesdays and applications on Thursdays, the days USPTO publishes them. The newest document in the index is from 8 Oct 2026.

Try it with your own queries.

Keys are issued during the private beta.

Quickstart