Vignerons Independants APIvignerons-independants.com ↗
Search France's independent winemaker directory, list wine fairs, get exhibitor rosters, and retrieve full wine lists with appellations, medals, and grape varieties.
What is the Vignerons Independants API?
This API exposes 5 endpoints covering the Vignerons Indépendants de France directory and salon agenda. Use search_vignerons to query the full directory of independent French winemakers by region, cultural mode, grape variety, wine color, or competition medals, then retrieve a winemaker's complete wine list — including appellations, style, and medal history — via get_vigneron_wines. Separate endpoints cover the national fair calendar and per-fair exhibitor rosters.
curl -X GET 'https://api.parse.bot/scraper/af7e0de3-8ddf-4494-aacc-0b2784f460bb/search_vignerons?page=1&query=bordeaux&cultural_mode=vin_biologique__c' \ -H 'X-API-Key: $PARSE_API_KEY'
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 vignerons-independants-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: Vignerons Indépendants SDK — fairs, exhibitors, and winemaker wines."""
from parse_apis.vignerons_independants_com_api import (
VigneronsIndependants,
WineRegion,
CulturalMode,
InputNotFound,
)
client = VigneronsIndependants()
# List upcoming wine fairs, capped at 3.
for fair_summary in client.fair_summaries.list(limit=3):
print(fair_summary.name, "|", fair_summary.start_date_text, "-", fair_summary.end_date_text)
# Drill into the first fair's full details.
fair_summary = client.fair_summaries.list(limit=1).first()
if fair_summary is not None:
fair = fair_summary.details()
print(f"\n{fair.name} ({fair.edition})")
print(f" Venue: {fair.venue_name}, {fair.venue_address}")
print(f" Dates: {fair.start_date} → {fair.end_date}")
print(f" Exhibitors: {fair.exhibitor_count}")
for hours in fair.opening_hours:
print(f" {hours}")
# Browse exhibitors at this fair, filtered by region.
for exhibitor in fair.exhibitors.list(wine_region=WineRegion.BORDEAUX, limit=5):
print(f" Stand {exhibitor.stand_code}: {exhibitor.name} ({exhibitor.region})")
# Search vignerons and view one winemaker's full wine list.
vigneron = client.vignerons.search(
cultural_mode=CulturalMode.BIO,
wine_region=WineRegion.JURA,
limit=1,
).first()
if vigneron is not None:
profile = vigneron.details()
print(f"\n{profile.name} — {profile.cultural_mode}")
print(f" Owner: {profile.owner}")
print(f" Appellations: {', '.join(profile.appellations)}")
for wine in profile.wines[:3]:
medal_info = f", {wine.medal_count} medal(s)" if wine.medal_count else ""
print(f" {wine.producer_name} | {wine.appellation} | {wine.color} {wine.sweetness or ''}{medal_info}")
# Point-lookup a fair by slug, with error handling for unknown fairs.
try:
detail = client.fairs.get(fair_slug="lyon-halle-tony-garnier-2026")
print(f"\nDirect lookup: {detail.name}, services: {', '.join(detail.services[:3])}")
except InputNotFound:
print("Fair not found.")
print("\nexercised: fair_summaries.list / details / exhibitors.list / vignerons.search / vigneron.details / fairs.get")
Search the directory of Vignerons Indépendants de France. Returns paginated results of winemakers matching the specified filters. Each page returns up to 12 results. All filter parameters accept comma-separated values to select multiple options simultaneously. When no filters are provided, returns all vignerons in the directory.
| Param | Type | Description |
|---|---|---|
| page | integer | Page number for pagination. Each page contains up to 12 results. |
| query | string | Free-text search for domaine name, appellation, vigneron name, or wine. |
| activity | string | Winemaker activity/service filter. Comma-separated for multiple values. |
| wine_color | string | Wine color filter. Comma-separated for multiple values. |
| wine_region | string | Wine region filter. Comma-separated for multiple values. |
| cultural_mode | string | Culture/farming method filter. Comma-separated for multiple values. |
| grape_variety | string | Grape variety (cepage) filter. Comma-separated for multiple values. Examples: cabernet-sauvignon, merlot, chardonnay, pinot-noir. |
| won_competition | string | Competition/medal filter. Comma-separated for multiple values. |
| wine_characteristic | string | Wine characteristic/style filter. Comma-separated for multiple values. |
{
"type": "object",
"fields": {
"page": "integer current page number",
"has_more": "boolean indicating if more pages are available",
"vignerons": "array of vigneron objects with name, slug, url, owner, region, address, wine_count, labels, and medals",
"total_results": "integer total number of matching vignerons"
},
"sample": {
"data": {
"page": 1,
"has_more": true,
"vignerons": [
{
"url": "https://www.vignerons-independants.com/annuaire-des-vignerons-independants-de-france/domaine-belle",
"name": "DOMAINE BELLE",
"slug": "domaine-belle",
"owner": "Valentin BELLE, Philippe BELLE",
"labels": [
"Bio"
],
"medals": "3 Medailles",
"region": "Vallee du Rhone",
"address": "510 Rue De La Croix 26600 LARNAGE France",
"wine_count": 5
}
],
"total_results": 1162
},
"status": "success"
}
}About the Vignerons Independants API
Winemaker Directory Search
The search_vignerons endpoint queries the full Vignerons Indépendants de France directory with up to 12 results per page. Filter parameters include wine_region, wine_color, cultural_mode (e.g. organic, biodynamic), grape_variety, activity (tasting room, on-site sales, etc.), and won_competition. All filter parameters accept comma-separated values for multi-select queries. Each result in the vignerons array carries name, slug, owner, region, address, wine_count, labels, and medals. The total_results and has_more fields support full pagination traversal.
Individual Winemaker Wine List
get_vigneron_wines takes a slug from the directory search or from a fair's exhibitor list and returns every wine on that winemaker's profile in a single response. Each wine object includes wine_slug, producer_name, region, appellation, grape_varieties (as an array), color, style, and any medals won. The response also surfaces the winemaker's cultural_mode, appellations array, owner, and address.
Wine Fair Calendar and Exhibitors
list_fairs returns the upcoming Salons des Vins agenda in chronological order, 5 records per page, each with a fair_slug used to drive the two downstream endpoints. get_fair resolves a single salon into its ISO start_date/end_date, venue name, latitude/longitude, per-day opening hours in French, ticketing URL, and on-site services array. list_fair_exhibitors lists the winemakers present at a given fair, 12 per page, with each exhibitor's stand_code, appellations, region, and the slug needed to fetch their wines. Both wine_region and cultural_mode filters are available on the exhibitor list.
The Vignerons Independants API is a managed, monitored endpoint for vignerons-independants.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when vignerons-independants.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 vignerons-independants.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.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a filtered map of French organic and biodynamic domaines using
cultural_modeand venue coordinates fromget_fair. - Generate a medal-winner digest by querying
search_vigneronswithwon_competitionfilters and fetching each winemaker's detailed wine medals viaget_vigneron_wines. - Create a salon trip planner by combining
get_fairdates and location with the stand-by-stand exhibitor roster fromlist_fair_exhibitors. - Aggregate appellation coverage across the directory by paginating
search_vigneronsand collecting theappellationsfield fromget_vigneron_wines. - Track which winemakers attend multiple fairs by cross-referencing
slugvalues across severallist_fair_exhibitorspages. - Filter exhibitors at a specific salon by region and farming method to shortlist visits using
list_fair_exhibitorswine_regionandcultural_modeparams. - Compile grape-variety distribution across French independent winemakers using the
grape_varietyfilter onsearch_vignerons.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 200 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
| Team | $300/mo | 20,000 | 300 req/min |
| Company | $1,000/mo | 100,000 | 500 req/min |
Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does Vignerons Indépendants de France offer an official developer API?+
What does `get_vigneron_wines` return beyond a wine list?+
get_vigneron_wines returns the winemaker's full profile alongside each wine: owner, address, cultural_mode, and the appellations array. Each wine object includes appellation, grape_varieties as a typed array, color, style, and medals. A single call covers all wines for one winemaker — there is no further per-wine detail endpoint.How does pagination work across endpoints?+
search_vignerons and list_fair_exhibitors return up to 12 records per page; list_fairs returns up to 5. Each response includes has_more (boolean) and total_results (integer, or null for some fairs) so you can determine how many additional page requests are needed without over-fetching.Does the API expose historical fair editions or only the upcoming agenda?+
list_fairs reflects the site's current agenda, which covers upcoming and recently announced salons. Past editions are not currently returned. You can fork this API on Parse and revise it to add an endpoint targeting archived fair pages if historical data matters for your use case.Are winemaker contact details such as phone numbers or email addresses included?+
search_vignerons and get_vigneron_wines responses include address and owner name but do not return phone numbers or email addresses. You can fork this API on Parse and revise it to add those fields if the directory pages surface them.