{
  "openapi": "3.0.1",
  "info": {
    "title": "Chamber of Commerce Member Directory Scraper — 927 Chambers",
    "description": "Sweep many local Chamber of Commerce member directories at once (ChamberMaster). 927 chambers verified live, holding 482,110 businesses: name, category, phone, website, domain, full address. Filter by state, city or category. A free discovery run lists every bundled chamber. No login.",
    "version": "0.1",
    "x-build-id": "bKjqPHGA8XGg9c5WN"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapersdelight~chamber-directory-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapersdelight-chamber-directory-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/scrapersdelight~chamber-directory-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapersdelight-chamber-directory-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/scrapersdelight~chamber-directory-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapersdelight-chamber-directory-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": {
          "listChambers": {
            "title": "Discovery mode — list the bundled chambers (FREE, nothing is charged)",
            "type": "boolean",
            "description": "Tick this and the run skips scraping entirely: it returns one row per bundled chamber (rank, chamber name, host, member count, directory URL) so you can check yours is covered before spending anything. These rows are pushed WITHOUT the billing event, so a discovery run costs $0 in Actor charges. Then copy the 'host' value into 'Specific chambers' below and run for real.",
            "default": false
          },
          "hostPreset": {
            "title": "Chamber preset (used only when you name no chambers below)",
            "enum": [
              "sample",
              "metro50",
              "metro200",
              "all",
              "none"
            ],
            "type": "string",
            "description": "Which slice of the bundled list to sweep when 'Chamber picker' and 'Specific chambers' are both empty. The default is the 2-chamber sample (Kansas City + Memphis), which returns 100 rows in about 10 seconds, so a run started with no input at all still finishes fast and cheap. The bigger presets are ordered largest-first: metro50 is the 50 biggest directories, all = every one of the 927 chambers verified live on 2026-08-12 (482,110 members). The biggest chambers are also the slowest to answer (the largest one replies on a ~21 s server-side delay per page), so give metro50 / metro200 / all a run timeout of an hour or more. This never overrides a chamber you named yourself.",
            "default": "sample"
          },
          "chamberPicker": {
            "title": "Chamber picker — the 200 largest, by name",
            "type": "array",
            "description": "Pick chambers from a list instead of guessing a subdomain. Each entry shows the chamber's own name and its measured member count, e.g. 'Greater Memphis Chamber — 1,537 members'. Picking here overrides the preset above. Only the 200 largest are listed — for any of the other 727, use 'Specific chambers' below, or run discovery mode first.",
            "items": {
              "type": "string",
              "enum": [
                "fullertonchamber",
                "businessinsurrey",
                "oprfchamber",
                "manateechamber",
                "halifaxchamberns",
                "lubbockchambertx",
                "worcesterchamber",
                "middlesexchamber",
                "bcschamber",
                "vpcc",
                "neworleanschamber",
                "memphischamber",
                "rochestermnchamber",
                "gscc",
                "montgomerychamberalabama",
                "saratogacounty",
                "ghwcc",
                "slchamber",
                "stuartmartin",
                "chandlerchamber",
                "lakeviewchamber",
                "portwashingtonny",
                "bozemanchamber",
                "woodlandschambertx",
                "fortsmithchamber",
                "fortworthchamber",
                "greatermadisonchamber",
                "rihispanicchamberri",
                "bismarckmandan",
                "abilenechamber",
                "palmbeaches",
                "cdfms",
                "monroe",
                "monroela",
                "tacomachamber",
                "wochamber",
                "minneapolischamber",
                "wilmingtonnc",
                "columbiasc",
                "gainesvillechamber",
                "waukesha",
                "eschamber",
                "bxkentucky",
                "fountainhillschamber",
                "lbchamber",
                "swlachamber",
                "rankinchamber",
                "dutchesscountyregionalchamberny",
                "sarpyne",
                "yorkchamber",
                "williamsportlycoming",
                "georgetownchambertx",
                "richlandareachamber",
                "nccccde",
                "phoenixchamberpac",
                "burnabyboardoftrade",
                "salemchamber",
                "loudounchamber",
                "cochawaii",
                "southlakechamberfl",
                "brightoncocmi",
                "wdmchamberia",
                "huronchamber",
                "sttammanychamber",
                "cheyennechamber",
                "flintandgeneseemi",
                "ogdenweberut",
                "seminolebusiness",
                "charlottetownchamber",
                "malibuca",
                "midlandtxchamber",
                "greaterfortwaltonbeach",
                "bentonchamber",
                "macombcountychamber",
                "aaccwisconsin",
                "tcchamber",
                "traverseconnect",
                "greenvillenc",
                "londonchamber",
                "athensga",
                "columbiacountychamber",
                "edajones",
                "onesouthcoast",
                "oaklandchamber",
                "beaumont",
                "hendersoncountync",
                "grapevine",
                "kearneycoc",
                "granbury",
                "greaterreadingchamber",
                "aurorachamber",
                "capeannma",
                "limachamber",
                "uniquelyurbandale",
                "cullmanchamber",
                "dublinchamber",
                "bbvchamber",
                "gcvcc",
                "fwhcc",
                "capechamber",
                "cyfairdev",
                "cyfairhoustonchamber",
                "capemaycountychamber",
                "galvestonchamber",
                "ulsterchamber",
                "tampabaybeachesfl",
                "adirondackchamber",
                "lynchburgchamber",
                "portsmouthchamber",
                "fredericksburgregionalchamber",
                "southbaldwinal",
                "stcloudareachambermn",
                "rockwallchamber",
                "blairsvilleunionchamber",
                "catawbachamber",
                "sheridanwyomingchamber",
                "henrycounty",
                "regionalchamberva",
                "tomballchamber",
                "englewoodchamberfl",
                "cookevillechamber",
                "lawrencechamber",
                "westervillechamber",
                "sahcc-dev",
                "a2ychamber",
                "newnancowetachamber",
                "farragutchamber",
                "hbchamber",
                "rowancountychamber",
                "bethanyfenwick",
                "georgetownchamber",
                "oceancitychamber",
                "cenlachamber",
                "springfield-chamber",
                "waltonareachamber",
                "oxfordms",
                "northsachamber",
                "fayettecountychamber",
                "winterpark",
                "cleburnechambertx",
                "scottsdalechamber",
                "tbchamberon",
                "howardchambermd",
                "stalbert",
                "heartofthevalleychamber",
                "montgomerychamber",
                "anchoragechamber",
                "npbchamber",
                "amherstny",
                "lindaletx",
                "stgeorgechamber",
                "petoskey",
                "nantucketchamberma",
                "rockport-fulton",
                "warnerrobins",
                "lagrangechamber",
                "meridianchamber",
                "champaigncountyil",
                "zephyrhillschamberfl",
                "twinfallschamber",
                "washingtoncounty",
                "conejochamber",
                "delraybeach",
                "reddeerchamberab",
                "barriechamber",
                "chesterfieldmochamber",
                "grovecitychamber",
                "sheboygan",
                "sheboygancoc-dev",
                "roanokechamber",
                "carlislechamber",
                "pasorobleschamber",
                "lufkinangelinacountychamber",
                "northportchamber",
                "jolietchamber",
                "spokanevalleychamber",
                "ghdcc",
                "whistlerchamber",
                "chambersburg",
                "mtjulietchamber",
                "tclmchamber",
                "shoalschamberal",
                "rochesterregionalchamberofcommerce",
                "kingsportchamber",
                "bangorregionchamber",
                "hooverchamberal",
                "vernonchamberbc",
                "albanyga",
                "destinchamber",
                "tompkinschamber",
                "columbusareachamber",
                "miamibeachchamber",
                "vestaviahills",
                "burkecounty",
                "stephenvilletexas",
                "wakeforestchamber",
                "greaterbinghamtonny",
                "ottawaboardoftrade",
                "stocktonchamber",
                "beverlyhillschamber"
              ],
              "enumTitles": [
                "North Orange County Chamber — 6,108 members (fullertonchamber)",
                "Surrey & White Rock Board of Trade — 2,882 members (businessinsurrey)",
                "Oak Park-River Forest Chamber of Commerce — 2,156 members (oprfchamber)",
                "Manatee Chamber of Commerce — 2,021 members (manateechamber)",
                "Halifax Chamber of Commerce — 1,999 members (halifaxchamberns)",
                "Lubbock Chamber of Commerce — 1,946 members (lubbockchambertx)",
                "Worcester Regional Chamber of Commerce and Affiliates — 1,912 members (worcesterchamber)",
                "Middlesex County Chamber of Commerce — 1,868 members (middlesexchamber)",
                "Bryan-College Station Chamber of Commerce — 1,600 members (bcschamber)",
                "Virginia Peninsula Chamber — 1,582 members (vpcc)",
                "New Orleans Chamber of Commerce — 1,547 members (neworleanschamber)",
                "Greater Memphis Chamber — 1,537 members (memphischamber)",
                "Rochester Area Chamber of Commerce — 1,402 members (rochestermnchamber)",
                "The Greater Springfield Chamber of Commerce — 1,399 members (gscc)",
                "Montgomery Regional Chamber of Commerce - AL — 1,383 members (montgomerychamberalabama)",
                "Saratoga County Chamber of Commerce — 1,379 members (saratogacounty)",
                "Greater Houston Women's Chamber of Commerce — 1,349 members (ghwcc)",
                "Salt Lake Chamber — 1,347 members (slchamber)",
                "Stuart Martin County Chamber of Commerce — 1,329 members (stuartmartin)",
                "Chandler Chamber of Commerce — 1,302 members (chandlerchamber)",
                "Lakeview Roscoe Village Chamber of Commerce — 1,298 members (lakeviewchamber)",
                "Port Washington Chamber of Commerce - NY — 1,267 members (portwashingtonny)",
                "Bozeman Area Chamber of Commerce — 1,262 members (bozemanchamber)",
                "The Woodlands Area Chamber of Commerce — 1,259 members (woodlandschambertx)",
                "Fort Smith Chamber of Commerce — 1,247 members (fortsmithchamber)",
                "Fort Worth Chamber of Commerce — 1,228 members (fortworthchamber)",
                "Greater Madison Chamber of Commerce — 1,221 members (greatermadisonchamber)",
                "Rhode Island Hispanic Chamber of Commerce — 1,219 members (rihispanicchamberri)",
                "Bismarck Mandan Chamber EDC — 1,212 members (bismarckmandan)",
                "Abilene Chamber of Commerce — 1,203 members (abilenechamber)",
                "Chamber of Commerce of the Palm Beaches — 1,201 members (palmbeaches)",
                "Community Development Foundation (Tupelo Chamber of Commerce) — 1,198 members (cdfms)",
                "Monroe Chamber of Commerce — 1,198 members (monroe)",
                "Monroe Chamber of Commerce — 1,198 members (monroela)",
                "Tacoma-Pierce County Chamber — 1,195 members (tacomachamber)",
                "West Orange Chamber of Commerce — 1,174 members (wochamber)",
                "Minneapolis Regional Chamber — 1,161 members (minneapolischamber)",
                "Wilmington Chamber of Commerce — 1,147 members (wilmingtonnc)",
                "Greater Columbia Chamber of Commerce — 1,140 members (columbiasc)",
                "Greater Gainesville Chamber — 1,136 members (gainesvillechamber)",
                "Waukesha County Business Alliance — 1,130 members (waukesha)",
                "Eastern Shore Chamber of Commerce — 1,126 members (eschamber)",
                "Builders Exchange of Kentucky — 1,118 members (bxkentucky)",
                "Fountain Hills Chamber of Commerce — 1,108 members (fountainhillschamber)",
                "Long Beach Area Chamber of Commerce — 1,108 members (lbchamber)",
                "Chamber Southwest Louisiana, Inc — 1,108 members (swlachamber)",
                "Rankin County Chamber of Commerce — 1,085 members (rankinchamber)",
                "Dutchess County Regional Chamber of Commerce — 1,082 members (dutchesscountyregionalchamberny)",
                "Sarpy Chamber — 1,075 members (sarpyne)",
                "York County Economic Alliance — 1,075 members (yorkchamber)",
                "Williamsport/Lycoming Chamber of Commerce — 1,074 members (williamsportlycoming)",
                "Georgetown Chamber of Commerce — 1,071 members (georgetownchambertx)",
                "Richland Area Chamber & Economic Development — 1,067 members (richlandareachamber)",
                "New Castle County Chamber of Commerce — 1,061 members (nccccde)",
                "Greater Phoenix Chamber of Commerce - Political Action Committee (PAC) — 1,052 members (phoenixchamberpac)",
                "Burnaby Board of Trade — 1,049 members (burnabyboardoftrade)",
                "Salem Area Chamber of Commerce — 1,045 members (salemchamber)",
                "Loudoun County Chamber of Commerce — 1,042 members (loudounchamber)",
                "Chamber of Commerce Hawaii — 1,037 members (cochawaii)",
                "South Lake Chamber of Commerce — 1,035 members (southlakechamberfl)",
                "Greater Brighton Area Chamber of Commerce — 1,027 members (brightoncocmi)",
                "West Des Moines Chamber of Commerce — 1,021 members (wdmchamberia)",
                "Huron Chamber & Visitors Bureau — 1,014 members (huronchamber)",
                "St. Tammany Chamber of Commerce — 1,014 members (sttammanychamber)",
                "Greater Cheyenne Chamber of Commerce — 1,002 members (cheyennechamber)",
                "Flint & Genesee Chamber — 989 members (flintandgeneseemi)",
                "Ogden-Weber Chamber of Commerce — 989 members (ogdenweberut)",
                "Seminole County Chamber — 984 members (seminolebusiness)",
                "Greater Charlottetown Area Chamber of Commerce — 962 members (charlottetownchamber)",
                "Malibu Pacific Palisades Chamber of Commerce — 962 members (malibuca)",
                "Midland Chamber of Commerce — 960 members (midlandtxchamber)",
                "Greater Fort Walton Beach Chamber of Commerce — 950 members (greaterfortwaltonbeach)",
                "Benton Area Chamber of Commerce — 949 members (bentonchamber)",
                "Macomb County Chamber of Commerce — 948 members (macombcountychamber)",
                "African American Chamber of Commerce of Wisconsin — 944 members (aaccwisconsin)",
                "Traverse Connect — 944 members (tcchamber)",
                "Traverse Connect — 944 members (traverseconnect)",
                "Greater Greenville Chamber — 941 members (greenvillenc)",
                "London Chamber of Commerce — 941 members (londonchamber)",
                "Athens Area Chamber of Commerce — 940 members (athensga)",
                "Columbia County Chamber of Commerce — 937 members (columbiacountychamber)",
                "Jones County Chamber of Commerce — 936 members (edajones)",
                "One SouthCoast Chamber — 930 members (onesouthcoast)",
                "Oakland Metropolitan Chamber of Commerce — 925 members (oaklandchamber)",
                "Greater Beaumont Chamber of Commerce — 923 members (beaumont)",
                "Henderson County Chamber of Commerce — 921 members (hendersoncountync)",
                "Grapevine Chamber of Commerce — 916 members (grapevine)",
                "Kearney Area Chamber of Commerce — 916 members (kearneycoc)",
                "Granbury Chamber of Commerce — 915 members (granbury)",
                "Greater Reading Chamber Alliance — 914 members (greaterreadingchamber)",
                "Aurora Chamber of Commerce — 910 members (aurorachamber)",
                "Greater Cape Ann Chamber of Commerce — 910 members (capeannma)",
                "Lima/Allen County Chamber of Commerce — 906 members (limachamber)",
                "Urbandale Chamber of Commerce — 906 members (uniquelyurbandale)",
                "Cullman Area Chamber of Commerce — 903 members (cullmanchamber)",
                "Dublin Chamber of Commerce — 898 members (dublinchamber)",
                "Bentonville Area Chamber of Commerce — 896 members (bbvchamber)",
                "The Greater Coachella Valley Chamber of Commerce — 896 members (gcvcc)",
                "Fort Worth Hispanic Chamber of Commerce — 894 members (fwhcc)",
                "Cape Girardeau Area Chamber of Commerce — 890 members (capechamber)",
                "Cy-Fair Houston Chamber of Commerce — 888 members (cyfairdev)",
                "Cy-Fair Houston Chamber of Commerce — 888 members (cyfairhoustonchamber)",
                "Cape May County Chamber of Commerce — 887 members (capemaycountychamber)",
                "Galveston Regional Chamber of Commerce — 885 members (galvestonchamber)",
                "Ulster County Regional Chamber Of Commerce — 880 members (ulsterchamber)",
                "Tampa Bay Beaches Chamber of Commerce — 878 members (tampabaybeachesfl)",
                "Adirondack Regional Chamber of Commerce — 875 members (adirondackchamber)",
                "Lynchburg Regional Business Alliance — 874 members (lynchburgchamber)",
                "The Chamber Collaborative of Greater Portsmouth — 874 members (portsmouthchamber)",
                "Fredericksburg Regional Chamber of Commerce — 871 members (fredericksburgregionalchamber)",
                "South Baldwin Chamber of Commerce — 869 members (southbaldwinal)",
                "St. Cloud Area Chamber of Commerce — 867 members (stcloudareachambermn)",
                "Rockwall Area Chamber of Commerce — 866 members (rockwallchamber)",
                "Blairsville - Union County Chamber of Commerce — 863 members (blairsvilleunionchamber)",
                "The Chamber of Catawba County — 863 members (catawbachamber)",
                "Sheridan County Chamber of Commerce — 863 members (sheridanwyomingchamber)",
                "Henry County Chamber of Commerce — 858 members (henrycounty)",
                "Top of Virginia Regional Chamber — 856 members (regionalchamberva)",
                "Greater Tomball Area Chamber of Commerce — 853 members (tomballchamber)",
                "Englewood Florida Chamber of Commerce — 845 members (englewoodchamberfl)",
                "Cookeville-Putnam County Chamber of Commerce — 843 members (cookevillechamber)",
                "The Chamber, Lawrence, Kansas — 839 members (lawrencechamber)",
                "Westerville Area Chamber — 835 members (westervillechamber)",
                "San Antonio Hispanic Chamber of Commerce — 829 members (sahcc-dev)",
                "Ann Arbor / Ypsilanti Regional Chamber — 825 members (a2ychamber)",
                "Newnan-Coweta Chamber — 824 members (newnancowetachamber)",
                "Farragut West Knox Chamber of Commerce — 819 members (farragutchamber)",
                "Huntington Beach Chamber of Commerce — 816 members (hbchamber)",
                "Rowan County Chamber of Commerce — 810 members (rowancountychamber)",
                "Bethany-Fenwick Area Chamber of Commerce — 805 members (bethanyfenwick)",
                "Georgetown County Chamber of Commerce — 805 members (georgetownchamber)",
                "Ocean City, Maryland Chamber of Commerce — 805 members (oceancitychamber)",
                "Central Louisiana Regional Chamber of Commerce — 803 members (cenlachamber)",
                "Springfield Area Chamber of Commerce — 800 members (springfield-chamber)",
                "Walton Area Chamber of Commerce — 800 members (waltonareachamber)",
                "Oxford Lafayette Chamber of Commerce — 798 members (oxfordms)",
                "Metro SA Chamber — 797 members (northsachamber)",
                "Fayette Chamber of Commerce — 794 members (fayettecountychamber)",
                "Winter Park Chamber of Commerce — 789 members (winterpark)",
                "Cleburne Chamber of Commerce — 786 members (cleburnechambertx)",
                "Scottsdale Area Chamber of Commerce — 783 members (scottsdalechamber)",
                "Thunder Bay Chamber of Commerce — 781 members (tbchamberon)",
                "Howard County Chamber of Commerce — 780 members (howardchambermd)",
                "St. Albert and District Chamber of Commerce — 780 members (stalbert)",
                "Heart of the Valley Chamber of Commerce — 777 members (heartofthevalleychamber)",
                "Montgomery County Chamber of Commerce — 777 members (montgomerychamber)",
                "Anchorage Chamber of Commerce — 776 members (anchoragechamber)",
                "Palm Beach North Chamber of Commerce, Inc. — 776 members (npbchamber)",
                "Amherst Chamber of Commerce — 775 members (amherstny)",
                "Lindale Area Chamber of Commerce — 771 members (lindaletx)",
                "St. George Area Chamber of Commerce — 769 members (stgeorgechamber)",
                "Petoskey Regional Chamber of Commerce — 765 members (petoskey)",
                "Nantucket Island Chamber of Commerce — 764 members (nantucketchamberma)",
                "Rockport-Fulton Chamber of Commerce — 761 members (rockport-fulton)",
                "Robins Regional Chamber — 761 members (warnerrobins)",
                "LaGrange-Troup County Chamber of Commerce — 760 members (lagrangechamber)",
                "Meridian Chamber of Commerce, Inc. — 760 members (meridianchamber)",
                "Champaign County Chamber of Commerce - IL — 756 members (champaigncountyil)",
                "Greater East Pasco Chamber of Commerce — 755 members (zephyrhillschamberfl)",
                "Twin Falls Area Chamber of Commerce — 754 members (twinfallschamber)",
                "Washington County Chamber of Commerce — 754 members (washingtoncounty)",
                "Greater Conejo Valley Chamber of Commerce — 753 members (conejochamber)",
                "Greater Delray Beach Chamber of Commerce — 751 members (delraybeach)",
                "Red Deer and District Chamber of Commerce — 750 members (reddeerchamberab)",
                "Barrie Chamber of Commerce — 749 members (barriechamber)",
                "Chesterfield Regional Chamber — 742 members (chesterfieldmochamber)",
                "Grove City Area Chamber of Commerce — 742 members (grovecitychamber)",
                "Sheboygan County Chamber of Commerce — 742 members (sheboygan)",
                "Sheboygan County Chamber of Commerce — 742 members (sheboygancoc-dev)",
                "Roanoke Regional Chamber — 739 members (roanokechamber)",
                "Carlisle Area Chamber of Commerce — 738 members (carlislechamber)",
                "Paso Robles and Templeton Chamber of Commerce — 738 members (pasorobleschamber)",
                "Lufkin/Angelina County Chamber of Commerce — 737 members (lufkinangelinacountychamber)",
                "North Port Area Chamber of Commerce — 735 members (northportchamber)",
                "Joliet Region Chamber of Commerce & Industry — 734 members (jolietchamber)",
                "Greater Spokane Valley Chamber of Commerce — 734 members (spokanevalleychamber)",
                "Greater High Desert Chamber of Commerce — 724 members (ghdcc)",
                "Whistler Chamber — 724 members (whistlerchamber)",
                "Cumberland Valley Business Alliance — 720 members (chambersburg)",
                "Mt. Juliet Chamber of Commerce — 720 members (mtjulietchamber)",
                "Texas City-La Marque Chamber — 720 members (tclmchamber)",
                "Shoals Chamber of Commerce — 719 members (shoalschamberal)",
                "Rochester Regional Chamber of Commerce — 715 members (rochesterregionalchamberofcommerce)",
                "Kingsport Chamber — 714 members (kingsportchamber)",
                "Bangor Region Chamber of Commerce — 710 members (bangorregionchamber)",
                "Hoover Area Chamber of Commerce — 710 members (hooverchamberal)",
                "Greater Vernon Chamber of Commerce — 708 members (vernonchamberbc)",
                "Albany Area Chamber of Commerce — 701 members (albanyga)",
                "Destin Chamber — 700 members (destinchamber)",
                "Tompkins Chamber — 699 members (tompkinschamber)",
                "Columbus Area Chamber of Commerce — 698 members (columbusareachamber)",
                "Miami Beach Chamber of Commerce — 698 members (miamibeachchamber)",
                "Vestavia Hills Chamber of Commerce — 698 members (vestaviahills)",
                "Burke County Chamber of Commerce — 696 members (burkecounty)",
                "Stephenville Chamber of Commerce — 696 members (stephenvilletexas)",
                "Wake Forest Area Chamber of Commerce — 695 members (wakeforestchamber)",
                "Greater Binghamton Chamber of Commerce — 694 members (greaterbinghamtonny)",
                "Ottawa Board of Trade — 688 members (ottawaboardoftrade)",
                "Greater Stockton Chamber of Commerce — 688 members (stocktonchamber)",
                "Beverly Hills Chamber of Commerce — 685 members (beverlyhillschamber)"
              ]
            },
            "default": []
          },
          "chamberHosts": {
            "title": "Specific chambers — paste a host or a directory URL",
            "type": "array",
            "description": "Any ChamberMaster chamber, bundled or not. Accepts the short host ('kcchamber'), the full host ('kcchamber.chambermaster.com') or a pasted directory URL ('https://kcchamber.chambermaster.com/list') — all three work. To find yours: open your chamber's Member Directory; if the address bar reads *.chambermaster.com, the first label is the host. Overrides the preset. CLEAR THIS FIELD to sweep the preset instead.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "enrichDetails": {
            "title": "Open each member's detail page (needed for business category + website)",
            "type": "boolean",
            "description": "Strongly recommended, and on by default. The chamber's listing page carries phone and postal address but NOT the business category, and it shows a website for only 8.5% of members (41,219 links across all 482,110 rows). Opening each member's own detail page takes category from 0.0% to 96.0% fill and website from 12.8% to 86.3%, measured on a 1,000-row run across 40 chambers. Turning it off makes a run roughly 2x faster and ships an empty category column. The price per member is identical either way — this only trades run time for fields.",
            "default": true
          },
          "categoryContains": {
            "title": "Category / keyword filter",
            "type": "array",
            "description": "Keep only members whose business category, name or description contains one of these words — case-insensitive substring, any one match keeps the row. Real chamber category strings look like 'Insurance', 'Roofing Contractors', 'Accountants — Certified Public'. Empty = every member. Needs 'Open each member's detail page' on, otherwise there is no category to match against and only name/description are searched.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "states": {
            "title": "States / provinces",
            "type": "array",
            "description": "Keep only members whose published address is in these states or provinces. Empty = everywhere. Note that a chamber's members are NOT all in one state: big-city chambers carry out-of-state corporate members (Kansas City's list includes a Southwest Airlines address in Dallas), so this filter is how you get a tight geography. Matched against what the chamber publishes, with full state and province names ('Illinois', 'British Columbia') mapped back to their code first. Measured state fill is 96-98%, and about 3% of rows publish something that is not a state at all (a country, or a stray postal code) — both are dropped by this filter.",
            "items": {
              "type": "string",
              "enum": [
                "AL",
                "AK",
                "AZ",
                "AR",
                "CA",
                "CO",
                "CT",
                "DE",
                "DC",
                "FL",
                "GA",
                "HI",
                "ID",
                "IL",
                "IN",
                "IA",
                "KS",
                "KY",
                "LA",
                "ME",
                "MD",
                "MA",
                "MI",
                "MN",
                "MS",
                "MO",
                "MT",
                "NE",
                "NV",
                "NH",
                "NJ",
                "NM",
                "NY",
                "NC",
                "ND",
                "OH",
                "OK",
                "OR",
                "PA",
                "RI",
                "SC",
                "SD",
                "TN",
                "TX",
                "UT",
                "VT",
                "VA",
                "WA",
                "WV",
                "WI",
                "WY",
                "PR",
                "AB",
                "BC",
                "MB",
                "NB",
                "NL",
                "NS",
                "NT",
                "NU",
                "ON",
                "PE",
                "QC",
                "SK",
                "YT"
              ],
              "enumTitles": [
                "Alabama (AL)",
                "Alaska (AK)",
                "Arizona (AZ)",
                "Arkansas (AR)",
                "California (CA)",
                "Colorado (CO)",
                "Connecticut (CT)",
                "Delaware (DE)",
                "District of Columbia (DC)",
                "Florida (FL)",
                "Georgia (GA)",
                "Hawaii (HI)",
                "Idaho (ID)",
                "Illinois (IL)",
                "Indiana (IN)",
                "Iowa (IA)",
                "Kansas (KS)",
                "Kentucky (KY)",
                "Louisiana (LA)",
                "Maine (ME)",
                "Maryland (MD)",
                "Massachusetts (MA)",
                "Michigan (MI)",
                "Minnesota (MN)",
                "Mississippi (MS)",
                "Missouri (MO)",
                "Montana (MT)",
                "Nebraska (NE)",
                "Nevada (NV)",
                "New Hampshire (NH)",
                "New Jersey (NJ)",
                "New Mexico (NM)",
                "New York (NY)",
                "North Carolina (NC)",
                "North Dakota (ND)",
                "Ohio (OH)",
                "Oklahoma (OK)",
                "Oregon (OR)",
                "Pennsylvania (PA)",
                "Rhode Island (RI)",
                "South Carolina (SC)",
                "South Dakota (SD)",
                "Tennessee (TN)",
                "Texas (TX)",
                "Utah (UT)",
                "Vermont (VT)",
                "Virginia (VA)",
                "Washington (WA)",
                "West Virginia (WV)",
                "Wisconsin (WI)",
                "Wyoming (WY)",
                "Puerto Rico (PR)",
                "Alberta (AB)",
                "British Columbia (BC)",
                "Manitoba (MB)",
                "New Brunswick (NB)",
                "Newfoundland and Labrador (NL)",
                "Nova Scotia (NS)",
                "Northwest Territories (NT)",
                "Nunavut (NU)",
                "Ontario (ON)",
                "Prince Edward Island (PE)",
                "Quebec (QC)",
                "Saskatchewan (SK)",
                "Yukon (YT)"
              ]
            },
            "default": []
          },
          "cities": {
            "title": "Cities",
            "type": "array",
            "description": "Keep only members in these cities. Free text because chambers publish city names in their own words — match is case-insensitive but otherwise exact, so 'Kansas City' works and 'KC' does not. Empty = every city. City fill is 98.1%; a member with no published city is dropped by this filter.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "withPhoneOnly": {
            "title": "Only members that publish a phone number",
            "type": "boolean",
            "description": "Drop members with no published phone. Measured phone fill is 96.7% with detail pages on, so this normally removes about 1 row in 30 — it is a cheap safety net for a dialling list, not a big filter.",
            "default": false
          },
          "withWebsiteOnly": {
            "title": "Only members that publish a website",
            "type": "boolean",
            "description": "Drop members with no published website. Website fill is 86.3% with detail pages on and 12.8% with them off, so leave detail pages ON if you use this. Flip the logic for the opposite pitch: leaving this OFF is how web agencies find the ~14% of chamber members with no website at all.",
            "default": false
          },
          "maxItems": {
            "title": "Max members returned (your hard cost cap)",
            "minimum": 1,
            "type": "integer",
            "description": "Hard cap on the number of member rows returned — and therefore on what you are charged. Filters run across the WHOLE directory first, so this never cuts a search short: asking for 40 insurance members from Memphis still walks all 1,537 members to find the 33 that match. 100 is the default and a cheap first look ($0.40). 200 = $0.80. 1,000 = $4. All 927 chambers end to end = 482,110 members = about $1,928.",
            "default": 100
          },
          "maxMembersPerHost": {
            "title": "Max members per chamber",
            "minimum": 0,
            "type": "integer",
            "description": "Spread the budget across many chambers instead of exhausting the first one: 25 with a 1,000 cap gives you 25 members each from 40 chambers. 0 = no per-chamber limit, i.e. take one chamber to the end before moving on. Use it with a preset for a wide regional sample; leave it 0 when you want one chamber's complete roster.",
            "default": 0
          },
          "detailConcurrency": {
            "title": "Detail-page concurrency",
            "minimum": 1,
            "maximum": 16,
            "type": "integer",
            "description": "How many member detail pages are fetched in parallel, 1-16. 8 is the default and what every published measurement on this page was taken at. Lower it if you want to be gentler on one small chamber's site; raising it does not change the price, only the wall-clock time.",
            "default": 8
          },
          "proxyConfiguration": {
            "title": "Proxy",
            "type": "object",
            "description": "Not needed, and off by default. ChamberMaster serves plain server-rendered HTML with no anti-bot: measured 1,033/1,034 hosts answered HTTP 200 on a direct connection, 927/927 again on a same-day whole-corpus re-fetch, and 1,536/1,537 requests succeeded through Apify's datacenter proxy (99.9%). Proxying a clean host only adds a way to fail, so set one here only if you specifically need a fixed egress IP.",
            "default": {}
          }
        }
      },
      "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
                  }
                }
              },
              "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}