Why Use the Bloffee API?
The Bloffee API lets you connect GEO optimization to your existing workflow. Instead of manually adding URLs through the dashboard, you can automate the process. Analyze pages as soon as they publish. Pull GEO scores into your own tools. Trigger optimizations based on score changes.
If you manage hundreds or thousands of URLs, the API becomes essential. It saves time, reduces errors, and ensures consistent GEO monitoring across all your content. Developers can build custom integrations that fit your exact needs.
API Overview
The Bloffee API is a REST API that returns JSON responses. It follows standard HTTP methods and status codes, making it easy to use with any programming language or tool that can make HTTP requests.
Base URL
https://api.bloffee.com/v1Response Format
All endpoints return JSON. Successful requests include data in the response body. Errors return standard HTTP status codes with error messages.
{
"status": "success",
"data": {
"url": "https://example.com/page",
"geoScore": 85,
"factors": {...}
}
}Authentication
The Bloffee API uses API keys for authentication. Each key is tied to your account and has specific permissions. Keep your API keys secure and never share them publicly.
Getting Your API Key
Go to Settings, then API section. Click Generate API Key. Copy the key immediately as you will not be able to see it again. Store it securely in your password manager or environment variables.
Authorization: Bearer YOUR_API_KEY_HEREUsing API Keys
Include your API key in the Authorization header of every request:
curl -X GET \
https://api.bloffee.com/v1/urls \
-H "Authorization: Bearer YOUR_API_KEY"Common API Endpoints
These are the most frequently used API endpoints. Each endpoint includes the HTTP method, path, and description.
GET/urls
Get a list of all URLs in your account with their GEO scores.
GET https://api.bloffee.com/v1/urls?page=1&limit=50GET/urls/:id
Get detailed analysis for a specific URL including all factor scores.
GET https://api.bloffee.com/v1/urls/abc123POST/urls
Analyze a new URL and get its GEO score.
POST https://api.bloffee.com/v1/urlsPUT/urls/:id/refresh
Re-analyze an existing URL to get updated scores.
PUT https://api.bloffee.com/v1/urls/abc123/refreshGET/compare
Compare multiple URLs side by side.
GET https://api.bloffee.com/v1/compare?urls=id1,id2,id3Code Examples
Here are practical code examples in popular languages to help you get started with the Bloffee API.
JavaScript / Node.js
const fetch = require('node-fetch');
const analyzeURL = async (url) => {
const response = await fetch('https://api.bloffee.com/v1/urls', {
method: 'POST',
headers: {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({ url })
});
const data = await response.json();
console.log('GEO Score:', data.data.geoScore);
return data;
};
analyzeURL('https://example.com/my-page');Python
import requests
def analyze_url(url):
headers = {
'Authorization': 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
}
response = requests.post(
'https://api.bloffee.com/v1/urls',
headers=headers,
json={'url': url}
)
data = response.json()
print(f"GEO Score: {data['data']['geoScore']}")
return data
analyze_url('https://example.com/my-page')PHP
<?php
$url = 'https://example.com/my-page';
$data = array('url' => $url);
$options = array(
'http' => array(
'header' => "Authorization: Bearer YOUR_API_KEY
" .
"Content-Type: application/json
",
'method' => 'POST',
'content' => json_encode($data)
)
);
$context = stream_context_create($options);
$result = file_get_contents(
'https://api.bloffee.com/v1/urls',
false,
$context
);
$response = json_decode($result, true);
echo "GEO Score: " . $response['data']['geoScore'];
?>Webhooks
Webhooks let Bloffee notify your application when events happen. Instead of constantly checking the API for changes, Bloffee sends you updates automatically.
Setting Up Webhooks
Go to Settings, then Webhooks. Add the URL where you want to receive webhook notifications. Choose which events to subscribe to (analysis complete, score changed, comparison finished, etc.).
- Analysis Complete: Notifies when URL analysis finishes
- Score Changed: Alerts when GEO-Score changes significantly
- Report Generated: Notifies when scheduled reports are created
- URL Added: Triggers when new URLs are analyzed
Webhook Payload Example
{
"event": "analysis.complete",
"timestamp": "2025-01-10T12:00:00Z",
"data": {
"url_id": "abc123",
"url": "https://example.com/page",
"geoScore": 85,
"previousScore": 78,
"factors": {
"readability": 90,
"comprehensiveness": 82,
"aiOptimization": 85
}
}
}Automation Ideas
- •Auto-analyze new blog posts when published via your CMS
- •Create Slack notifications when scores drop below thresholds
- •Pull GEO scores into Google Sheets for custom reporting
- •Trigger content review workflows when competitors improve
- •Build custom dashboards combining Bloffee data with analytics
- •Schedule weekly competitive analysis comparisons automatically
Common Integrations
Bloffee connects with popular tools to streamline your workflow. Some integrations are built-in, while others use the API or webhooks.
Zapier
Connect Bloffee to thousands of apps without code. Create zaps that trigger actions based on GEO score changes, new analyses, or report generation.
WordPress
Our WordPress plugin automatically analyzes posts when published. It shows GEO scores in your post editor and suggests improvements.
Slack
Get notifications in Slack when scores change, analyses complete, or team members add comments. Keep your team informed in real-time.
Google Sheets
Export data to Google Sheets automatically. Build custom dashboards, create charts, and share reports with stakeholders who prefer spreadsheets.
HubSpot
Sync GEO scores with HubSpot contacts and companies. Track content performance alongside marketing metrics for complete visibility.
Google Analytics
Send GEO scores to Google Analytics as custom dimensions. Analyze how content quality affects traffic, engagement, and conversions.
API Rate Limits
To ensure fair usage and system stability, the Bloffee API has rate limits. Limits vary by plan tier.
Starter Plan
100
requests per hour
Business Plan
1,000
requests per hour
Enterprise Plan
Custom
contact us for limits
If you hit rate limits, the API returns a 429 status code. Implement exponential backoff in your code to handle rate limiting gracefully.
Next Steps
Start by generating your API key and trying a few simple requests. Test analyzing a URL, fetching results, and refreshing scores. Once comfortable with basics, explore webhooks and integrations to automate your workflow.
For complete API documentation including all endpoints, parameters, and response formats, visit the Bloffee API docs at api.bloffee.com/docs. The docs include interactive examples you can test directly in your browser.