# WeddingWire Scraper - Wedding Vendor Leads, Emails & Reviews (`scrapersdelight/weddingwire-vendor-scraper`) Actor

Scrape WeddingWire wedding venues and vendors by category and city: phone, website email, address, socials, rating, reviews count, starting price, guests, Couples' Choice awards, deals, team, pricing and FAQ, plus optional reviews with 5 category scores. Filters, monitor mode. No login.

- **URL**: https://apify.com/scrapersdelight/weddingwire-vendor-scraper.md
- **Developed by:** [Scrapers Delight](https://apify.com/scrapersdelight) (community)
- **Categories:** Lead generation, Business, Marketing
- **Stats:** 2 total users, 1 monthly users, 100.0% runs succeeded, 0 bookmarks
- **User rating**: No ratings yet

## Pricing

from $4.50 / 1,000 vendors

This Actor is paid per event. You are not charged for the Apify platform usage, but only a fixed price for specific events.

Learn more: https://docs.apify.com/actors/running/actors-in-store.md#pay-per-event

## What's an Apify Actor?

An Actor is a serverless cloud program that runs on the Apify platform. It has two run modes.
In Batch mode, an Actor accepts a well-defined JSON input, performs an action which can take anything from a few seconds to a few hours,
and optionally produces a well-defined JSON output, datasets with results, or files in key-value store.
In Standby mode, an Actor provides a web server which can be used as a website, API, or an MCP server.

Apify vocabulary and the platform model are defined once, in the agent quickstart at https://apify.com/agents.md.

## How to integrate an Actor?

If asked about integration, you help developers integrate Actors into their projects.
You adapt to their stack and deliver integrations that are safe, well-documented, and production-ready.

Do not guess an integration path. Every one of them is in the agent quickstart at https://apify.com/agents.md: the Apify MCP server, Agent Skills with the Apify CLI, the JavaScript and Python clients, the REST API, and the account-free path for an agent with no human to sign in. It also carries the rule on stating cost before the first paid run.

For examples already wired to this Actor's own input schema, see the [API](#api) section below.

Each client library has reference documentation the quickstart does not restate: [JavaScript/TypeScript](https://docs.apify.com/api/client/js/docs.md) (`npm install apify-client`) and [Python](https://docs.apify.com/api/client/python/docs.md) (`pip install apify-client`).

# README

### What does WeddingWire Scraper do?

**WeddingWire Scraper** extracts wedding venues and vendors from [WeddingWire](https://www.weddingwire.com/): pick a category (16 venue types, 20 vendor types, or all venues / all vendors at once) and a place - a US city, a WeddingWire metro area or a whole state - or paste WeddingWire listing and vendor URLs, and get one row per vendor with name, category, street address, rating, review count, starting price, guest capacity, deals and, from the vendor's profile, phone, website, social links, map location, team, years in business, pricing per service, Couples' Choice award years and every FAQ answer. Emails come from the vendor's own website. Reviews come as separate rows with five category scores. Built for wedding-industry sales teams, agencies, SaaS and insurance sellers, directories and market researchers.

WeddingWire scraper · weddingwire.com vendor scraper · wedding venue leads · WeddingWire API alternative

- **Wedding vendor leads with contact details:** phone on 90-100% of vendors in our test runs, website on 98% of Dallas venues, emails from the vendor's own website on 41-60% of venues.
- **Every WeddingWire category and place:** 36 types x any US city (with or without nearby towns), metro area or state, or your own WeddingWire URLs with any filter.
- **WeddingWire's own filters:** price band, guest capacity, settings, amenities, venue type, music genres, photo styles, services, cuisines, religions (332 options), owned-by, award winners, 24-hour responders.
- **Reviews with category scores:** rating, quality, response time, professionalism, value and flexibility scores, title, text, date, reviewer first name, vendor reply, photos.
- **Complete walks:** each search reports WeddingWire's own vendor total next to what was delivered (Austin venues 369 of 369, Austin barns 104 of 104, Denver photographers 500 of 500).
- **Monitoring:** only vendors new since your last run.
- **No login, cookies or API key to supply.** Export to JSON, CSV or Excel; schedules, webhooks, Make, Zapier, n8n, Google Sheets; API and MCP.

### What data can you get from WeddingWire?

<table>
<tr><td>🏷️ Vendor name, category, WeddingWire ids</td><td>📍 Street address, city, state, ZIP</td><td>🗺️ Latitude / longitude, metro region</td></tr>
<tr><td>⭐ Rating, review count, % recommended</td><td>💲 Starting price, price text, price range</td><td>📅 Average spend, price per service, peak / off-peak</td></tr>
<tr><td>📞 Phone</td><td>✉️ Email from the vendor's website</td><td>🌐 Website</td></tr>
<tr><td>📸 Instagram, Facebook, X, Pinterest, YouTube</td><td>👤 Team members + roles (often the owner)</td><td>🏆 Couples' Choice award years</td></tr>
<tr><td>👥 Guest capacity (venues)</td><td>🏛️ Highlights: settings, amenities, services</td><td>🧾 Every FAQ answer (site fees, bar price, seasons)</td></tr>
<tr><td>🎁 Current deals + best discount</td><td>⚡ 24-hour response badge</td><td>🗓️ Years in business, team size, languages</td></tr>
<tr><td>🔎 Google rating WeddingWire shows</td><td>🤖 WeddingWire's AI review summary</td><td>💬 Reviews with 5 category scores and replies</td></tr>
</table>

### How to scrape WeddingWire with WeddingWire Scraper

1. [Create a free Apify account](https://console.apify.com/sign-up) - the free plan includes monthly credit.
2. Open [WeddingWire Scraper](https://apify.com/scrapersdelight/weddingwire-vendor-scraper) and click **Try for free**.
3. Pick **Categories** and type **Locations** ("Austin, TX", "Napa Valley", "Texas"), or paste WeddingWire URLs.
4. Add filters, switch **Include reviews** on if you need them, and set **Max vendors**.
5. Click **Start**. Vendors appear in the dataset page by page.
6. Open the **Storage** tab and **Export** as JSON, CSV or Excel - or schedule the run.

### ⬇️ Input

| Parameter | Type | Description |
|---|---|---|
| **🔍 What to scrape** | | |
| `categories` | array | 36 WeddingWire types + `all-venues`, `all-vendors` (dropdown). Combined with every location. |
| `locations` | array | "City, ST" (city + nearby towns), "Austin area" / "Napa Valley" (metro area), "Texas" / "TX" (whole state). |
| `startUrls` | array | WeddingWire listing URLs (`/c/...html`, `/shared/search?...`) with any filters, or vendor profile URLs (`/biz/...html`). |
| `includeNearby` | boolean | City searches include nearby towns (WeddingWire's default). Untick for the city only. Default **on**. |
| **🎯 Filters** (applied by WeddingWire) | | |
| `priceRanges` | array | WeddingWire's price bands; each category has its own (e.g. `djs:900-1200`, `venues:2500-5000`). |
| `guestCapacity` | array | Venue bands: `0-99`, `100-199`, `200-299`, `300-399`, `400-plus`. |
| `features` | array | 332 options: venue settings and amenities, venue types, music genres, photo styles, services, cuisines, religions and more. |
| `ownedBy` | array | Black-, Asian-, Hispanic or Latinx-, LGBTQ+-, Native American-, Pacific Islander-, Veteran-, Woman-owned. |
| `awardWinnersOnly`, `respondsWithin24h`, `popularWithCouples`, `recommendedByCouples` | boolean | WeddingWire's quick filters. |
| **✂️ Refine results** (checked before a row is delivered) | | |
| `minRating`, `minReviews` | number | Skip vendors below a rating / review count. |
| `withPhoneOnly`, `withWebsiteOnly`, `withEmailOnly` | boolean | Only vendors with that contact (turns on profile details). |
| **➕ Extra data** | | |
| `includeDetails` | boolean | Read each profile: phone, website, socials, map location, team, pricing, deals, awards, FAQ. Default **on**. |
| `includeWebsiteEmail` | boolean | Read the vendor's own website (home + contact page) for its email. Billed only when one is found. Default **on**. |
| `includeReviews` | boolean | Add review rows. Default off. |
| `maxReviewsPerVendor` | integer | Default 20 (the first request returns up to 100). |
| `reviewsSort` | string | `newest` (default), `oldest`, `highest`, `lowest`. |
| **🔁 Monitoring** | | |
| `monitorMode`, `monitorStoreName` | | Deliver only vendors not delivered by earlier runs of the same search. |
| **📦 Output** | | |
| `maxResults` | integer | Total vendor rows (reviews not counted). Default 100; 0 = no limit. |
| `maxResultsPerSearch` | integer | Cap per category x location or per URL. 0 = none. |
| `compact` | boolean | Core fields only (contact, address, rating, price, URL). |
| **⚙️ Advanced** | | |
| `proxyConfiguration` | object | Used only when WeddingWire refuses the direct connection. Default RESIDENTIAL US. |
| `maxConcurrency` | integer | Profiles (and vendor websites) in parallel. Default 6. |

#### Input JSON

```json
{
    "categories": ["barns-farms", "photography"],
    "locations": ["Austin, TX", "Napa Valley"],
    "guestCapacity": ["100-199", "200-299"],
    "includeDetails": true,
    "includeWebsiteEmail": true,
    "includeReviews": false,
    "maxResults": 200
}
```

#### Pick the place the way WeddingWire does

"Austin, TX" searches the city of Austin plus towns around it (174 venues; untick **Include nearby towns** for the 126 in Austin itself). "Austin area" searches WeddingWire's whole Austin metro (369 venues). "Texas" searches the state, which WeddingWire caps at about 500 vendors per search - for more, list cities or metro areas. A place WeddingWire does not know is reported in `RUN_SUMMARY` and billed nothing.

#### Filters only apply where WeddingWire has them

Each category has its own filters (venues: guests, settings, amenities, venue type; DJs and bands: music genres; photographers: styles and services). A filter a category lacks is left out of that search and named in the log and `RUN_SUMMARY`; the rest of the search runs. Several options of one filter mean "any of them"; different filters must all match.

#### Contact details are on the profile page

Phone, website and socials are not on WeddingWire's listing cards. With `includeDetails` on (the default) the actor opens each vendor's profile. WeddingWire shows a **phone for every tier** but a **website and social links only for paid listings**. WeddingWire never prints a vendor's email (its button opens a message form), so with `includeWebsiteEmail` on the actor reads the vendor's own website and returns the addresses printed there (the site's own domain or a gmail-type address; never a guess).

### ⬆️ Output

One row per vendor (`recordType: "vendor"`) and, with reviews on, one per review (`recordType: "review"`). Views: **Vendor leads**, **Vendor overview**, **Reviews**. A real vendor row (Dallas venues, shortened):

```json
{
  "recordType": "vendor",
  "name": "The Hidden Willow",
  "category": "Barns & Farms",
  "address": "2601 FM 196 North", "city": "Blossom", "state": "TX", "postalCode": "75416",
  "rating": 5, "reviewCount": 5,
  "startingPrice": 3000, "maxGuests": 250, "averageSpend": 4800,
  "phone": "9035174224",
  "email": "thehiddenwillowevents@gmail.com",
  "website": "https://thehiddenwillow.net",
  "instagram": "https://instagram.com/thehiddenwillowevents",
  "yearsInBusiness": 6,
  "detailsFetched": true, "emailLookup": "found",
  "searchTotal": 500, "page": 1, "position": 3
}
```

A real review row:

```json
{
  "recordType": "review",
  "vendorName": "Tunes Across Texas",
  "rating": 5,
  "title": "06/19/2026",
  "content": "This was the biggest day of our lives, and it wouldn't have been possible without the service of Tunes Across Texas. ...",
  "createdAt": "2026-07-14",
  "ratingQuality": 5, "ratingResponseTime": 5, "ratingProfessionalism": 5,
  "ratingValue": 5, "ratingFlexibility": 5,
  "reviewerFirstName": "Wren",
  "vendorReply": "Thank you Wren for your review for DJ Jovan! ..."
}
```

#### Fields and how often they are filled

Measured on our test runs (2026-10-14): **10 Austin photographers** (the form as it opens), **100 Austin venues** and **100 Dallas venues** (first 100 of each search: page 1 carries the paid listings), and **a deep walk** of 1,000 photographers, DJs and florists in Austin and Houston (96% free listings). Details and website emails on.

| Field | 10 photographers | 100 Austin venues | 100 Dallas venues | Deep walk (1,000) |
|---|---|---|---|---|
| `phone` | 90% | 98% | 100% | 97% |
| `email` (vendor's website) | 30% | 41% | 60% | 2% |
| `website` | 30% | 67% | 98% | 4% |
| `instagram` / `facebook` | 30% / 30% | 57% / 59% | 92% / 89% | 4% / 3% |
| `address` | 90% | 100% | 100% | 82% |
| `postalCode`, lat/lng | 100% | 100% | 100% | 100% |
| `rating` / `reviewCount` | 100% / 100% | 84% / 100% | 84% / 100% | 85% / 100% |
| `startingPrice` | 100% | 83% | 92% | 30% |
| `maxGuests` (venues) | - | 95% | 100% | - |
| `averageSpend` / `servicePrices` (venues) | - | 57% / 50% | 91% / 76% | - |
| `couplesChoiceYears` | 70% | 44% | 44% | 43% |
| `contactName` / `teamMembers` | 30% | 44% | 53% | 4% |
| `yearsInBusiness`, `languages` | 30% | 58-59% | 92% | 4% |
| `travelRange` (vendors that travel) | 30% | 0% | 1% | 4% |
| `faq` answers | 100% | 99% | 100% | 95% |
| `googleRating` | 0% | 57% | 83% | 0% |
| `deals` | 10% | 16% | 25% | 2% |

Reviews (505 rows, 10 Austin DJs): rating, text, date, reviewer and the five category scores 100%, title 87%, vendor reply 39%, photos 9%.

Fields WeddingWire leaves empty are `null`, never a guessed value. Websites, social links, team and years in business exist only on paid listings, so a deep walk into free listings fills them far less (and gives few emails, which come from the website). TikTok links are not output: none of the 1,201 profiles checked carried one.

### Use cases

- 💼 **Sales prospecting:** venues, photographers, planners and DJs with phone, website and email for CRM, booking, album and insurance products.
- 📈 **Market sizing:** vendor counts per category and city from WeddingWire's own totals, price bands and average spend.
- 🏛️ **Venue research:** capacity, site fees, bar prices per person, amenities and settings across a metro.
- 🏆 **Partner lists:** Couples' Choice winners and 24-hour responders for referral programs.
- 🔁 **New-vendor alerts:** weekly monitor runs catch vendors new to a market.
- ⭐ **Reputation analysis:** category scores, reply rates and Google ratings side by side.

### How much does it cost to scrape WeddingWire?

Pay per row, no start fee: **$4.50 per 1,000 vendors**, **+$0.90 per 1,000 vendors with profile details**, **+$0.90 per 1,000 vendors with a website email** (charged only when an email is found), **$0.45 per 1,000 reviews**.

| Run | Rows | Price |
|---|---|---|
| The form as it opens (10 photographers, details, 3 emails found) | 10 | $0.0567 |
| 100 venues, listing only | 100 | $0.45 |
| 100 venues with details | 100 | $0.54 |
| 100 venues with details + 60 emails found | 100 | $0.594 |
| 10 DJs with details + 505 reviews | 515 | $0.281 |

Filtered-out vendors, duplicates and vendors already delivered by monitor runs are not delivered or billed. Set **Max vendors** or Apify's maximum total charge to cap a run; the actor stops there.

### Integrations, API, scheduling & MCP

- **Schedule** weekly runs with monitor mode for new vendors only.
- **Webhooks** on run finish; connect **Make, Zapier, n8n, Google Sheets, Slack** through Apify integrations.
- **API:** start runs and read the dataset with [Python](https://apify.com/scrapersdelight/weddingwire-vendor-scraper/api/python) or [JavaScript](https://apify.com/scrapersdelight/weddingwire-vendor-scraper/api/javascript).
- **MCP:** let an AI agent call it through the [Apify MCP server](https://apify.com/scrapersdelight/weddingwire-vendor-scraper/api/mcp).

### More wedding and event vendor scrapers

- 💍 [The Knot Vendor Scraper](https://apify.com/scrapersdelight/theknot-vendor-scraper) - the same row shape from theknot.com, with emails The Knot prints.
- 🎉 [Event Vendor Leads Scraper](https://apify.com/scrapersdelight/event-vendor-leads-scraper) - The Bash, Eventective, BounceGuide and Roaming Hunger in one list.
- 🎧 [The Bash Vendor Scraper](https://apify.com/scrapersdelight/thebash-scraper) - DJs, bands, photographers and entertainers.
- 🏛️ [Eventective Scraper](https://apify.com/scrapersdelight/eventective-scraper) - event venues and vendors with emails.
- 🥂 [PartySlate Scraper](https://apify.com/scrapersdelight/partyslate-venue-scraper) - event venues and vendors from PartySlate.

All our actors: [apify.com/scrapersdelight](https://apify.com/scrapersdelight).

### Limits & empty runs

- WeddingWire lists 24 vendors per page (page 1 also carries every paid listing, up to ~49) and shows at most about 500 per search; a state or a big metro area hits that cap - list cities to go past it.
- Website, social links, team and years in business exist only on paid listings; free listings carry phone, address, rating and FAQ answers.
- Emails come only from the vendor's own website: a vendor with no website, a site that answers with a bot check, or a site that prints no address gives no email (and no charge).
- A place WeddingWire does not know, a category with no vendors there (WeddingWire answers 404), and a vendor URL that no longer exists finish the run successfully with nothing billed; `RUN_SUMMARY` names each one.
- If WeddingWire refuses the direct connection, the actor switches to a proxy within a per-run budget, and stops the run (nothing more billed) rather than answer a CAPTCHA.

### FAQ

#### How much does WeddingWire Scraper cost?

$4.50 per 1,000 vendors, plus $0.90 per 1,000 when profile details are read, plus $0.90 per 1,000 vendors whose website gave an email, and $0.45 per 1,000 reviews. No start fee. 100 venues with details cost $0.54.

#### How many vendors can WeddingWire Scraper get per city?

Every vendor WeddingWire lists for the category and place, up to its own cap of about 500 per search: 369 Austin-area venues, 104 Austin barns and farms, 500 Denver photographers at the time of testing. Each search reports WeddingWire's own total next to the rows delivered.

#### Does WeddingWire Scraper get emails and phone numbers?

Phone numbers yes, from every profile tier (90-100% in our runs). WeddingWire itself never shows an email, so WeddingWire Scraper reads the vendor's own website: 41-60% of venues gave one in our runs. Websites and social links come with paid listings.

#### Can WeddingWire Scraper scrape reviews?

Yes. Switch on **Include reviews**: each review is a row with the overall rating, five category scores, title, text, date, the reviewer's first name and the vendor's reply.

#### Can I scrape The Knot with WeddingWire Scraper?

No. The Knot belongs to the same company but runs separate listings with different ids, ratings and review counts; use [The Knot Vendor Scraper](https://apify.com/scrapersdelight/theknot-vendor-scraper) for theknot.com - it returns the same field names.

#### Can I monitor new vendors with WeddingWire Scraper?

Yes. Turn on **Monitor mode** and schedule the run weekly: each run delivers only vendors that earlier runs of the same search did not.

#### Do I need a WeddingWire account, cookies or an API key?

No. WeddingWire Scraper reads the public listing and profile pages and the public reviews feed.

#### Can I use WeddingWire Scraper with the Apify API or MCP?

Yes - every input in the table above works over the API, and AI agents can call the actor through the Apify MCP server.

#### Why did my WeddingWire Scraper run return no vendors?

Open `RUN_SUMMARY` in the key-value store: it lists each search with WeddingWire's total, the filters left out for a category, places not recognised and any unreachable pages. A category with no vendors in a place (e.g. beaches in Austin) makes WeddingWire answer 404, and narrow filter combinations often match nothing.

#### Your feedback

Found a bug or need a field? Open an issue on the [Issues tab](https://apify.com/scrapersdelight/weddingwire-vendor-scraper/issues/open) - we read every one.

This actor is an independent tool and is not affiliated with WeddingWire or The Knot Worldwide.

# Actor input Schema

## `categories` (type: `array`):

WeddingWire venue and vendor categories, combined with every location below. "All venues" / "All vendors" search the whole group. Leave empty when you only use Start URLs.

## `locations` (type: `array`):

Where to search: "Austin, TX" (a city, with nearby towns unless you untick the option below), "Napa Valley" or "Austin area" (a WeddingWire metro area), "Texas" or "TX" (the whole state). Brooklyn, Long Island and other places in WeddingWire's own location search work too. A place it does not know is reported, never billed.

## `startUrls` (type: `array`):

WeddingWire listing URLs with any filters you set on the site (https://www.weddingwire.com/c/tx-texas/austin/wedding-venues/635-11-rca.html, https://www.weddingwire.com/shared/search?...), and/or vendor profile URLs (https://www.weddingwire.com/biz/.../....html).

## `includeNearby` (type: `boolean`):

For a city: also list vendors in towns around it (WeddingWire's own default; Dripping Springs, TX venues: 129 with nearby towns, 22 in the city itself). Untick for vendors located in the city only.

## `ownedBy` (type: `array`):

Vendor-declared ownership. Several = any of them.

## `guestCapacity` (type: `array`):

Venue capacity bands. Several = any of them.

## `priceRanges` (type: `array`):

WeddingWire's price bands; each category has its own. Several = any of them. Vendors that publish no price drop out when you filter on price.

## `features` (type: `array`):

Every option of WeddingWire's filter panels: venue settings and amenities, venue types, music genres, photo and video styles, services, cuisines, dietary needs, religions and more. Several options = vendors matching any of them (the site's own rule, measured: Indoor 294 + Pet Friendly 169 -> 313 Austin venues); combined with price, capacity or owned-by, every filter type must match.

## `awardWinnersOnly` (type: `boolean`):

Only Couples' Choice award winners.

## `respondsWithin24h` (type: `boolean`):

Only vendors with WeddingWire's 24-hour response badge.

## `popularWithCouples` (type: `boolean`):

WeddingWire's "popular with couples" filter.

## `recommendedByCouples` (type: `boolean`):

WeddingWire's "recommended by couples" filter.

## `minRating` (type: `number`):

Skip vendors rated below this (0-5). Vendors with no reviews are skipped when set.

## `minReviews` (type: `integer`):

Skip vendors with fewer reviews than this. 0 = no limit.

## `withPhoneOnly` (type: `boolean`):

Deliver only vendors whose profile lists a phone number (turns on profile details).

## `withWebsiteOnly` (type: `boolean`):

Deliver only vendors whose profile lists a website (turns on profile details). WeddingWire shows websites on paid listings only.

## `withEmailOnly` (type: `boolean`):

Deliver only vendors whose own website printed an email (turns on profile details and website emails).

## `includeDetails` (type: `boolean`):

Read each vendor's profile page: phone, website, social links, map location, travel range, team, years in business, languages, pricing per service, average spend, deals, awards, FAQ answers. One extra page per vendor, billed as the vendor-details add-on.

## `includeWebsiteEmail` (type: `boolean`):

WeddingWire never shows a vendor's email. When the profile lists a website, read its home page (and contact page) and return the emails printed there. Billed only for vendors where an email was found.

## `includeReviews` (type: `boolean`):

Add each vendor's reviews as separate rows (recordType "review"): rating, 5 category scores, title, text, date, reviewer first name, vendor reply, photos. Billed per review.

## `maxReviewsPerVendor` (type: `integer`):

Reviews read per vendor when reviews are on (the first request returns up to 100).

## `reviewsSort` (type: `string`):

WeddingWire's own review sort.

## `monitorMode` (type: `boolean`):

Deliver only vendors not delivered by earlier monitor runs of the same search. Pairs with a weekly schedule to catch vendors new to a market.

## `monitorStoreName` (type: `string`):

Named key-value store that remembers delivered vendors. Use one name per monitored search set.

## `maxResults` (type: `integer`):

Total vendor rows for the run (reviews not counted). WeddingWire lists 24 vendors a page and at most about 500 per search. 0 = no limit.

## `maxResultsPerSearch` (type: `integer`):

Cap per category x location (or per URL). 0 = no per-search cap.

## `compact` (type: `boolean`):

Core fields only (name, category, address, rating, price, phone, email, website, socials, URL) - trimmed for spreadsheets and AI pipelines.

## `proxyConfiguration` (type: `object`):

Fallback route when WeddingWire refuses the direct connection. Default: Apify RESIDENTIAL (US), used only after a refusal and within a per-run budget. Your own proxy URLs are used from the first request.

## `maxConcurrency` (type: `integer`):

Profile pages (and vendor websites) fetched in parallel.

## Actor input object example

```json
{
  "categories": [
    "photography"
  ],
  "locations": [
    "Austin, TX"
  ],
  "includeNearby": true,
  "awardWinnersOnly": false,
  "respondsWithin24h": false,
  "popularWithCouples": false,
  "recommendedByCouples": false,
  "withPhoneOnly": false,
  "withWebsiteOnly": false,
  "withEmailOnly": false,
  "includeDetails": true,
  "includeWebsiteEmail": true,
  "includeReviews": false,
  "maxReviewsPerVendor": 20,
  "reviewsSort": "newest",
  "monitorMode": false,
  "monitorStoreName": "weddingwire-vendor-monitor",
  "maxResults": 10,
  "maxResultsPerSearch": 0,
  "compact": false,
  "proxyConfiguration": {
    "useApifyProxy": true,
    "apifyProxyGroups": [
      "RESIDENTIAL"
    ],
    "apifyProxyCountry": "US"
  },
  "maxConcurrency": 6
}
```

# Actor output Schema

## `results` (type: `string`):

One item per vendor (recordType vendor) and, when reviews are on, one per review (recordType review).

## `summary` (type: `string`):

Per-search totals on WeddingWire vs vendors delivered, filters left out, locations not recognised, unreachable pages, routes used and why the run stopped.

# API

You can run this Actor programmatically using our API. Below are code examples in JavaScript, Python, and CLI, as well as the OpenAPI specification and MCP server setup.

## JavaScript example

```javascript
import { ApifyClient } from 'apify-client';

// Initialize the ApifyClient with your Apify API token
// Replace the '<YOUR_API_TOKEN>' with your token
const client = new ApifyClient({
    token: '<YOUR_API_TOKEN>',
});

// Prepare Actor input
const input = {
    "categories": [
        "photography"
    ],
    "locations": [
        "Austin, TX"
    ],
    "includeDetails": true,
    "includeWebsiteEmail": true,
    "maxResults": 10
};

// Run the Actor and wait for it to finish
const run = await client.actor("scrapersdelight/weddingwire-vendor-scraper").call(input);

// Fetch and print Actor results from the run's dataset (if any)
console.log('Results from dataset');
console.log(`💾 Check your data here: https://console.apify.com/storage/datasets/${run.defaultDatasetId}`);
const { items } = await client.dataset(run.defaultDatasetId).listItems();
items.forEach((item) => {
    console.dir(item);
});

// 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/js/docs

```

## Python example

```python
from apify_client import ApifyClient

# Initialize the ApifyClient with your Apify API token
# Replace '<YOUR_API_TOKEN>' with your token.
client = ApifyClient("<YOUR_API_TOKEN>")

# Prepare the Actor input
run_input = {
    "categories": ["photography"],
    "locations": ["Austin, TX"],
    "includeDetails": True,
    "includeWebsiteEmail": True,
    "maxResults": 10,
}

# Run the Actor and wait for it to finish
run = client.actor("scrapersdelight/weddingwire-vendor-scraper").call(run_input=run_input)

# Fetch and print Actor results from the run's dataset (if there are any)
print(f"💾 Check your data here: https://console.apify.com/storage/datasets/{run.default_dataset_id}")
for item in client.dataset(run.default_dataset_id).iterate_items():
    print(item)

# 📚 Want to learn more 📖? Go to → https://docs.apify.com/api/client/python/docs/quick-start

```

## CLI example

```bash
echo '{
  "categories": [
    "photography"
  ],
  "locations": [
    "Austin, TX"
  ],
  "includeDetails": true,
  "includeWebsiteEmail": true,
  "maxResults": 10
}' |
apify call scrapersdelight/weddingwire-vendor-scraper --silent --output-dataset

```

## MCP server setup

```json
{
    "mcpServers": {
        "apify": {
            "type": "http",
            "url": "https://mcp.apify.com/?tools=fetch-actor-details,scrapersdelight/weddingwire-vendor-scraper"
        }
    }
}
```

The hosted server signs you in with OAuth on first connect, so no API token belongs in this config. Clients without OAuth support can send an `Authorization: Bearer <APIFY_API_TOKEN>` header instead, using a token from API & Integrations in Apify Console (https://console.apify.com/settings/integrations).

## OpenAPI specification

Download the OpenAPI definition: https://api.apify.com/v2/actors/aiDgKNLJcKeuyaOW4/builds/Bmuc7weAirruj7FsG/openapi.json
