API Documentation
Version 2.0 • Base URL: https://api.loffeelabs.com/api/v2
1. Authentication
All search endpoints require an API key. For production applications, pass your API key securely via the Authorization header.
Browser Testing: For quick testing in your browser or Postman, you can pass the key directly in the URL using the ?api_key= parameter.
Example: https://api.loffeelabs.com/api/v2/beans?api_key=your_key_here
2. Endpoints & Querying
/beansSearches and returns a paginated list of coffee beans. Use the interactive Query Builder to effortlessly create complex URLs.
- Append
?format=csvto instantly download the payload as a formatted CSV spreadsheet. Defaults to JSON. - Append
?fields=with a comma-separated list of keys to restrict the JSON payload to only the fields you need, saving bandwidth.
page(int) - Default: 1limit(int) - Default: 50. Max: 200 (Standard) / 1000 (Dev).historical(boolean) - Include inactive/archived beans (Dev Tier).search(string) - Full text search across all records.Accepts comma-separated values for OR logic. Prepend exclude_ to any string parameter below for NOT logic (e.g., ?exclude_process=Decaf).
Append _min or _max to apply boundaries to numerical or date data (e.g., ?price_min=15&price_max=25).
/beans/syncDev TierA highly optimized Delta endpoint that returns only the rows that have been added, modified, or permanently deleted since the date you specify. Perfect for keeping your local database archived and in perfect sync without wasting API quota on full payloads.
?since=Required. Accepts an ISO 8601 date string (e.g., 2026-08-01).{
"meta": { "since": "2026-08-01T00:00:00.000Z", "upsertedCount": 2, "deletedCount": 1 },
"upserted": [ 101, 104 ],
"deleted": [ 85 ]
}/roasters|/origins|/varieties|/processesUnauthenticated endpoints returning standardized data from our database. /roasters defaults to returning an array of rich data objects, but you can append ?flat=true to return a simple flat array of strings like the others. No API Key required.
3. Access Tiers
Free Access
- Data: Latest 1,000 Beans
- Daily Quota: 2,000 Beans / day
- Rate Limit: 1 request per 3 sec
- Max Call Limit: 50 beans / call
- Stripped Fields: image, tasting-tag, general-tag, description, soldout, available
Default tier for testing.
Developer Access
- Data: Latest 25,000 Beans (Includes all Active Beans)
- Daily Quota: 50,000 Beans / day
- Rate Limit: 2 requests per second
- Max Call Limit: 1,000 beans / call
- Stripped Fields: None (Full Payload)
Requires Patreon "Loffee Developer". Access to /bulk.
Commercial Access
Need the complete historical payload (all beans since 2023), 250,000 daily quota limits, and unrestricted access for your enterprise application? Reach out directly to discuss a Commercial Access agreement.
4. API Terms of Use
Access to the Bean Base API is granted via a limited, non-exclusive, revocable license. Free and Developer Access tiers are intended for personal, educational, indie, and internal non-commercial projects. Enterprise integration, high-volume commercial production use, and full historical data extraction are exclusively permitted under a negotiated Commercial Access agreement. Regardless of your access tier, you may not mass-scrape, mirror, redistribute, or resell raw API data as a standalone product or database. You are responsible for keeping your API key confidential and respecting all assigned rate limits. Attribution to LoffeeLabs is required when publishing work directly derived from our datasets.
The Bean Base API and all associated data are provided entirely "as is" and "as available" without warranties of any kind. LoffeeLabs does not guarantee the continuous availability, accuracy, or completeness of the data. To the fullest extent permitted by law, LoffeeLabs shall not be liable for any direct, indirect, incidental, or consequential damages—including loss of profits, data, or business opportunities—arising from your use of or inability to use the API. We reserve the right to monitor usage, modify endpoints, adjust rate limits, or revoke API access at any time, without prior notice, to ensure the stability and security of our platform.
By generating an API key, issuing requests to the Bean Base API, or utilizing the data provided, you acknowledge that you have read, understood, and agree to be bound by these Terms of Use.