Impressum Scraper API
Get the managing director, address, VAT and registration number from Impressum pages, from your AI assistant, no-code workflow or own code.
- From $0.0067 per Website
- Managing Director Details
- 10,000 Websites per Task
| Website |
|---|
| brightwave-analytics.de |
| northpeak-logistik.de |
| junipervale.studio |
Trusted by 38,000+ users at startups and Fortune 500 teams
Works with any tool that can send HTTP requests
Claude
Cursor
Codex
Make
n8n
Zapier
- Your own code
Pick Your Way In
Let an AI assistant or your automation tool do the setup, or call the REST API from your own code.
Paste the setup prompt
Copy the prompt for Claude Code, Codex or Cursor, or for Make, n8n or Zapier, and paste it in. The AI creates a Datablist folder on your computer and sets everything up.
Paste your API key
When the AI asks, copy your API key from the Datablist app and paste it into the .env file it opened. Never paste it into the chat.
Get your results
Send your list of websites and get one row back per site: company name, managing director, address, phone, email, VAT and registration number.
See a sample resultUsing Make, n8n or Zapier? Here is every field for the HTTP request
Use the HTTP request module or node your tool offers. You need three steps: send the list, wait, then read the results.
1. Send your list (HTTP request)
- Method
POST- URL
https://api.datablist.com/v1/enrichments/tasks- Headers
X-API-Key= your API keyContent-Type=application/json- Body (JSON)
- json{"enrichmentId": "impressum-scraper","uniqueId": "impressum-scraper-import-1","settings": {},"inputs": [{"inputId": "row-1", "data": {"websiteUrl": "https://www.brightwave-analytics.de"}},{"inputId": "row-2", "data": {"websiteUrl": "https://www.northpeak-logistik.de"}},{"inputId": "row-3", "data": {"websiteUrl": "https://junipervale.studio"}}]}
- Keep
- The
@idfrom the response. That is your task ID.
2. Wait until it is done
Add a short wait or delay, then a GET request to https://api.datablist.com/v1/enrichments/tasks/TASK_ID with the same X-API-Key header. Repeat until status is completed.
3. Read the results
GET https://api.datablist.com/v1/enrichments/tasks/TASK_ID/results?limit=50. Map outputs to your columns. If nextCursor is not empty, call again with &cursor= plus that value.
At a Glance
German, Austrian and Swiss websites must publish an Impressum. The API finds that page and reads the legal details for you. No Datablist workspace, collection or import needed.
What you give it
- Websites: A website URL or domain per row, from your list, sheet or CRM
- No settings: Nothing to configure
What you get back
- The company: Legal name, postal address, phone and email
- The managing director: First name, last name and gender
- Legal IDs: VAT number, registration number and the Impressum URL
What it costs
- 10 credits per website: Every website you send
- 1,000 credits = $1: Shared with the Datablist app
What Teams Build With It
Put Impressum Scraper wherever your data already flows.
Find the decision maker
- Company website
- Managing director by name
Get the Geschäftsführer of every company on your list, then pass the name and domain to an email finder.
Check company records
- Supplier or customer site
- VAT and register number
Collect VAT and commercial register numbers to check suppliers, customers or marketplace sellers.
Complete scraped lead lists
- Google Maps or directory list
- Address, phone, email
Turn a list of local businesses into full records with legal name, address, phone and email.
What Will It Cost You?
Pay per lookup with credits. API access starts on the Growth plan.
How much will it cost you?
Tell us how many websites you need to scrape and we'll show you the cheapest way to get it done.
= 10,000 credits at 10 credits per website
How credits work
1,000 credits = $1, so each credit costs a tenth of a cent. Each website costs 10 credits, even when some fields are not on the page. Every result returns creditsUsed, so you can track the real cost per row. Plan credits renew monthly and reset if unused. Top-up credits never expire.
Build It Into Your Code
Everything you need to call the REST API directly: code, responses, endpoints, fields, authentication and limits.
datablist/impressum-scraper-api
Official examples: cURL, Python with Requests or async HTTPX, and TypeScript. Put your key in DATABLIST_API_KEY and run.
Copy, Paste, Run
A complete script that creates a task, waits for it and prints every result. Replace YOUR_PERSONAL_API_KEY with your key.
# 1. Create the task (returns 202 Accepted and the task "@id")
curl --request POST 'https://api.datablist.com/v1/enrichments/tasks' \
--header 'X-API-Key: YOUR_PERSONAL_API_KEY' \
--header 'Content-Type: application/json' \
--data '{
"enrichmentId": "impressum-scraper",
"uniqueId": "impressum-scraper-import-1",
"settings": {},
"inputs": [
{"inputId": "row-1", "data": {"websiteUrl": "https://www.brightwave-analytics.de"}},
{"inputId": "row-2", "data": {"websiteUrl": "https://www.northpeak-logistik.de"}},
{"inputId": "row-3", "data": {"websiteUrl": "https://junipervale.studio"}}
]
}'
# 2. Poll every few seconds until status is completed, failed or stopped
curl 'https://api.datablist.com/v1/enrichments/tasks/TASK_ID' \
--header 'X-API-Key: YOUR_PERSONAL_API_KEY'
# 3. Read the results, then follow nextCursor until it is null
curl 'https://api.datablist.com/v1/enrichments/tasks/TASK_ID/results?limit=50' \
--header 'X-API-Key: YOUR_PERSONAL_API_KEY'What the API Returns
One result per input, with your inputId, a status, the outputs and the credits used. Sample data.
{
"taskId": "00000000000040008000000000000001",
"results": [
{
"inputId": "row-1",
"status": "success",
"outputs": {
"companyName": "Brightwave GmbH",
"firstName": "Maya",
"lastName": "Lindqvist",
"gender": "female",
"postalAddress": "Musterstraße 12, 10115 Berlin",
"emailAddress": "info@brightwave-analytics.de",
"phoneNumber": "+49 30 1234567",
"vatNumber": "DE123456789",
"registrationNumber": "HRB 123456",
"impressumUrl": "https://www.brightwave-analytics.de/impressum",
"agentConfidenceScore": 90
},
"creditsUsed": "10",
"error": null
}
],
"nextCursor": null
}Endpoints and Fields
All paths are relative to https://api.datablist.com. Field definitions come from GET /v1/enrichments/impressum-scraper (docs updated Oct 19, 2026). Schema version: 2026-09-12.
View API schema (JSON) (opens in a new tab)
- /v1/enrichments/impressum-scraper
- Read the schema, no key needed
- POST
- /v1/enrichments/tasks
- Create a task
- /v1/enrichments/tasks/{taskId}
- Poll status and progress
- /v1/enrichments/tasks/{taskId}/results
- Read results, 1 to 100 per page
- POST
- /v1/enrichments/tasks/{taskId}/stop
- Cancel a running task
- /v1/enrichments/tasks
- Task history, newest first
Schema Reference
Send settings once per task and one data object per input. Results can include extra fields as the enrichment evolves, so keep unknown keys when you parse outputs.
Show all settings, inputs and outputs
Settings
No fields.
Inputs (data)
websiteUrlrequiredWebsite | Text | URL of the website to visit |
|---|
Outputs
firstNameManaging Director First Name | Text | The first name of the Managing Director/Founder. Empty if not found. |
|---|---|---|
lastNameManaging Director Last Name | Text | The last name of the Managing Director/Founder. Empty if not found. |
genderManaging Director Gender | Text | The gender (male, female) of the Managing Director/Founder. Empty if not found. |
companyNameCompany Name | Text | The name of the company, when available. |
postalAddressPostal Address | Text | The postal address for the company, when available. |
emailAddressEmail Addresses | Text | Email addresses found on the impressum page. |
phoneNumberPhone Number | Text | The company phone number. |
vatNumberVAT number | Text | The company VAT number. |
registrationNumberCompany Registration Number | Text | The company identification number. |
impressumUrlImpressum Url | Text | The link to the impressum page.Format: |
agentConfidenceScoreConfidence Score | Number | Confidence score for the results. Between 0 and 100. The higher, the better. |
One Header, Clear Limits
Create a Personal API Key in your Datablist account and send it on every authenticated request.
Authentication
Send your key in the X-API-Key header. Datablist exchanges and renews access tokens for you.
- Header:
X-API-Key: YOUR_PERSONAL_API_KEY - Optional: manage tokens yourself with
Authorization: BearerfromPOST /v1/account/token - One or the other: sending both headers returns
400 AmbiguousCredentials - Server side only: keep keys out of URLs, browser code and logs
Limits
- Inputs per task: 1 to 10,000
- Size: 16 KiB per input, 10 MiB per request
- Run time: up to 24 hours per task
- Task creation: 10 requests per 60 seconds per account
- Polling and results: 120 requests per 60 seconds per operation
- Active tasks: about 20 at once per account
- Retention: tasks and results are kept for 90 days
Frequently Asked Questions
Everything you or your AI coding agent need to integrate the Impressum Scraper API: auth, request, polling, results, limits and retries.

