Cocktail RecipeCocktail Recipe

Token Usage:1 per call

Cocktail is a simple tool for getting cocktail recipes. It returns the ingredients, instructions, and more of the cocktail.

This API provides reliable and fast access to cocktail recipe data through a simple REST interface. Built for developers who need consistent, high-quality results with minimal setup time.

To use this API, you need an API key. You can get one by creating a free account and visiting your dashboard.

View API in Directory

Endpoint

GET Request
GET https://api.apiverve.com/v1/cocktail

Code Examples

Here are examples of how to call this API in different programming languages:

cURL Request
curl -X GET \
  "https://api.apiverve.com/v1/cocktail?name=martini" \
  -H "X-API-Key: your_api_key_here"
JavaScript (Fetch API)
const response = await fetch('https://api.apiverve.com/v1/cocktail', {
  method: 'GET',
  headers: {
    'X-API-Key': 'your_api_key_here',
    'Content-Type': 'application/json'
  }
});

const data = await response.json();
console.log(data);
Python (Requests)
import requests

headers = {
    'X-API-Key': 'your_api_key_here',
    'Content-Type': 'application/json'
}

response = requests.get('https://api.apiverve.com/v1/cocktail', headers=headers)

data = response.json()
print(data)
Node.js (Native HTTPS)
const https = require('https');
const url = require('url');

const options = {
  method: 'GET',
  headers: {
    'X-API-Key': 'your_api_key_here',
    'Content-Type': 'application/json'
  }
};

const req = https.request('https://api.apiverve.com/v1/cocktail', options, (res) => {
  let data = '';
  res.on('data', (chunk) => data += chunk);
  res.on('end', () => console.log(JSON.parse(data)));
});

req.end();
PHP (cURL)
<?php

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, 'https://api.apiverve.com/v1/cocktail');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET');
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'X-API-Key: your_api_key_here',
    'Content-Type: application/json'
]);

$response = curl_exec($ch);
curl_close($ch);

$data = json_decode($response, true);
print_r($data);

?>
Go (net/http)
package main

import (
    "fmt"
    "io"
    "net/http"

)

func main() {
    req, _ := http.NewRequest("GET", "https://api.apiverve.com/v1/cocktail", nil)

    req.Header.Set("X-API-Key", "your_api_key_here")
    req.Header.Set("Content-Type", "application/json")

    client := &http.Client{}
    resp, err := client.Do(req)
    if err != nil {
        panic(err)
    }
    defer resp.Body.Close()

    body, _ := io.ReadAll(resp.Body)
    fmt.Println(string(body))
}
Ruby (Net::HTTP)
require 'net/http'
require 'json'

uri = URI('https://api.apiverve.com/v1/cocktail')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true

request = Net::HTTP::Get.new(uri)
request['X-API-Key'] = 'your_api_key_here'
request['Content-Type'] = 'application/json'

response = http.request(request)
puts JSON.pretty_generate(JSON.parse(response.body))

Authentication

This API requires authentication via API key. Include your API key in the request header:

Required Header
X-API-Key: your_api_key_here

Parameters

The following parameters are available for this API endpoint:

ParameterTypeRequiredLocationDescriptionExample
namestringNoqueryThe name of the cocktail for which you want to get the recipe (e.g., martini)martini

Response

The API returns responses in JSON, XML, and YAML formats:

Example Responses

JSON Response
200 OK
{
  "status": "ok",
  "error": null,
  "data": {
    "count": 5,
    "filteredOn": "name",
    "cocktails": [
      {
        "name": "Espresso Martini",
        "glass": "martini",
        "category": "After Dinner Cocktail",
        "ingredients": [
          {
            "unit": "cl",
            "amount": 5,
            "ingredient": "Vodka"
          },
          {
            "unit": "cl",
            "amount": 1,
            "ingredient": "Coffee liqueur",
            "label": "Kahlúa"
          },
          {
            "special": "Sugar syrup (according to individual preference of sweetness)"
          },
          {
            "special": "1 short strong Espresso"
          }
        ],
        "preparation": "Shake and strain into a chilled cocktail glass."
      },
      {
        "name": "Lemon Drop Martini",
        "glass": "martini",
        "category": "All Day Cocktail",
        "ingredients": [
          {
            "unit": "cl",
            "amount": 2.5,
            "ingredient": "Vodka",
            "label": "Citron Vodka"
          },
          {
            "unit": "cl",
            "amount": 2,
            "ingredient": "Triple Sec"
          },
          {
            "unit": "cl",
            "amount": 1.5,
            "ingredient": "Lemon juice"
          }
        ],
        "garnish": "Lemon slice",
        "preparation": "Shake and strain into a chilled cocktail glass rimmed with sugar."
      },
      {
        "name": "French Martini",
        "glass": "martini",
        "category": "Before Dinner Cocktail",
        "ingredients": [
          {
            "unit": "cl",
            "amount": 4.5,
            "ingredient": "Vodka"
          },
          {
            "unit": "cl",
            "amount": 1.5,
            "ingredient": "Raspberry liqueur"
          },
          {
            "unit": "cl",
            "amount": 1.5,
            "ingredient": "Pineapple juice"
          }
        ],
        "preparation": "Stir in mixing glass with ice cubes. Strain into chilled cocktail glass. Squeeze oil from lemon peel onto the drink."
      },
      {
        "name": "Dirty Martini",
        "glass": "martini",
        "category": "Before Dinner Cocktail",
        "ingredients": [
          {
            "unit": "cl",
            "amount": 6,
            "ingredient": "Vodka"
          },
          {
            "unit": "cl",
            "amount": 1,
            "ingredient": "Vermouth",
            "label": "Dry vermouth"
          },
          {
            "unit": "cl",
            "amount": 1,
            "ingredient": "Olive juice"
          }
        ],
        "garnish": "Green olive",
        "preparation": "Stir in mixing glass with ice cubes. Strain into chilled martini glass."
      },
      {
        "name": "Dry Martini",
        "glass": "martini",
        "category": "Before Dinner Cocktail",
        "ingredients": [
          {
            "unit": "cl",
            "amount": 6,
            "ingredient": "Gin"
          },
          {
            "unit": "cl",
            "amount": 1,
            "ingredient": "Vermouth",
            "label": "Dry vermouth"
          }
        ],
        "preparation": "Stir in mixing glass with ice cubes. Strain into chilled martini glass. Squeeze oil from lemon peel onto the drink, or garnish with olive."
      }
    ]
  }
}
XML Response
200 OK
<Root>
  <status>ok</status>
  <error />
  <data>
    <count>5</count>
    <filteredOn>name</filteredOn>
    <cocktails>
      <name>Espresso Martini</name>
      <glass>martini</glass>
      <category>After Dinner Cocktail</category>
      <ingredients>
        <unit>cl</unit>
        <amount>5</amount>
        <ingredient>Vodka</ingredient>
      </ingredients>
      <ingredients>
        <unit>cl</unit>
        <amount>1</amount>
        <ingredient>Coffee liqueur</ingredient>
        <label>Kahlúa</label>
      </ingredients>
      <ingredients>
        <special>Sugar syrup (according to individual preference of sweetness)</special>
      </ingredients>
      <ingredients>
        <special>1 short strong Espresso</special>
      </ingredients>
      <preparation>Shake and strain into a chilled cocktail glass.</preparation>
    </cocktails>
    <cocktails>
      <name>Lemon Drop Martini</name>
      <glass>martini</glass>
      <category>All Day Cocktail</category>
      <ingredients>
        <unit>cl</unit>
        <amount>2.5</amount>
        <ingredient>Vodka</ingredient>
        <label>Citron Vodka</label>
      </ingredients>
      <ingredients>
        <unit>cl</unit>
        <amount>2</amount>
        <ingredient>Triple Sec</ingredient>
      </ingredients>
      <ingredients>
        <unit>cl</unit>
        <amount>1.5</amount>
        <ingredient>Lemon juice</ingredient>
      </ingredients>
      <garnish>Lemon slice</garnish>
      <preparation>Shake and strain into a chilled cocktail glass rimmed with sugar.</preparation>
    </cocktails>
    <cocktails>
      <name>French Martini</name>
      <glass>martini</glass>
      <category>Before Dinner Cocktail</category>
      <ingredients>
        <unit>cl</unit>
        <amount>4.5</amount>
        <ingredient>Vodka</ingredient>
      </ingredients>
      <ingredients>
        <unit>cl</unit>
        <amount>1.5</amount>
        <ingredient>Raspberry liqueur</ingredient>
      </ingredients>
      <ingredients>
        <unit>cl</unit>
        <amount>1.5</amount>
        <ingredient>Pineapple juice</ingredient>
      </ingredients>
      <preparation>Stir in mixing glass with ice cubes. Strain into chilled cocktail glass. Squeeze oil from lemon peel onto the drink.</preparation>
    </cocktails>
    <cocktails>
      <name>Dirty Martini</name>
      <glass>martini</glass>
      <category>Before Dinner Cocktail</category>
      <ingredients>
        <unit>cl</unit>
        <amount>6</amount>
        <ingredient>Vodka</ingredient>
      </ingredients>
      <ingredients>
        <unit>cl</unit>
        <amount>1</amount>
        <ingredient>Vermouth</ingredient>
        <label>Dry vermouth</label>
      </ingredients>
      <ingredients>
        <unit>cl</unit>
        <amount>1</amount>
        <ingredient>Olive juice</ingredient>
      </ingredients>
      <garnish>Green olive</garnish>
      <preparation>Stir in mixing glass with ice cubes. Strain into chilled martini glass.</preparation>
    </cocktails>
    <cocktails>
      <name>Dry Martini</name>
      <glass>martini</glass>
      <category>Before Dinner Cocktail</category>
      <ingredients>
        <unit>cl</unit>
        <amount>6</amount>
        <ingredient>Gin</ingredient>
      </ingredients>
      <ingredients>
        <unit>cl</unit>
        <amount>1</amount>
        <ingredient>Vermouth</ingredient>
        <label>Dry vermouth</label>
      </ingredients>
      <preparation>Stir in mixing glass with ice cubes. Strain into chilled martini glass. Squeeze oil from lemon peel onto the drink, or garnish with olive.</preparation>
    </cocktails>
  </data>
</Root>
YAML Response
200 OK
status: ok
error: 
data:
  count: 5
  filteredOn: name
  cocktails:
  - name: Espresso Martini
    glass: martini
    category: After Dinner Cocktail
    ingredients:
    - unit: cl
      amount: 5
      ingredient: Vodka
    - unit: cl
      amount: 1
      ingredient: Coffee liqueur
      label: Kahlúa
    - special: Sugar syrup (according to individual preference of sweetness)
    - special: 1 short strong Espresso
    preparation: Shake and strain into a chilled cocktail glass.
  - name: Lemon Drop Martini
    glass: martini
    category: All Day Cocktail
    ingredients:
    - unit: cl
      amount: 2.5
      ingredient: Vodka
      label: Citron Vodka
    - unit: cl
      amount: 2
      ingredient: Triple Sec
    - unit: cl
      amount: 1.5
      ingredient: Lemon juice
    garnish: Lemon slice
    preparation: Shake and strain into a chilled cocktail glass rimmed with sugar.
  - name: French Martini
    glass: martini
    category: Before Dinner Cocktail
    ingredients:
    - unit: cl
      amount: 4.5
      ingredient: Vodka
    - unit: cl
      amount: 1.5
      ingredient: Raspberry liqueur
    - unit: cl
      amount: 1.5
      ingredient: Pineapple juice
    preparation: Stir in mixing glass with ice cubes. Strain into chilled cocktail glass. Squeeze oil from lemon peel onto the drink.
  - name: Dirty Martini
    glass: martini
    category: Before Dinner Cocktail
    ingredients:
    - unit: cl
      amount: 6
      ingredient: Vodka
    - unit: cl
      amount: 1
      ingredient: Vermouth
      label: Dry vermouth
    - unit: cl
      amount: 1
      ingredient: Olive juice
    garnish: Green olive
    preparation: Stir in mixing glass with ice cubes. Strain into chilled martini glass.
  - name: Dry Martini
    glass: martini
    category: Before Dinner Cocktail
    ingredients:
    - unit: cl
      amount: 6
      ingredient: Gin
    - unit: cl
      amount: 1
      ingredient: Vermouth
      label: Dry vermouth
    preparation: Stir in mixing glass with ice cubes. Strain into chilled martini glass. Squeeze oil from lemon peel onto the drink, or garnish with olive.

Response Structure

All API responses follow a consistent structure with the following fields:

FieldTypeDescriptionExample
statusstringIndicates whether the request was successful ("ok") or failed ("error")ok
errorstring | nullContains error message if status is "error", otherwise nullnull
dataobject | nullContains the API response data if successful, otherwise null{...}

Response Data Fields

When the request is successful, the data object contains the following fields:

FieldTypeSample Value
countnumber5
filteredOnstring"name"
cocktailsarray[{"name":"Espresso Martini","glass":"martini","category":"After Dinner Cocktail","ingredients":[{"unit":"cl","amount":5,"ingredient":"Vodka"},{"unit":"cl","amount":1,"ingredient":"Coffee liqueur","label":"Kahlúa"},{"special":"Sugar syrup (according to individual preference of sweetness)"},{"special":"1 short strong Espresso"}],"preparation":"Shake and strain into a chilled cocktail glass."}, ...]

Headers

Required and optional headers for API requests:

Header NameRequiredExample ValueDescription
X-API-KeyYesyour_api_key_hereYour APIVerve API key. Found in your dashboard under API Keys.
AcceptNoapplication/jsonSpecify response format: application/json (default), application/xml, or application/yaml
User-AgentNoMyApp/1.0Identifies your application for analytics and debugging purposes
X-Request-IDNoreq_123456789Custom request identifier for tracking and debugging requests
Cache-ControlNono-cacheControl caching behavior for the request and response

Client Libraries

To get started with minimal code, most of our APIs are available through client libraries and clients:

Run in PostmanNPMPyPINuGetSwagger

Error Codes

The API uses standard HTTP status codes to indicate success or failure:

Status CodeMessageDescription
200OKRequest successful, data returned
400Bad RequestInvalid request parameters or malformed request
401UnauthorizedMissing or invalid API key
403ForbiddenAPI key does not have permission for this endpoint
429Too Many RequestsRate limit exceeded, please slow down requests
500Internal Server ErrorServer error, please try again later

What's Next?

Continue your journey with these recommended resources

Was this page helpful?

Help us improve our documentation