Business Website Booking & Contact Finder
Pricing
$1.00 / 1,000 inspected business websites
Business Website Booking & Contact Finder
Find booking, reservation, ordering, quote and contact links on public business websites. Get provider names, public emails and phones, source URLs and page coverage.
Pricing
$1.00 / 1,000 inspected business websites
Rating
0.0
(0)
Developer
Nathaniel Standridge
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
2 days ago
Last modified
Categories
Security
Limited permissionsShare
Turn a list of business websites into an inventory of the actions a visitor can take: book an appointment, reserve a table, order online, request a quote, or contact the business. Each observed link includes its source page and label. Public email links, telephone links and social profiles are included alongside the action links.
Use the website column from a Google Maps export, a local directory, or your own business list. This Actor reads the supplied websites; it does not call a Maps scraper or require a paid upstream Actor.
Price
$1 per 1,000 inspected websites ($0.001 each). No startup fee. Platform usage is included.
One result is charged when the supplied page is successfully fetched and inspected and its website record is delivered to the dataset. The record includes up to two additional selected pages at the same price. A readable site with no observed action links is still an inspected website. If a secondary page fails, the website record is charged and clearly marks partial coverage. Failed or blocked supplied pages, exact normalized duplicate inputs and unprocessed websites do not generate a result charge.
Set Apify's maximum run cost to control the number of results. For example, $0.01 allows up to 10 inspected websites. There are no separate page, email, phone or booking-link charges.
Input
{"urls": ["https://www.delfinasf.com/"],"maxPagesPerSite": 3,"maxRunSeconds": 180}
| Field | Meaning |
|---|---|
urls | 1–50 public HTTPS URLs. Include a path when you want a particular location page. Credentials, IP literals, private hosts and nonstandard ports are rejected. |
maxPagesPerSite | 1–3, default 3. Inspect the supplied page and at most two same-host contact, about or location pages linked from it; contact pages are prioritized, then locations. |
maxRunSeconds | 30–180, default 180. Work budget; the run reports partial processing when exhausted. Keep the platform timeout at least 60 seconds longer. |
Fragments and the explicit HTTPS port are normalized before deduplicating inputs. Different paths or query strings remain different inputs and can produce separate billed results. Redirect aliases are not automatically merged. For one result per business, submit one URL per business.
Output
Each dataset row includes:
inputUrl,finalUrl,title,checkedAtand whether the supplied URL redirected to a different host.actionLinks: observedbooking,reservation,ordering,quoteandcontactlinks with URL, label, provider when recognized, classification reason andsourceUrl.emailsandphones: explicit publicmailto:andtel:links with source URLs.socialLinks: recognized profile links, excluding recognized sharing URLs.pages: the pages actually inspected.coverage: selected-page status, failed secondary pages, page limit and truncation indicators.absenceIsConclusiveis alwaysfalse.
For example, a page containing an OpenTable reservation link can produce this action entry:
{"kind": "reservation","url": "https://www.opentable.com/r/example-restaurant","provider": "OpenTable","label": "Reserve a table","sourceUrl": "https://restaurant.example/","classification": "provider_host_and_english_label"}
This is an illustrative link, not a live restaurant result. Download dataset rows as JSON, CSV or Excel; JSON preserves the nested evidence best. The OUTPUT key-value record reports website counts, failures, duplicate inputs, processing completeness and any spending or time limit that stopped the run.
What the check establishes
The Actor finds links present in the static HTML it receives. It recognizes selected booking and ordering provider domains and uses conservative English link-text patterns for other actions. Provider recognition describes a link's destination; it does not verify an account, availability, prices, business ownership or whether a checkout works.
It never opens external booking or ordering links, submits forms, sends messages, verifies email delivery, logs in or circumvents access controls. The supplied page may redirect to another public HTTPS host; additional pages must stay on the resulting hostname. Robots exclusions, DNS safety checks, bounded redirects, timeouts and response-size limits apply.
JavaScript-only widgets, iframe contents, image-only controls without a usable text, accessible label or image description, plain-text phone numbers and obfuscated emails may be missed. Non-English action labels are not comprehensively classified. Some social/profile or provider URLs may be unrecognized. A generic contact link does not prove that a working contact form exists. No observed booking link does not mean the business lacks online booking.
Coverage is marked partial when discovered follow pages exceed the selected page limit, extraction is truncated, or a selected follow page fails. A run can finish processing all input websites while some website records have partial page coverage. The crawl covers the selected pages, not the whole website. Each site has a 35-second inspection budget, including a 15-second supplied-page limit and up to 12 seconds per additional page. HTML bodies are limited to 2 MB. Evidence arrays share a 750 KB output budget; unusually large results are marked truncated with partial coverage. Slow or blocked sources can reduce coverage. Failed supplied-page fetches are reported in OUTPUT and are not charged; if every supplied page fails, the run fails with no result charge.
Repeat runs and recovery
Each new run is a fresh check and can be charged again. Within a resumed run, confirmed dataset rows are reconciled before more work starts. A dataset append with an unknown outcome is not blindly retried: the run stops with an explicit delivery error so it cannot silently duplicate a charge. Keep the original run's storage intact during recovery.
Support
Report a public URL, the expected visible link, and the relevant run ID through this Actor's Issues tab. Avoid sharing login credentials, signed URLs or private customer data. Site layouts and provider destinations can change; the observed evidence and coverage fields make results auditable.