Punk API

Punk API is a free, no-auth REST API exposing BrewDog's "DIY Dog" open-source beer recipe collection — 325 detailed homebrew recipes crowdsourced and transcribed from the BrewDog DIY Dog PDF. The v2 surface (api.punkapi.com/v2) offered three read-only endpoints: list beers (with rich query filtering on ABV, IBU, EBC, brew date, beer name, hops, malt, yeast, and food pairing), get a beer by id, and get a random beer. Each beer carries a full recipe — ABV, IBU, EBC/SRM colour, target gravities, mash temperature schedule, fermentation temperature, twist, malt and hop bills, yeast strain, food pairings, brewer's tips, and contributor attribution. STATUS — DEPRECATED. BrewDog decommissioned the public api.punkapi.com endpoint in 2023 and the source repositories (sammdec/punkapi-db, sammdec/punkapi-server) were archived on 2023-06-28. The dataset and server source remain MIT-licensed and available; community-hosted mirrors and the `punkapi-db` npm package preserve the contract documented here.

Punk API publishes 1 API on the APIs.io network: Beers API. Tagged areas include Food And Drink, Beer, BrewDog, DIY Dog, and Recipes.

The Punk API catalog on APIs.io includes 1 JSON-LD context and 2 Spectral governance rulesets.

45.5/100 developing ▬ flat Agent 32/100 agent aware Full breakdown ↓
scored 2026-07-28 · rubric v0.6
AccessFreemium
1 APIs 9 Features 6 Use Cases
Food And DrinkBeerBrewDogDIY DogRecipesOpen SourcePublic APIsRESTDeprecated

Kin Score

Kin Score Kin Score How this is scored →
scored 2026-07-28 · rubric v0.6
Composite quality — 45.5/100 · developing
Contract Quality 17.7 / 25
Developer Ergonomics 3.0 / 20
Commercial Clarity 4.2 / 20
Operational Transparency 4.8 / 13
Governance 8.3 / 12
Discoverability 7.6 / 10
Agent readiness — 32/100 · agent aware
Machine-Readable Contract 18 / 18
Agentic Access Contract 10 / 10
MCP Server 0 / 12
Machine-Readable Auth 0 / 10
Idempotency 0 / 9
Stable Error Semantics 8 / 8
Request/Response Examples 7 / 7
Rate-Limit Signaling 7 / 7
Typed Event Surface 0 / 6
Agent Skills 0 / 5
Well-Known Catalog 0 / 4
Consent & Bot Identity 0 / 3
A2A Agent Card 0 / 8
Dry-Run / Simulate Mode 0 / 4
Improve this rating by publishing the missing artifacts — every area above can be raised, and the full rubric is at apis.io/rating/. This rating is computed from github.com/api-evangelist/punkapi: open an issue to ask a question, or submit a pull request to add artifacts. Want it done for you? Prioritized profiling — $2,500 →

APIs 1

Individual APIs this provider publishes, each with its own machine-readable definition.

Punk API Beers API

BrewDog DIY Dog beer recipes — 325 entries

Open Collections 1

Open, tool-agnostic API collections (OpenAPI-derived and Bruno).

Pricing Plans 1

Published pricing tiers and plan structures.

Punkapi Plans Pricing

1 plans

PLANS

Rate Limits 1

Documented rate limits and quota policies.

Punkapi Rate Limits

3 limits

RATE LIMITS

Features 9

Notable capabilities this provider offers.

325 BrewDog DIY Dog Recipes

Crowdsourced transcription of the complete BrewDog DIY Dog PDF — every recipe from Punk IPA (#001) through the final published batch.

Full Brewing Recipe

Each beer carries ABV, IBU, EBC, SRM, target gravities, mash schedule, fermentation temperature, malt bill, hop bill, yeast strain, food pairings, and brewer's tips.

Recipe-Oriented Query Filters

List endpoint supports filters on ABV (gt/lt), IBU (gt/lt), EBC (gt/lt), brewed-before/after dates, and substring search on beer name, hops, malt, yeast, and food pairing.

Pagination

page (>=1) and per_page (1-80, default 25) on the list endpoint.

Random Beer

/beers/random returns a uniformly random recipe — useful for "beer of the day" demos.

No Authentication

Fully public — no API keys, OAuth, or signup required.

No Rate Limits Documented

Best-effort public service while it was live. Only the per_page ceiling of 80 is enforced.

MIT-Licensed Source

Both punkapi-db (dataset) and punkapi-server (Express app) are MIT-licensed — self-host or fork freely.

npm Distribution

The complete dataset is published as the `punkapi-db` package for direct in-process use without HTTP.

Scroll for all 9

Semantic Vocabularies 1

JSON-LD contexts and semantic vocabularies used across these APIs.

Punkapi Context

8 classes · 34 properties

JSON-LD

Spectral Rules 2

Spectral governance rulesets for linting and validating these APIs.

Punk API API Rules

6 rules · 5 warnings 1 info

SPECTRAL

Punk API API Rules

36 rules · 11 errors 21 warnings 4 info

SPECTRAL

JSON Schema 2

Standalone JSON Schema definitions for this provider's data models.

Beer

21 properties

JSON SCHEMA

Error

3 properties

JSON SCHEMA

JSON Structure 2

JSON Structure definitions describing this provider's data shapes.

Punkapi Beer Structure

21 properties

JSON STRUCTURE

Punkapi Error Structure

3 properties

JSON STRUCTURE

Examples 2

Example request and response payloads for these APIs.

Punkapi Beer Example

21 fields

EXAMPLE

Punkapi Error Example

3 fields

EXAMPLE

Security Posture 1

Authentication, domain security, vulnerability disclosure, and trust-center signals.

Punkapi Domain Security

DNSSEC

SECURITY

Agentic Access 1

Recommended x-agentic-access execution contracts for AI agents.

Punkapi Agentic Access

3 operations

3 operations · 0 acting

AGENTIC

Use Cases 6

What developers build with this provider.

Homebrewing Reference

Look up a recipe by ABV, hop, or malt to replicate or adapt a BrewDog beer at home-batch scale.

Sample / Tutorial API

Front-end and mobile tutorials use Punk API as a fun, schema-rich, no-auth REST target.

Beer Discovery App

Power beer recommendation apps, food-pairing tools, and BrewDog fan sites.

Search by Ingredient

Filter by hop (e.g. `hops=simcoe`) or malt (e.g. `malt=maris_otter`) to discover recipes using a specific ingredient.

Food Pairing Lookup

Filter by `food=spicy_food` to find beers explicitly recommended for spicy cuisine.

HTTP Client QA

Stable, well-defined schema makes Punk API a good fixture for codegen tools, OpenAPI tooling, and SDK builders.

Integrations 5

Pre-built integrations with other platforms and tools.

BrewDog DIY Dog

The upstream source of every recipe — BrewDog's open-source DIY Dog homebrew PDF.

punkapi-db (npm)

The recipe dataset packaged for direct npm install — no HTTP needed.

punkapi-server (Express)

The reference Express + node server that exposes the dataset as the v2 REST API.

Community Mirrors

Several community-run instances of punkapi-server keep the v2 contract reachable after BrewDog's 2023 decommission.

Public APIs Catalog

Listed in github.com/public-apis/public-apis under the Food & Drink category.

Solutions 3

Packaged solutions this provider offers.

Self-Host the Server

Clone sammdec/punkapi-server, run `npm i` then `npm run dev` — get the full v2 contract on http://localhost:3333.

Embed the Dataset

Run `npm i --save punkapi-db` to pull the full 325-recipe data.json into your application without HTTP.

Static JSON Mirror

For purely read use cases, host data.json on a CDN and serve clients directly.

Resources

Agent Surfaces 1

MCP servers, agent skills, and machine-readable catalogs

Design & Contract 2

Pagination, idempotency, versioning, errors, and events

Build 12

SDKs, sample code, and the tooling you integrate with

Scroll for all 12

Access & Security 1

Authentication, authorization, and security posture

Operate 1

Status, limits, changes, and where to get help

Commercial 1

Pricing, plans, and the legal terms of use

Company 1

The organization behind the API

Other 1

Properties that don't map to a standard resource type

Source (apis.yml)

apis.yml Raw ↑
aid: punkapi
accessModel:
  pricing: freemium
  onboarding: unknown
  trial: false
  try_now: false
  public: false
  label: Freemium
  confidence: medium
  source:
  - plans
  generated: '2026-07-22'
  method: derived
image: https://kinlane-images.s3.amazonaws.com/shared/apis-json/icons/punkapi.png
name: Punk API
description: 'Punk API is a free, no-auth REST API exposing BrewDog''s "DIY Dog" open-source beer recipe collection — 325
  detailed homebrew recipes crowdsourced and transcribed from the BrewDog DIY Dog PDF. The v2 surface (api.punkapi.com/v2)
  offered three read-only endpoints: list beers (with rich query filtering on ABV, IBU, EBC, brew date, beer name, hops, malt,
  yeast, and food pairing), get a beer by id, and get a random beer. Each beer carries a full recipe — ABV, IBU, EBC/SRM colour,
  target gravities, mash temperature schedule, fermentation temperature, twist, malt and hop bills, yeast strain, food pairings,
  brewer''s tips, and contributor attribution. STATUS — DEPRECATED. BrewDog decommissioned the public api.punkapi.com endpoint
  in 2023 and the source repositories (sammdec/punkapi-db, sammdec/punkapi-server) were archived on 2023-06-28. The dataset
  and server source remain MIT-licensed and available; community-hosted mirrors and the `punkapi-db` npm package preserve
  the contract documented here.'
url: https://punkapi.com
baseURL: https://api.punkapi.com/v2
specificationVersion: '0.20'
created: '2026-05-28'
modified: '2026-05-29'
x-source: public-apis/public-apis
x-category: Food & Drink
x-type: opensource
x-tier: 3
x-tier-reason: free-deprecated-public-service-with-archived-open-source-source-code
x-status: deprecated
x-deprecated-on: '2023'
x-archived-on: '2023-06-28'
x-replacement: Self-host sammdec/punkapi-server against the `punkapi-db` npm dataset, or point clients at a community-maintained
  mirror.
tags:
- Food And Drink
- Beer
- BrewDog
- DIY Dog
- Recipes
- Open Source
- Public APIs
- REST
- Deprecated
apis:
- aid: punkapi:punkapi-beers-api
  name: Punk API Beers API
  description: BrewDog DIY Dog beer recipes — 325 entries
  humanURL: https://punkapi.com
  baseURL: https://api.punkapi.com/v2
  tags:
  - Beers
  properties:
  - type: OpenAPI
    url: openapi/punkapi-beers-api-openapi.yml
  - type: Documentation
    url: https://punkapi.com
  - type: JSONSchema
    url: json-schema/punkapi-beer-schema.json
  - type: JSONSchema
    url: json-schema/punkapi-error-schema.json
  - type: JSONStructure
    url: json-structure/punkapi-beer-structure.json
  - type: JSONStructure
    url: json-structure/punkapi-error-structure.json
  - type: JSONLD
    url: json-ld/punkapi-context.jsonld
  - type: Examples
    url: examples/punkapi-beer-example.json
  - type: Examples
    url: examples/punkapi-error-example.json
common:
- type: AgenticAccess
  url: agentic-access/punkapi-agentic-access.yml
- type: DomainSecurity
  url: security/punkapi-domain-security.yml
- type: Website
  url: https://punkapi.com
- type: GitHubRepository
  url: https://github.com/sammdec/punkapi
  title: punkapi-db (Recipe Dataset — archived 2023-06-28)
- type: GitHubRepository
  url: https://github.com/sammdec/punkapi-server
  title: punkapi-server (Express server — archived 2023-06-28)
- type: GitHubOrganization
  url: https://github.com/sammdec
- type: SDKs
  url: https://www.npmjs.com/package/punkapi-db
  title: punkapi-db (npm — recipe dataset)
- type: SDKs
  url: https://github.com/apfohl/punkapi
  title: punkapi (C client)
- type: SDKs
  url: https://github.com/samjbmason/punkapi-ruby
  title: punkapi-ruby (Ruby client)
- type: SDKs
  url: https://github.com/billythekid/PunkApi
  title: PunkApi (PHP client)
- type: SDKs
  url: https://github.com/mikefrancis/brewdog.js
  title: brewdog.js (JavaScript client)
- type: SDKs
  url: https://github.com/Oni-zerone/PunkAPI
  title: PunkAPI (Swift/iOS client)
- type: SDKs
  url: https://github.com/yoohahn/VueDogs-API
  title: VueDogs-API (Vue.js client)
- type: SDKs
  url: https://hub.docker.com/r/yoohahn/brewdog-recipe
  title: brewdog-recipe (Docker mirror)
- type: SDKs
  url: https://github.com/phillc73/brewdogr
  title: brewdogr (R client)
- type: PublicAPIsListing
  url: https://github.com/public-apis/public-apis
- type: Plans
  url: plans/punkapi-plans-pricing.yml
- type: RateLimits
  url: rate-limits/punkapi-rate-limits.yml
- type: SpectralRules
  url: rules/punkapi-rules.yml
- type: Vocabulary
  url: vocabulary/punkapi-vocabulary.yml
- type: Features
  data:
  - name: 325 BrewDog DIY Dog Recipes
    description: Crowdsourced transcription of the complete BrewDog DIY Dog PDF — every recipe from Punk IPA (#001) through
      the final published batch.
  - name: Full Brewing Recipe
    description: Each beer carries ABV, IBU, EBC, SRM, target gravities, mash schedule, fermentation temperature, malt bill,
      hop bill, yeast strain, food pairings, and brewer's tips.
  - name: Recipe-Oriented Query Filters
    description: List endpoint supports filters on ABV (gt/lt), IBU (gt/lt), EBC (gt/lt), brewed-before/after dates, and substring
      search on beer name, hops, malt, yeast, and food pairing.
  - name: Pagination
    description: page (>=1) and per_page (1-80, default 25) on the list endpoint.
  - name: Random Beer
    description: /beers/random returns a uniformly random recipe — useful for "beer of the day" demos.
  - name: No Authentication
    description: Fully public — no API keys, OAuth, or signup required.
  - name: No Rate Limits Documented
    description: Best-effort public service while it was live. Only the per_page ceiling of 80 is enforced.
  - name: MIT-Licensed Source
    description: Both punkapi-db (dataset) and punkapi-server (Express app) are MIT-licensed — self-host or fork freely.
  - name: npm Distribution
    description: The complete dataset is published as the `punkapi-db` package for direct in-process use without HTTP.
- type: UseCases
  data:
  - name: Homebrewing Reference
    description: Look up a recipe by ABV, hop, or malt to replicate or adapt a BrewDog beer at home-batch scale.
  - name: Sample / Tutorial API
    description: Front-end and mobile tutorials use Punk API as a fun, schema-rich, no-auth REST target.
  - name: Beer Discovery App
    description: Power beer recommendation apps, food-pairing tools, and BrewDog fan sites.
  - name: Search by Ingredient
    description: Filter by hop (e.g. `hops=simcoe`) or malt (e.g. `malt=maris_otter`) to discover recipes using a specific
      ingredient.
  - name: Food Pairing Lookup
    description: Filter by `food=spicy_food` to find beers explicitly recommended for spicy cuisine.
  - name: HTTP Client QA
    description: Stable, well-defined schema makes Punk API a good fixture for codegen tools, OpenAPI tooling, and SDK builders.
- type: Integrations
  data:
  - name: BrewDog DIY Dog
    description: The upstream source of every recipe — BrewDog's open-source DIY Dog homebrew PDF.
  - name: punkapi-db (npm)
    description: The recipe dataset packaged for direct npm install — no HTTP needed.
  - name: punkapi-server (Express)
    description: The reference Express + node server that exposes the dataset as the v2 REST API.
  - name: Community Mirrors
    description: Several community-run instances of punkapi-server keep the v2 contract reachable after BrewDog's 2023 decommission.
  - name: Public APIs Catalog
    description: Listed in github.com/public-apis/public-apis under the Food & Drink category.
- type: Solutions
  data:
  - name: Self-Host the Server
    description: Clone sammdec/punkapi-server, run `npm i` then `npm run dev` — get the full v2 contract on http://localhost:3333.
  - name: Embed the Dataset
    description: Run `npm i --save punkapi-db` to pull the full 325-recipe data.json into your application without HTTP.
  - name: Static JSON Mirror
    description: For purely read use cases, host data.json on a CDN and serve clients directly.
maintainers:
- FN: Kin Lane
  email: kin@apievangelist.com