DPMA Scraper - German Trademarks & Patents avatar

DPMA Scraper - German Trademarks & Patents

Pricing

Pay per event

Go to Apify Store
DPMA Scraper - German Trademarks & Patents

DPMA Scraper - German Trademarks & Patents

Scrape DPMAregister for German trademarks, patents, designs, utility models. Mark images, applicant data, opposition history. Brand protection, IP due-diligence, prior-art search.

Pricing

Pay per event

Rating

0.0

(0)

Developer

BowTiedRaccoon

BowTiedRaccoon

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

7 days ago

Last modified

Categories

Share

DPMA Register Scraper — German Trademarks & Patents

Scrapes DPMAregister, the official public register of the German Patent and Trademark Office (Deutsches Patent- und Markenamt). Returns trademarks, patents, designs, and utility models with registration numbers, dates, applicant data, Nice classes, and mark image URLs.


DPMA Scraper Features

  • Extracts German national (DE) and international (IR) trademark records from DPMAregister
  • Returns full INID-coded detail for DE trademarks — registration dates, applicant name, Nice classes, goods/services description, mark type, mark image URL
  • Searches by mark text, registration number, applicant name, or Nice/IPC class code
  • Covers all four register types: trademarks (Marken), patents, designs (Geschmacksmuster), utility models (Gebrauchsmuster)
  • Collects listing-level data for patents, designs, and utility models — application numbers, register type, status
  • No proxy required — DPMAregister is a German government public-access site

Who Uses DPMA Data?

  • IP attorneys and paralegals — check prior art before filing, verify registration status, pull opposition history for client matters
  • Brand protection teams — monitor competitor trademark activity, identify conflicting marks across Nice classes
  • M&A and due-diligence analysts — enumerate IP assets held by a target company by searching applicant name
  • Patent researchers — gather patent application numbers for further analysis in Espacenet or the EPO database
  • Startup founders — verify trademark availability before brand registration, avoid expensive conflicts

How It Works

  1. Configure your search: pick a register type (trademark, patent, design, or utility model), a query mode (by text, number, applicant, or class), and enter your search term.
  2. The scraper establishes a session with DPMAregister and submits your query to the expert search endpoint.
  3. Results are parsed from the dpma-trefferliste table. DE trademarks get full detail — the scraper follows each canonical detail URL and extracts all INID-coded fields. IR trademarks and non-trademark registers return listing-level data.
  4. Records are saved to the Apify dataset in clean JSON, one record per IP right.

DPMA Scraper Input

{
"registerType": "mark",
"mode": "by_text",
"query": "Mercedes-Benz",
"includeImages": true,
"maxItems": 10
}
FieldTypeDefaultDescription
querystringSearch term: mark text, registration number, applicant name, or class code. Required.
registerTypestringmarkRegister to search: mark, patent, design, or utility_model
modestringby_textQuery mode: by_text, by_registration_number, by_applicant_name, or by_class
includeImagesbooleantrueCapture mark image URLs for figurative trademarks
maxItemsinteger10Maximum number of records to return (1–10000)
proxyConfigurationobjectoffProxy settings — not needed for DPMA

Additional Input Examples

Search by applicant name to enumerate a company's IP portfolio:

{
"registerType": "mark",
"mode": "by_applicant_name",
"query": "Daimler AG",
"maxItems": 100
}

Search patents by IPC class:

{
"registerType": "patent",
"mode": "by_class",
"query": "H04L",
"maxItems": 50
}

DPMA Scraper Output Fields

DE trademark records come with full INID detail. IR trademarks, patents, designs, and utility models include listing-level fields.

{
"registerType": "mark",
"database": "DE",
"registrationNumber": "55890",
"applicationDate": "1908-06-04",
"registrationDate": "1908-10-28",
"expirationDate": "2028-06-30",
"status": "eingetragen",
"markText": "MERCEDES-BENZ",
"markImageUrl": null,
"markType": "Wortmarke",
"niceClasses": "12",
"goodsServicesDescription": "Kraftfahrzeuge, insbesondere Personenkraftwagen.",
"applicantName": "Mercedes-Benz Group AG",
"applicantAddress": null,
"representativeName": null,
"representativeAddress": null,
"oppositionsCount": 0,
"titleDe": null,
"titleEn": null,
"ipcClasses": null,
"inventorNames": null,
"publicationDate": null,
"grantDate": null,
"detailUrl": "https://register.dpma.de/DPMAregister/marke/register/55890/DE",
"scrapedAt": "2026-05-09T20:14:01.383Z"
}
FieldTypeDescription
registerTypestringIP right type: mark, patent, design, utility_model
databasestringRegister source: DE (German national) or IR (international)
registrationNumberstringRegistration or application number
applicationDatestringDate of application (YYYY-MM-DD)
registrationDatestringDate of registration (YYYY-MM-DD)
expirationDatestringExpiration date of protection (YYYY-MM-DD)
statusstringCurrent status: registered, opposition, cancelled, lapsed
markTextstringText representation of the mark (word marks)
markImageUrlstringURL of mark image (figurative marks)
markTypestringMark type: Wortmarke, Bildmarke, kombinierte Marke, etc.
niceClassesstringNice classification classes, comma-separated
goodsServicesDescriptionstringGoods and services description from the register
applicantNamestringName of the applicant or rights holder
applicantAddressstringFull address of the applicant
representativeNamestringPatent attorney or representative name
representativeAddressstringAddress of the representative
oppositionsCountnumberNumber of oppositions filed
titleDestringPatent/utility model title in German
titleEnstringPatent/utility model title in English
ipcClassesstringIPC classification codes, comma-separated
inventorNamesstringInventor names, comma-separated
publicationDatestringDate of first publication (YYYY-MM-DD)
grantDatestringDate of patent grant (YYYY-MM-DD)
detailUrlstringURL to the DPMA register detail page
scrapedAtstringISO timestamp when the record was scraped

🔍 FAQ

How do I scrape German trademark data from DPMAregister?

DPMA Scraper handles the session management and search submission automatically. Set registerType to mark, choose a mode, enter your query, and run it. DE trademark records come back with full INID detail including applicant, classes, and status.

How much does DPMA Scraper cost to run?

DPMA Scraper costs $0.10 per run start plus $0.03 per record. A 10-record test run costs about $0.40. Bulk runs of 1,000 records run around $30 — reasonable for IP due-diligence work where the alternative is manual register lookups.

What's the difference between DE and IR trademark records?

DE marks are German national registrations with canonical detail URLs — DPMA Scraper fetches full detail for these. IR marks are international registrations designating Germany via the Madrid System. Their detail pages are session-bound, so DPMA Scraper returns listing-level data for IR marks: registration number, mark text, status.

Can I search by Nice class or IPC code?

Yes. Set mode to by_class and enter the class code in query — e.g., "query": "35" for Nice class 35 (advertising and business services), or "query": "H04L" for an IPC telecommunications subclass in a patent search.

Does DPMA Scraper need proxies?

DPMA Scraper doesn't need proxies. DPMAregister is a German government public-access service with no IP-based geo-restrictions. Proxy is off by default and can stay that way.


Need More Features?

Need patent detail pages, additional register fields, or bulk export support? File an issue or get in touch.

Why Use DPMA Scraper?

  • Authoritative source — data comes directly from the official DPMA register, not a third-party aggregator that may lag behind
  • Full trademark detail — returns all INID-coded fields for DE marks, which is more than you get from most commercial IP databases at this price point
  • No proxies, no setup friction — runs against a public government endpoint, connects cleanly, and returns structured JSON