Yeasts
Query and manage your brewery's yeast inventory via the Brewgenix REST API.
Get Yeast
Returns a single yeast by its ID.
GET /api/v1/{account}/yeasts/{id}
Path Parameters
| Parameter | Type | Description |
|---|---|---|
account | string | Your brewery account slug (visible in the app URL). |
id | string | The yeast UUID. |
Authentication
Requires a valid API key passed as a Bearer token. See Authentication.
Example Request
curl "https://app.brewgenix.com/api/v1/my-brewery/yeasts/c3d4e5f6-..." \ -H "Authorization: Bearer bgx_<your-key>"
Example Response
{
"id": "c3d4e5f6-...",
"name": "Safale US-05",
"laboratory": "Fermentis",
"product_id": "US-05",
"yeast_type": "ale",
"form": "dry",
"flocculation": "medium-high",
"min_attenuation": 72,
"max_attenuation": 82,
"min_temperature": 15,
"max_temperature": 24,
"created_at": "2025-01-15T10:00:00Z",
"updated_at": "2025-01-15T10:00:00Z"
}
Error Responses
| Status | Description |
|---|---|
401 | Missing or invalid API key. |
404 | Yeast not found. |
500 | Internal server error. |
List Yeasts
Returns a paginated list of yeasts in your brewery account.
GET /api/v1/{account}/yeasts
Path Parameters
| Parameter | Type | Description |
|---|---|---|
account | string | Your brewery account slug (visible in the app URL). |
Query Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
page | integer | 1 | Page number (1-based). |
limit | integer | 20 | Number of results per page. Maximum 100. |
q | string | - | Search query. Filters by name, laboratory, or product ID. |
yeast_type | string | - | Filter by type: ale, lager, hybrid, wheat, wine, champagne, or other. |
form | string | - | Filter by form: dry, liquid, culture, or slurry. |
flocculation | string | - | Filter by flocculation: low, medium-low, medium, medium-high, high, very high. |
Authentication
Requires a valid API key passed as a Bearer token. See Authentication.
Example Request
curl "https://app.brewgenix.com/api/v1/my-brewery/yeasts?yeast_type=ale&form=dry" \ -H "Authorization: Bearer bgx_<your-key>"
Example Response
{
"data": [
{
"id": "c3d4e5f6-...",
"name": "Safale US-05",
"laboratory": "Fermentis",
"yeast_type": "ale",
"form": "dry",
"flocculation": "medium-high"
}
],
"count": 1,
"page": 1,
"pageSize": 20,
"pageCount": 1
}
Error Responses
| Status | Description |
|---|---|
401 | Missing or invalid API key. |
400 | Invalid query parameters. |
500 | Internal server error. |
Create Yeast
Creates a new yeast in your brewery account.
POST /api/v1/{account}/yeasts
Path Parameters
| Parameter | Type | Description |
|---|---|---|
account | string | Your brewery account slug (visible in the app URL). |
Authentication
Requires a valid API key passed as a Bearer token. See Authentication.
Request Body
| Field | Type | Required | Description |
|---|---|---|---|
name | string | Yes | Yeast name. |
yeast_type | string | Yes | Type: ale, lager, hybrid, wheat, wine, champagne, or other. |
form | string | Yes | Form: dry, liquid, culture, or slurry. |
laboratory | string | No | Manufacturer or laboratory name. |
product_id | string | No | Manufacturer's product code. |
flocculation | string | No | Flocculation: low, medium-low, medium, medium-high, high, or very high. |
attenuates_complex_sugars | boolean | No | Whether the yeast can ferment complex sugars. |
min_temperature | number | No | Minimum fermentation temperature in °C (−10 to 50). |
max_temperature | number | No | Maximum fermentation temperature in °C (−10 to 50). |
min_attenuation | number | No | Minimum attenuation percentage (0–100). |
max_attenuation | number | No | Maximum attenuation percentage (0–100). |
max_abv | number | No | Maximum alcohol tolerance percentage (0–25). |
description | string | No | Description or usage notes. |
notes | string | No | Additional notes. |
Example Request
curl -X POST "https://app.brewgenix.com/api/v1/my-brewery/yeasts" \
-H "Authorization: Bearer bgx_<your-key>" \
-H "Content-Type: application/json" \
-d '{
"name": "Safale US-05",
"yeast_type": "ale",
"form": "dry",
"laboratory": "Fermentis",
"product_id": "US-05",
"flocculation": "medium-high",
"min_attenuation": 72,
"max_attenuation": 82,
"min_temperature": 15,
"max_temperature": 24
}'
Example Response
{
"id": "c3d4e5f6-...",
"name": "Safale US-05",
"laboratory": "Fermentis",
"product_id": "US-05",
"yeast_type": "ale",
"form": "dry",
"flocculation": "medium-high",
"min_attenuation": 72,
"max_attenuation": 82,
"created_at": "2026-02-24T10:00:00Z",
"updated_at": "2026-02-24T10:00:00Z"
}
Error Responses
| Status | Description |
|---|---|
401 | Missing or invalid API key. |
400 | Request body is not valid JSON. |
422 | Validation failed (e.g. missing required field, invalid enum value). |
500 | Internal server error. |
Update Yeast
Updates an existing yeast. Only the fields provided in the request body are updated (PATCH semantics).
PATCH /api/v1/{account}/yeasts/{id}
Path Parameters
| Parameter | Type | Description |
|---|---|---|
account | string | Your brewery account slug (visible in the app URL). |
id | string | The yeast UUID. |
Authentication
Requires a valid API key passed as a Bearer token. See Authentication.
Request Body
All fields are optional. Provide only the fields you want to update.
| Field | Type | Description |
|---|---|---|
name | string | Yeast name. |
yeast_type | string | Type: ale, lager, hybrid, wheat, wine, champagne, or other. |
form | string | Form: dry, liquid, culture, or slurry. |
laboratory | string | Manufacturer or laboratory name. |
product_id | string | Manufacturer's product code. |
flocculation | string | Flocculation: low, medium-low, medium, medium-high, high, or very high. |
attenuates_complex_sugars | boolean | Whether the yeast can ferment complex sugars. |
min_temperature | number | Minimum fermentation temperature in °C (−10 to 50). |
max_temperature | number | Maximum fermentation temperature in °C (−10 to 50). |
min_attenuation | number | Minimum attenuation percentage (0–100). |
max_attenuation | number | Maximum attenuation percentage (0–100). |
max_abv | number | Maximum alcohol tolerance percentage (0–25). |
description | string | Description or usage notes. |
notes | string | Additional notes. |
Example Request
curl -X PATCH "https://app.brewgenix.com/api/v1/my-brewery/yeasts/c3d4e5f6-..." \
-H "Authorization: Bearer bgx_<your-key>" \
-H "Content-Type: application/json" \
-d '{
"min_temperature": 18,
"max_temperature": 22,
"description": "Best for clean American ales"
}'
Example Response
{
"id": "c3d4e5f6-...",
"name": "Safale US-05",
"laboratory": "Fermentis",
"yeast_type": "ale",
"form": "dry",
"min_temperature": 18,
"max_temperature": 22,
"description": "Best for clean American ales",
"updated_at": "2026-02-24T11:00:00Z"
}
Error Responses
| Status | Description |
|---|---|
401 | Missing or invalid API key. |
400 | Request body is not valid JSON. |
404 | Yeast not found. |
422 | Validation failed (e.g. invalid enum value). |
500 | Internal server error. |
Delete Yeast
Soft-deletes a yeast. The record is marked as deleted and will no longer appear in list or get requests.
DELETE /api/v1/{account}/yeasts/{id}
Path Parameters
| Parameter | Type | Description |
|---|---|---|
account | string | Your brewery account slug (visible in the app URL). |
id | string | The yeast UUID. |
Authentication
Requires a valid API key passed as a Bearer token. See Authentication.
Example Request
curl -X DELETE "https://app.brewgenix.com/api/v1/my-brewery/yeasts/c3d4e5f6-..." \ -H "Authorization: Bearer bgx_<your-key>"
Response
Returns 204 No Content on success with an empty body.
Error Responses
| Status | Description |
|---|---|
401 | Missing or invalid API key. |
500 | Internal server error. |