A landing zone in GCS
Every run as NDJSON in a bucket.
Deploy an HTTP function as the Import.io extractor’s webhook. On each run it checks a shared secret and writes the latest results to Cloud Storage, ready for BigQuery.
import os
import functions_framework, requests
from google.cloud import storage
@functions_framework.http
def importio_webhook(request):
if request.headers.get("X-Webhook-Secret") != os.environ["WEBHOOK_SECRET"]:
return ("", 401)
data = requests.get(os.environ["IMPORTIO_JSON_URL"]).content
(storage.Client().bucket(os.environ["BUCKET"])
.blob("importio/latest.ndjson").upload_from_string(data))
return ("", 204)Any public page, rendered, through managed proxies
Rendering, proxy routing, captcha handling, extraction
POST on every successful run
An HTTP function that lands each run in Cloud Storage.
Also connects via data endpoints.
Every run as NDJSON in a bucket.
Load the file into a table from the same function.
Publish a message so downstream jobs start on new data.
WEBHOOK_SECRET and IMPORTIO_JSON_URL.Yes, with Managed Services. They deliver directly into Google Cloud Storage or BigQuery on your schedule.
Every time a crawl run finishes successfully. Import.io POSTs to your URL with the extractor ID, total URL count and links to the run’s JSON, CSV and Excel outputs. You can view a sample payload in the extractor’s settings.
Webhooks accept custom headers. Add a shared-secret header in the extractor’s webhook settings and reject any request that doesn’t carry it.
No. The latest-run CSV, JSON and Google Sheets endpoints return data your extractor already collected, so they don’t count toward your plan. Only the Live Query API runs an extraction per request.
As fresh as your schedule. Run the extractor hourly, daily or weekly and the endpoint always serves the latest successful run.
A function URL that lands every run in S3 or DynamoDB.
Setup 15 minWebhookEndpointStart a Zap every time an Import.io run succeeds.
Setup 5 minWebhookA custom webhook scenario that runs on every successful extraction.
Setup 5 minManagedWebhookManaged delivery into your GCS bucket, ready for BigQuery.
Setup 10 min