Português (Brazil)

API

REST API

Disclamer

Breaking changes can come at any time as the development of the API is not finalized. Please keep yourself updated on the API-documentation.

Authentication

Authorization header must consist of your userid:apikey (base64 encoded).

Example:

UserId: xyz123 API-key: 1234567890123456789012345678901234567890abcd Base 64 encode: "xyz123:1234567890123456789012345678901234567890abcd"

curl -H "authorization: Basic eHl6MTIzOjEyMzQ1Njc4OTAxMjM0NTY3ODkwMTIzNDU2Nzg5MDEyMzQ1Njc4OTBhYmNk" \
https://api.brewfather.app/v1/batches

In Postman, you can configure Basic Authorization by clicking the Authorization tab, selecting Basic Auth from the drop-down selector, and then typing the username (userid from above) and password (api-key form above) on the right of the colon on each row.

The API supports HTTPS traffic only (for security reasons).

Generate API-Key

In the Settings page you can click GENERATE in the API-section to create your API-key. You can currently only have one API-key per account.

Scopes

Scopes control what the API-key can access. Currently you can choose:

  • Read Recipes

  • Read Batches

  • Edit Batches

  • Read Inventory

  • Edit Inventory

When you generate your API-key you can select different scopes that the API-key can access, when new scopes are added you might need to generate a new key with the new scopes to allow access to the new scopes.

Rate Limit

Currently you can do a maximum of 150 calls per hour per API-key.

Rate limits can be changed at any time, build your integration to handle http code 429 Too Many Requests, response will include a Retry-After header.

Batches

Get Batches

GET https://api.brewfather.app/v1/batches

This endpoint allows you to list your batches. By default it returns batches with status = "Planning". Use the query parameter "status" to query for a given status.

Query Parameters

Headers

[ array of Brewfather BATCH JSON ]

Get Batch

GET https://api.brewfather.app/v1/batches/:id

This endpoint allows you to fetch a specific batch. :id is the _id property from the batch JSON.

Query Parameters

Headers

{ Brewfather BATCH JSON }

Update Batch

PATCH https://api.brewfather.app/v1/batches/:id

This endpoint allows you to update specific fields of a specific batch. Currently support setting the status, please let us know what fields you would like to be able to update via the API.

Query Parameters

Headers

Recipes

Get Recipes

GET https://api.brewfather.app/v1/recipes

This endpoint allows you to list your recipes.

Query Parameters

Headers

[ array of Brewfather RECIPE JSON ]

Get Recipe

GET https://api.brewfather.app/v1/recipes/:id

This endpoint allows you to fetch a specific recipe. :id is the _id property from the recipe JSON.

Query Parameters

Headers

{ Brewfather RECIPE JSON }

Inventory

Get Fermentables

GET https://api.brewfather.app/v1/inventory/fermentables

This endpoint allows you to list your inventory items. It will only list items you have added manually or edited the default values for, or added an inventory amount on.

Query Parameters

Headers

[ array of Brewfather JSON ]

Get Fermentable

GET https://api.brewfather.app/v1/inventory/fermentables/:id

This endpoint allows you to fetch a specific item.

Query Parameters

Headers

{ Brewfather JSON }

Update Fermentable

PATCH https://api.brewfather.app/v1/inventory/fermentables/:id

This endpoint allows you to update specific fields of a specific item.

Query Parameters

Headers

Get Hops

GET https://api.brewfather.app/v1/inventory/hops

This endpoint allows you to list your inventory items. It will only list items you have added manually or edited the default values for, or added an inventory amount on.

Query Parameters

Headers

[ array of Brewfather JSON ]

Get Hop

GET https://api.brewfather.app/v1/inventory/hops/:id

This endpoint allows you to fetch a specific item.

Query Parameters

Headers

{ Brewfather JSON }

Update Hop

PATCH https://api.brewfather.app/v1/inventory/hops/:id

This endpoint allows you to update specific fields of a specific item.

Query Parameters

Headers

Get Miscs

GET https://api.brewfather.app/v1/inventory/miscs

This endpoint allows you to list your inventory items. It will only list items you have added manually or edited the default values for, or added an inventory amount on.

Query Parameters

Headers

[ array of Brewfather JSON ]

Get Misc

GET https://api.brewfather.app/v1/inventory/miscs/:id

This endpoint allows you to fetch a specific item.

Query Parameters

Headers

{ Brewfather JSON }

Update Misc

PATCH https://api.brewfather.app/v1/inventory/miscs/:id

This endpoint allows you to update specific fields of a specific item.

Query Parameters

Headers

Get Yeasts

GET https://api.brewfather.app/v1/inventory/yeasts

This endpoint allows you to list your inventory items. It will only list items you have added manually or edited the default values for, or added an inventory amount on.

Query Parameters

Headers

[ array of Brewfather JSON ]

Get Yeast

GET https://api.brewfather.app/v1/inventory/yeasts/:id

This endpoint allows you to fetch a specific item.

Query Parameters

Headers

{ Brewfather JSON }

Update Yeast

PATCH https://api.brewfather.app/v1/inventory/yeasts/:id

This endpoint allows you to update specific fields of a specific item.

Query Parameters

Headers

Last updated