Miscellaneous

Query and manage your brewery's miscellaneous ingredient inventory via the Brewgenix REST API.

Get Miscellaneous Item

Returns a single miscellaneous item by its ID.

GET /api/v1/{account}/miscellaneous/{id}

Path Parameters

ParameterTypeDescription
accountstringYour brewery account slug (visible in the app URL).
idstringThe miscellaneous item 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/miscellaneous/d4e5f6a7-..." \
  -H "Authorization: Bearer bgx_<your-key>"

Example Response

{
  "id": "d4e5f6a7-...",
  "name": "Irish Moss",
  "type": "fining",
  "unit": "tsp",
  "usage": ["boil"],
  "description": "Clarifying agent added in the last 15 minutes of the boil.",
  "created_at": "2025-01-15T10:00:00Z",
  "updated_at": "2025-01-15T10:00:00Z"
}

Error Responses

StatusDescription
401Missing or invalid API key.
404Item not found.
500Internal server error.

List Miscellaneous Items

Returns a paginated list of miscellaneous items in your brewery account.

GET /api/v1/{account}/miscellaneous

Path Parameters

ParameterTypeDescription
accountstringYour brewery account slug (visible in the app URL).

Query Parameters

ParameterTypeDefaultDescription
pageinteger1Page number (1-based).
limitinteger20Number of results per page. Maximum 100.
qstring-Search query. Filters by name or description.
typestring-Filter by type: spice, fining, water_agent, herb, flavour, or other.
usagestring-Filter by usage stage: mash, sparge, boil, flameout, primary, secondary, bottling.

Authentication

Requires a valid API key passed as a Bearer token. See Authentication.

Example Request

curl "https://app.brewgenix.com/api/v1/my-brewery/miscellaneous?type=fining" \
  -H "Authorization: Bearer bgx_<your-key>"

Example Response

{
  "data": [
    {
      "id": "d4e5f6a7-...",
      "name": "Irish Moss",
      "type": "fining",
      "unit": "tsp",
      "usage": ["boil"]
    }
  ],
  "count": 1,
  "page": 1,
  "pageSize": 20,
  "pageCount": 1
}

Error Responses

StatusDescription
401Missing or invalid API key.
400Invalid query parameters.
500Internal server error.

Create Miscellaneous Item

Creates a new miscellaneous item in your brewery account.

POST /api/v1/{account}/miscellaneous

Path Parameters

ParameterTypeDescription
accountstringYour brewery account slug (visible in the app URL).

Authentication

Requires a valid API key passed as a Bearer token. See Authentication.

Request Body

FieldTypeRequiredDescription
namestringYesIngredient name.
typestringYesType: spice, fining, water_agent, herb, flavour, or other.
usagearray of stringYesOne or more usage stages: mash, sparge, boil, flameout, primary, secondary, bottling.
unitstringNoUnit of measurement (e.g. g, tsp, ml).
descriptionstringNoDescription or usage notes.

Example Request

curl -X POST "https://app.brewgenix.com/api/v1/my-brewery/miscellaneous" \
  -H "Authorization: Bearer bgx_<your-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Irish Moss",
    "type": "fining",
    "usage": ["boil"],
    "unit": "tsp",
    "description": "Clarifying agent added in the last 15 minutes of the boil."
  }'

Example Response

{
  "id": "d4e5f6a7-...",
  "name": "Irish Moss",
  "type": "fining",
  "unit": "tsp",
  "usage": ["boil"],
  "description": "Clarifying agent added in the last 15 minutes of the boil.",
  "created_at": "2026-02-24T10:00:00Z",
  "updated_at": "2026-02-24T10:00:00Z"
}

Error Responses

StatusDescription
401Missing or invalid API key.
400Request body is not valid JSON.
422Validation failed (e.g. missing required field, empty usage array).
500Internal server error.

Update Miscellaneous Item

Updates an existing miscellaneous item. Only the fields provided in the request body are updated (PATCH semantics).

PATCH /api/v1/{account}/miscellaneous/{id}

Path Parameters

ParameterTypeDescription
accountstringYour brewery account slug (visible in the app URL).
idstringThe miscellaneous item 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.

FieldTypeDescription
namestringIngredient name.
typestringType: spice, fining, water_agent, herb, flavour, or other.
usagearray of stringUsage stages (must not be empty if provided): mash, sparge, boil, flameout, primary, secondary, bottling.
unitstringUnit of measurement (e.g. g, tsp, ml).
descriptionstringDescription or usage notes.

Example Request

curl -X PATCH "https://app.brewgenix.com/api/v1/my-brewery/miscellaneous/d4e5f6a7-..." \
  -H "Authorization: Bearer bgx_<your-key>" \
  -H "Content-Type: application/json" \
  -d '{
    "description": "Add at 15 minutes remaining in the boil for best results.",
    "unit": "g"
  }'

Example Response

{
  "id": "d4e5f6a7-...",
  "name": "Irish Moss",
  "type": "fining",
  "unit": "g",
  "usage": ["boil"],
  "description": "Add at 15 minutes remaining in the boil for best results.",
  "updated_at": "2026-02-24T11:00:00Z"
}

Error Responses

StatusDescription
401Missing or invalid API key.
400Request body is not valid JSON.
404Miscellaneous item not found.
422Validation failed (e.g. empty usage array, invalid type value).
500Internal server error.

Delete Miscellaneous Item

Soft-deletes a miscellaneous item. The record is marked as deleted and will no longer appear in list or get requests.

DELETE /api/v1/{account}/miscellaneous/{id}

Path Parameters

ParameterTypeDescription
accountstringYour brewery account slug (visible in the app URL).
idstringThe miscellaneous item 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/miscellaneous/d4e5f6a7-..." \
  -H "Authorization: Bearer bgx_<your-key>"

Response

Returns 204 No Content on success with an empty body.

Error Responses

StatusDescription
401Missing or invalid API key.
500Internal server error.