Free Cocktail API Search API
Search cocktails and ingredients.
Search cocktails and ingredients.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/free-cocktail-api:free-cocktail-api-search-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: TheCocktailDB Search API
version: '2.0'
description: Search and browse TheCocktailDB's crowd-sourced cocktail, drink, and ingredient data through the V2 API. V2 access and result limits depend on the supplied API key. Obtain access and review current terms on the official documentation page. API keys are deliberately not included in this specification.
termsOfService: https://www.thecocktaildb.com/terms_of_use.php
contact:
name: TheCocktailDB
url: https://www.thecocktaildb.com/contact.php
email: thedatadb@gmail.com
license:
name: TheCocktailDB Terms of Use
url: https://www.thecocktaildb.com/terms_of_use.php
servers:
- url: https://www.thecocktaildb.com/api/json/v2
description: Production API
tags:
- name: Search
paths:
/{apiKey}/search.php:
get:
tags:
- Search
summary: Search for cocktails or ingredients
description: Supply exactly one search parameter. Use `s` for a cocktail-name search, `f` for cocktails beginning with one letter, or `i` for an ingredient-name search.
operationId: searchV2
parameters:
- $ref: '#/components/parameters/ApiKey'
- $ref: '#/components/parameters/DrinkName'
- $ref: '#/components/parameters/FirstLetter'
- $ref: '#/components/parameters/IngredientName'
responses:
'200':
description: Matching cocktails or ingredients
content:
application/json:
schema:
oneOf:
- $ref: '#/components/schemas/DrinksResponse'
- $ref: '#/components/schemas/IngredientsResponse'
components:
schemas:
IngredientsResponse:
type: object
required:
- ingredients
properties:
ingredients:
type: array
items:
$ref: '#/components/schemas/Ingredient'
Drink:
allOf:
- $ref: '#/components/schemas/DrinkSummary'
- type: object
properties:
strDrinkAlternate:
type:
- string
- 'null'
strTags:
type:
- string
- 'null'
strVideo:
type:
- string
- 'null'
format: uri
strCategory:
type:
- string
- 'null'
strIBA:
type:
- string
- 'null'
strAlcoholic:
type:
- string
- 'null'
strGlass:
type:
- string
- 'null'
strInstructions:
type:
- string
- 'null'
strInstructionsES:
type:
- string
- 'null'
strInstructionsDE:
type:
- string
- 'null'
strInstructionsFR:
type:
- string
- 'null'
strInstructionsIT:
type:
- string
- 'null'
strInstructionsZH-HANS:
type:
- string
- 'null'
strInstructionsZH-HANT:
type:
- string
- 'null'
strImageSource:
type:
- string
- 'null'
strImageAttribution:
type:
- string
- 'null'
strCreativeCommonsConfirmed:
type: string
dateModified:
type:
- string
- 'null'
description: Database timestamp in `YYYY-MM-DD HH:MM:SS` format.
patternProperties:
^strIngredient([1-9]|1[0-5])$:
type:
- string
- 'null'
^strMeasure([1-9]|1[0-5])$:
type:
- string
- 'null'
DrinkSummary:
type: object
required:
- idDrink
- strDrink
properties:
idDrink:
type: string
description: Numeric identifier serialized as a string.
strDrink:
type: string
strDrinkThumb:
type:
- string
- 'null'
format: uri
DrinksResponse:
type: object
required:
- drinks
properties:
drinks:
oneOf:
- type: array
items:
$ref: '#/components/schemas/Drink'
- type: string
description: Legacy no-data message.
Ingredient:
type: object
properties:
idIngredient:
type: string
description: Numeric identifier serialized as a string.
strIngredient:
type:
- string
- 'null'
strDescription:
type:
- string
- 'null'
strType:
type:
- string
- 'null'
strAlcohol:
type:
- string
- 'null'
strABV:
oneOf:
- type: integer
- type: string
- type: 'null'
parameters:
FirstLetter:
name: f
in: query
required: false
description: First letter of a cocktail name.
schema:
type: string
pattern: ^[A-Za-z]$
IngredientName:
name: i
in: query
required: false
description: Full or partial ingredient name.
schema:
type: string
minLength: 1
DrinkName:
name: s
in: query
required: false
description: Full or partial cocktail name.
schema:
type: string
minLength: 1
ApiKey:
name: apiKey
in: path
required: true
description: Your TheCocktailDB API key. No key value is stored in this specification.
schema:
type: string
minLength: 1
externalDocs:
description: Official API documentation
url: https://www.thecocktaildb.com/documentation
x-provenance:
method: harvested
publisher: Free Cocktail API
source: https://www.thecocktaildb.com/api/spec/openapi-v2.yaml
note: split by refine-openapis from the provider's own published document, verified by fetch (openapi/_original/*.fetch.json);
stamped by stamp-openapi-provenance.py (roadmap#793)