openapi: 3.0.3 info: title: Wine-Searcher market-price wine-check API description: The Wine-Searcher API allows developers to plug Wine-Searcher wine data directly into websites and applications. Typical consumers include wine apps, blogs, market research companies, wine investment platforms, valuations, and insurance services. The API provides wine pricing data (average, min, max), critic scores, merchant listings, grape variety, region, and available vintages for any wine in the Wine-Searcher database. Requests are submitted using HTTP GET with query parameters. Responses can be returned in XML (default) or JSON. version: 1.0.0 contact: name: Wine-Searcher Developer Support url: https://www.wine-searcher.com/trade/ws-api termsOfService: https://www.wine-searcher.com/trade/terms servers: - url: https://www.wine-searcher.com/ws_api.php description: Wine-Searcher API tags: - name: wine-check description: Wine price check and data lookup paths: /wine-check: get: operationId: getWineCheck summary: Get Wine Check Data description: Returns aggregated wine data for a given wine name and optional vintage. Provides the Wine-Searcher aggregated critic score, grape variety, producer, region, min/max/average price, and alcohol by volume. This is the primary endpoint for wine valuation and data enrichment use cases. tags: - wine-check parameters: - name: api_key in: query required: true description: Your Wine-Searcher API key schema: type: string - name: winename in: query required: true description: Name of the wine to look up (URL-encoded, e.g., haut+brion) schema: type: string - name: vintage in: query required: false description: Wine vintage year (4-digit year or 'NV' for non-vintage) schema: type: string - name: currencycode in: query required: false description: 'ISO 4217 currency code for price results (default: USD)' schema: type: string default: USD - name: location in: query required: false description: Filter results by country code (e.g., USA, GBR) schema: type: string - name: state in: query required: false description: Filter results by US state code (e.g., CA, NY) schema: type: string - name: offer_type in: query required: false description: Filter by offer type (R=retail, A=auction, B=both) schema: type: string enum: - R - A - B - name: format in: query required: false description: Response format (json or xml, default is xml) schema: type: string enum: - json - xml default: json responses: '200': description: Wine check results content: application/json: schema: $ref: '#/components/schemas/WineCheckResponse' application/xml: schema: $ref: '#/components/schemas/WineCheckResponse' components: schemas: WineCheckResponse: type: object description: Response from the Wine Check API endpoint properties: status: type: integer description: 'API status code: 0=Success, 1=No wines found, 2=Input error, 3=Server error, 4=Invalid access code, 5=Exceeded limit, 6=Access denied, 7=Subscription ended, 8=Multiple wines matched, 9=Nothing found, 10=Cannot access data, 99=Unknown error' enum: - 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9 - 10 - 99 message: type: string description: Status message describing the result wine: $ref: '#/components/schemas/Wine' Wine: type: object description: Wine data with aggregated pricing and details properties: name: type: string description: Full wine name as known by Wine-Searcher vintage: type: string description: Vintage year or NV (non-vintage) producer: type: string description: Wine producer/winery name region: type: string description: Wine production region country: type: string description: Production country grape: type: string description: Primary grape variety or blend alcohol_by_volume: type: number format: float description: Alcohol by volume percentage score: type: number format: float description: Wine-Searcher aggregated critic score (0-100) price_average: type: number format: float description: Average retail price across all listings price_min: type: number format: float description: Minimum retail price across all listings price_max: type: number format: float description: Maximum retail price across all listings currency: type: string description: Currency code for the price values listing_count: type: integer description: Total number of merchant listings