Import Website
Kick off an async website import; returns a job to poll.
The whole pipeline — crawl (~20–60s) → LLM structuring (minutes) → DB write — is 5–7 min for a real multi-page property, which outlives browser/proxy timeouts (the operator saw a failure while the server kept running and eventually wrote the pages). So this endpoint does only the fast, synchronous part inline and enqueues the slow part as a background job that owns its own DB session, returning immediately with the job. Poll GET /import-website/jobs/{job_id} for status/progress; pages land as reviewable DRAFTs when it completes.
Inline verification (a guide belongs to one property): the pasted URL's registrable domain must match the property's verified website (its stored website_url, else Google Maps' websiteUri for a linked place). A mismatch is a hard block (422) — a user cannot pour an unrelated site into a property's knowledge base.
Single in-flight per property+source: a re-import (e.g. a client-abort retry) while a job for the same canonical URL is still running returns that same job instead of starting a concurrent duplicate.
Path parameters
Request body
Response
Successful Response
Changes
No recorded changes to this endpoint across all 3 revisions of this API.