Discover/Wheresweed API
live

Wheresweed APIwheresweed.com

Access Washington DC cannabis dispensary listings, product menus, active deals, reviews, and search via the Where's Weed API. 8 endpoints with paginated results.

This API takes change requests — .
Endpoint health
verified 2h ago
list_businesses
get_business_detail
get_business_menu
list_deals
get_business_deals
6/8 passing latest checkself-healing
Endpoints
8
Updated
3h ago

What is the Wheresweed API?

The Where's Weed API exposes 8 endpoints covering cannabis dispensary and delivery service data for Washington DC, including business profiles, product menus, active deals, and customer reviews. The get_business_menu endpoint returns per-product fields like name, brand, prices, strain info, and category, while list_deals filters promotions by city slug and product category with expiration and claim data included in every response.

Try it
City slug for filtering listings (e.g. 'washington-dc').
Maximum number of results to return per page.
Number of results to skip for pagination.
Filter by business type. Omitted returns all types.
api.parse.bot/scraper/f7e8c0b5-3386-4c45-96c7-09107da32b9c/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/f7e8c0b5-3386-4c45-96c7-09107da32b9c/list_businesses?city=washington-dc&limit=3&offset=0&business_type=dispensary' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace wheresweed-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: wheresweed_com_api SDK — bounded, re-runnable; every call capped."""
from parse_apis.wheresweed_com_api import WheresWeed, BusinessType, BusinessNotFound

client = WheresWeed()

# List DC delivery services — limit= caps TOTAL items fetched.
for biz in client.businesses.list(city="washington-dc", business_type=BusinessType.DELIVERY, limit=3):
    print(biz.name, biz.rating, biz.is_open)

# Drill-down: take ONE business and explore its sub-resources.
biz = client.businesses.list(city="washington-dc", limit=1).first()

# Menu products for the business
for product in biz.menu.list(limit=3):
    print(product.name, product.category, product.recreational)

# Active deals for the business
for deal in biz.deals.list(limit=3):
    print(deal.title, deal.display_price, deal.claim_count)

# Reviews for the business
for review in biz.reviews.list(limit=2):
    print(review.reviewer_display_name, review.rating, review.text)

# Full business detail via .get()
try:
    full = client.businesses.get(slug=biz.slug)
    print(full.name, full.review_count, full.source_url)
except BusinessNotFound as e:
    print("not found:", e.slug)

# Search across the site
result = client.search_results.search(query="edibles")
print(result.counts.businesses, result.counts.strains)
for cat in result.categories[:2]:
    print(cat.name, cat.count)

print("exercised: businesses.list / businesses.get / menu.list / deals.list / reviews.list / search_results.search")
All endpoints · 8 totalmissing one? ·

List dispensaries and delivery services. Returns paginated business listings with rating, location, delivery info, and open status. Results are ordered by featured level and relevance.

Input
ParamTypeDescription
citystringCity slug for filtering listings (e.g. 'washington-dc').
limitintegerMaximum number of results to return per page.
offsetintegerNumber of results to skip for pagination.
business_typestringFilter by business type. Omitted returns all types.
Response
{
  "type": "object",
  "fields": {
    "limit": "current limit",
    "offset": "current offset",
    "businesses": "array of business listing summaries with id, name, slug, type, rating, location, delivery info",
    "total_count": "total number of matching businesses"
  },
  "sample": {
    "data": {
      "limit": 3,
      "offset": 0,
      "businesses": [
        {
          "id": 160256,
          "url": "/washington-dc/marijuana-dispensaries/high-demand-2",
          "city": "Washington DC",
          "name": "High Demand DC Weed Dispensary & Delivery",
          "slug": "high-demand-2",
          "state": "DC",
          "rating": 0,
          "claimed": true,
          "is_open": true,
          "featured": null,
          "latitude": 38.882,
          "logo_url": "https://wheresweed.com/listing_images/220x220/e2f4d7be98c0c566683449dc1cecfec6.png",
          "position": 0,
          "verified": true,
          "longitude": -76.991,
          "fetched_at": "2026-07-23T14:54:33+00:00",
          "has_pickup": false,
          "source_url": "https://wheresweed.com/washington-dc/marijuana-dispensaries/high-demand-2",
          "deals_count": 0,
          "has_medical": false,
          "has_delivery": true,
          "review_count": 0,
          "business_type": "dispensary",
          "hours_summary": "Open until 9pm",
          "product_count": null,
          "distance_miles": 2.99,
          "featured_level": null,
          "online_ordering": true,
          "delivery_minimum": 0,
          "has_recreational": true,
          "delivery_starting_fee": null,
          "free_delivery_threshold": null
        }
      ],
      "total_count": 57
    },
    "status": "success"
  }
}

About the Wheresweed API

Business Listings and Profiles

The list_businesses endpoint returns paginated dispensary and delivery service summaries filtered by city, business_type, limit, and offset. Each record includes id, name, slug, type, rating, location fields, delivery info, and open status. Slugs from this response feed directly into detail endpoints. The get_business_detail endpoint expands a single listing to its full profile: weekly hours (weekday, open_time, close_time), an address object with latitude/longitude, phone, is_open status, rating, and an HTML about field. Active deals attached to that business are also embedded in the detail response.

Menus, Categories, and Deals

The get_business_menu endpoint returns a paginated product list for a given slug. Each product carries id, name, brand, prices, strain info, and category. The list_categories endpoint provides the category tree for a business — each category object includes id, name, items_count, and a subcategories array — useful for filtering before fetching menu pages. For deal discovery, list_deals accepts a city slug and a product_category filter (e.g. bud, edible, concentrate) and returns deal objects with title, price, expiration, and linked business info. The get_business_deals endpoint narrows deal results to a single business and adds claim_count per deal.

Reviews and Search

The list_reviews endpoint returns review text, per-category rating breakdowns, reviewer info, and vote counts for a given business slug. The response also surfaces overall_rating and total_review_count, though the number of reviews actually returned may be lower due to server-side limits. The search_site endpoint accepts a free-text query and returns grouped results across businesses, locations, menu items, and strains, with a counts object showing match totals per category and a fetched_at ISO timestamp.

Coverage and Scope

All endpoints are oriented toward the Washington DC market as indexed on Where's Weed. Pagination on list endpoints is controlled via limit and offset parameters. Business slugs are the primary key linking endpoints together — retrieve them once from list_businesses or search_site, then pass them into detail, menu, category, deal, and review endpoints.

Reliability & maintenanceVerified

The Wheresweed API is a managed, monitored endpoint for wheresweed.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when wheresweed.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official wheresweed.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
2h ago
Latest check
6/8 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Build a DC cannabis dispensary finder that surfaces open status, ratings, and delivery availability from list_businesses.
  • Aggregate product menus across multiple dispensaries using get_business_menu to compare pricing and strain info.
  • Send deal alert notifications by polling list_deals filtered by product_category for categories like edible or concentrate.
  • Populate a review dashboard by pulling list_reviews data including per-category rating breakdowns and vote counts.
  • Create a strain or product search tool using search_site to return grouped results across menus and strains.
  • Map DC dispensaries with geocoordinates by extracting latitude and longitude from get_business_detail address objects.
  • Track deal claim counts and expiration dates per business using get_business_deals for promotional analytics.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Where's Weed have an official developer API?+
Where's Weed does not publish a public developer API or documented REST interface for third-party access.
What does `list_reviews` return and are all reviews always included?+
The endpoint returns review text, per-category rating scores, reviewer info, and upvote/downvote counts for a business. The response includes returned_count and total_review_count separately — the total may exceed the number actually returned in a single response due to server-side caps on review volume.
Can I filter `list_businesses` by location beyond a city slug?+
The list_businesses endpoint accepts a city slug (e.g. washington-dc) and business_type as filters, but does not currently support radius-based or ZIP-code filtering. Coordinate data is available per business in get_business_detail once you have a slug. You can fork the API on Parse and revise it to add a geo-filtering endpoint if that level of spatial querying is needed.
Does the API cover cannabis markets outside Washington DC?+
The current endpoints are focused on the Washington DC listings indexed on Where's Weed. Other cities that Where's Weed covers — such as Los Angeles or Denver — are not currently included in this API's scope. You can fork the API on Parse and revise it to target additional city slugs or broader geographic coverage.
Does the API expose dispensary license numbers or compliance data?+
No license or regulatory compliance fields appear in the current endpoint responses. The business detail covers address, hours, phone, ratings, deals, and an HTML description. You can fork the API on Parse and revise it to add a dedicated endpoint if that data becomes available on the source site.
Page content last updated . Spec covers 8 endpoints from wheresweed.com.
Related APIs in MarketplaceSee all →
leafly.com API
Browse and search Leafly's cannabis catalog. Look up strains by effect, flavor, terpene, or medical use. Find dispensaries near any location, explore their menus and product details, and search across strains, brands, dispensaries, and articles.
fresha.com API
Search for beauty and wellness businesses, view detailed venue information like services and pricing, and browse the help center's knowledge base articles and categories. Find exactly what you need across Fresha's marketplace with powerful filtering and category options.
whop.com API
Search and discover verified companies and popular businesses across the Whop marketplace by category, while browsing public forum discussions and exploring the business classification taxonomy. Find relevant business categories and access curated discover sections to identify opportunities within specific market segments.
cigarsinternational.com API
Search and browse cigars by brand, category, and daily deals while reading customer reviews to find the perfect smoke. Discover store locations and explore comprehensive product information across Cigars International's entire catalog.
bizbuysell.com API
Search for businesses available for sale across multiple categories and view detailed information about specific listings on BizBuySell.com. Browse business categories to explore different industries and find opportunities that match your investment interests.
findmeglutenfree.com API
Search for gluten-free friendly restaurants, cafes, chains, and airports worldwide, and get detailed information about their menus, celiac-friendly features, and ratings. Find nearby dining options by location, discover the best-rated chains, and browse businesses organized by city, state, or country.
yellowpages.com API
Search and retrieve business listings, contact info, hours, categories, and customer reviews from YellowPages.com. Browse by category or location across the US.
canada.businessesforsale.com API
Search and browse businesses for sale and franchise opportunities across Canada, retrieving detailed listing information to find investment opportunities that match your interests. Explore comprehensive data on available businesses and franchises to make informed decisions about potential acquisitions.