{
  "openapi": "3.0.1",
  "info": {
    "title": "Imprint & Impressum Scraper — Email, Phone, VAT & Company Data",
    "description": "Domains to verified company records from the imprint / Impressum / legal notice: name, legal form, address, register (HRB, FN, CHE), VAT ID checked against the EU VIES register, e-mail, phone, fax, social profiles. Germany, Austria, Switzerland. No login, no cookies, no API key.",
    "version": "0.1",
    "x-build-id": "I1rZImQ3WPSch1ryH"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/perceptr0n~imprint-impressum-website-contact-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-perceptr0n-imprint-impressum-website-contact-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/perceptr0n~imprint-impressum-website-contact-scraper/runs": {
      "post": {
        "operationId": "runs-sync-perceptr0n-imprint-impressum-website-contact-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/perceptr0n~imprint-impressum-website-contact-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-perceptr0n-imprint-impressum-website-contact-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "search": {
            "title": "Search: a trade and a place",
            "type": "string",
            "description": "Type what you are looking for instead of pasting domains — for example `Zahnärzte in Hamburg`, `dentists in Hamburg`, `Steuerberater München`, `roofers Cologne`. The businesses are looked up in **OpenStreetMap** (© OpenStreetMap contributors, ODbL) and every website found is then enriched from its imprint. About 180 trades are recognised in German and English. Leave empty to use the website list below instead. (Deliberately left empty by default: a run with no input uses the website list below, so an automated run never depends on OpenStreetMap being reachable.)"
          },
          "max_companies": {
            "title": "Maximum companies found by search",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "Only applies to the search above. Each company found is fetched and enriched, so this is also the cost lever: 25 companies cost about $0.14.",
            "default": 25
          },
          "websites": {
            "title": "Websites",
            "type": "array",
            "description": "Domains or URLs — e.g. `liebherr.com`, `https://www.sap.com`, `tuwien.at`, `sbb.ch`. Paste the whole list; one row of company data comes back per entry. Germany, Austria and Switzerland are all covered.",
            "default": [
              "liebherr.com",
              "frischpack.de",
              "tuwien.at"
            ],
            "items": {
              "type": "string"
            }
          },
          "validate_vat": {
            "title": "Verify the VAT ID against the official EU register (VIES)",
            "type": "boolean",
            "description": "ON by default. Every VAT ID found is checked against the European Commission's VIES service, so you learn whether the number a company publishes is actually registered. Adds about a quarter of a second per company and costs nothing extra. Austria, Italy, Spain and most other member states also return the registered name and address, which lets you cross-check the imprint against the register. Germany discloses validity only. Swiss UIDs are outside the EU system and are never checked.",
            "default": true
          },
          "allow_contact_page": {
            "title": "Fall back to the contact page when no legal notice exists",
            "type": "boolean",
            "description": "ON by default. If a site publishes no imprint, the contact page is read instead and the row is marked `foundVia: contact page` with `impressumFound: false` — you still get the address and the mail box, and you can see exactly where the data came from.",
            "default": true
          },
          "include_person_names": {
            "title": "Include managing directors and other person names",
            "type": "boolean",
            "description": "OFF by default. Person names in a legal notice are personal data under GDPR — switch this on only if you have a lawful basis for processing them. Company data, address, register and VAT number are returned either way.",
            "default": false
          },
          "max_items": {
            "title": "Maximum websites",
            "minimum": 1,
            "type": "integer",
            "description": "Optional cap. Leave empty to process the whole list."
          },
          "osm_filter": {
            "title": "OpenStreetMap tag filter (advanced)",
            "type": "string",
            "description": "For trades the search does not know. Pass a raw OSM tag filter such as `[\"amenity\"=\"dentist\"]` or `[\"office\"=\"company\"]` together with a location below. See taginfo.openstreetmap.org for the vocabulary."
          },
          "location": {
            "title": "Location for the tag filter (advanced)",
            "type": "string",
            "description": "City, district, county or state — e.g. `Hamburg`, `Landkreis Rosenheim`, `Bayern`. Needed only with the tag filter above."
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}