API Documentation
Base URL: https://api.babylovegrowth.ai
Authentication
Include your API key in the request header:
X-API-Key: your_api_key_here
Base request template
curl -X GET "https://api.babylovegrowth.ai/api/public/<endpoint>" \ -H "X-API-Key: your_api_key_here" \ -H "Content-Type: application/json"
Manage your key in Dashboard → Settings → Integrations.
Articles
/api/integrations/v1/articlesRetrieve articles for your organization. Supports pagination with limit and offset query parameters. Default limit is 100, maximum is 500. Articles are ordered by creation date (newest first).
Query Parameters
limit (optional): Number of articles to return. Default: 100, Maximum: 500
offset (optional): Number of articles to skip. Default: 0. Use for pagination.
Note: Articles are ordered by creation date (newest first). To fetch all articles, make multiple requests with increasing offset values.
Example
# Get first 100 articles (default) curl -X GET "https://api.babylovegrowth.ai/api/integrations/v1/articles" \ -H "X-API-Key: your_api_key_here" \ -H "Content-Type: application/json" # Get up to 500 articles (maximum) curl -X GET "https://api.babylovegrowth.ai/api/integrations/v1/articles?limit=500" \ -H "X-API-Key: your_api_key_here" \ -H "Content-Type: application/json" # Paginate: Get next 100 articles (offset 100) curl -X GET "https://api.babylovegrowth.ai/api/integrations/v1/articles?limit=100&offset=100" \ -H "X-API-Key: your_api_key_here" \ -H "Content-Type: application/json"
Response
[
{
"id": 12345,
"title": "Sample Article Title",
"slug": "sample-article-title",
"hero_image_url": "https://example.com/image.jpg",
"languageCode": "en",
"meta_description": "Article meta description",
"excerpt": "Article excerpt...",
"orgWebsite": "https://your-website.com",
"created_at": "2025-01-15T10:30:00.000Z",
"seedKeyword": "example",
"keywords": ["keyword1", "keyword2"]
}
]/api/integrations/v1/articles/{id}Retrieve a specific article by its ID
Example
curl -X GET "https://api.babylovegrowth.ai/api/integrations/v1/articles/12345" \ -H "X-API-Key: your_api_key_here" \ -H "Content-Type: application/json"
Response
{
"id": 12345,
"title": "Sample Article Title",
"slug": "sample-article-title",
"content_markdown": "# Sample...",
"content_html": "<h1>Sample...</h1>",
"meta_description": "...",
"hero_image_url": "https://.../image.jpg",
"orgWebsite": "https://your-website.com",
"created_at": "2025-01-15T10:30:00.000Z",
"seedKeyword": "example",
"keywords": ["keyword1", "keyword2"]
}Backlinks
/api/integrations/v1/backlinksRetrieve given and received backlinks
Example
curl -X GET "https://api.babylovegrowth.ai/api/integrations/v1/backlinks" \ -H "X-API-Key: your_api_key_here" \ -H "Content-Type: application/json"
Response
{
"given": [
{
"url": "https://partner.com/post",
"isBacklinkPresent": true,
"article": { "publishedUrl": "https://your.com/a", "publishedAt": "2025-01-09T12:00:00.000Z" },
"targetOrgWebsite": { "url": "https://partner.com" }
}
],
"received": [
{
"url": "https://other.com/mention",
"isBacklinkPresent": true,
"article": { "publishedUrl": "https://your.com/b", "publishedAt": "2025-01-10T12:00:00.000Z" },
"sourceOrgWebsite": { "url": "https://other.com" }
}
]
}GEO Audit
/api/integrations/v1/geo-audit/issuesRetrieve the latest GEO audit issues
Example
curl -X GET "https://api.babylovegrowth.ai/api/integrations/v1/geo-audit/issues" \ -H "X-API-Key: your_api_key_here" \ -H "Content-Type: application/json"
Response
{
"auditDate": "2025-01-15T10:30:00.000Z",
"issues": [
{
"id": 101,
"issueType": "META_TITLE",
"description": "Missing meta title",
"severity": "HIGH",
"action": "Add a descriptive meta title",
"page": { "id": 1, "url": "https://your.com" },
"createdAt": "2025-01-15T10:30:00.000Z",
"markedAsResolvedAt": null
}
]
}RSS Feed
/api/integrations/v1/rssRetrieve RSS feed for your organization
Example
curl -X GET "https://api.babylovegrowth.ai/api/integrations/v1/rss" \ -H "X-API-Key: your_api_key_here" \ -H "Content-Type: application/json"
Response
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title>Your Organization Blog</title>
<description>Latest articles from your organization</description>
<link>https://your-website.com</link>
<item>
<title>Sample Article Title</title>
<description>Article description...</description>
<link>https://your-website.com/sample-article</link>
<pubDate>Wed, 15 Jan 2025 10:30:00 GMT</pubDate>
</item>
</channel>
</rss>Webhook Integration
{https://your-webhook-endpoint}Receive real-time notifications when new content is generated. We send a POST request to your endpoint with Bearer token authentication.
Request Details
Method: POST
Authentication: Bearer token in header
Authorization: Bearer your-webhook-secret
Payload Format
{
"id": 10,
"title": "Test Article for Webhook Integration",
"metaDescription": "Test article to verify webhook integration is working correctly",
"content_html": "<h1>Test Article for Webhook Integration</h1>",
"content_markdown": "# Test Article for Webhook Integration",
"languageCode": "en",
"publicUrl": "https://example.com/test-article-webhook",
"createdAt": "2025-03-20T03:41:18.570Z"
}Example Request
# Your webhook endpoint will receive this request:
curl -X POST "https://your-webhook-endpoint.com/webhook" \
-H "Authorization: Bearer your-webhook-secret" \
-H "Content-Type: application/json" \
-d '{
"id": 10,
"title": "Test Article for Webhook Integration",
"metaDescription": "Test article to verify webhook integration is working correctly",
"content_html": "<h1>Test Article for Webhook Integration</h1>",
"content_markdown": "# Test Article for Webhook Integration",
"languageCode": "en",
"publicUrl": "https://example.com/test-article-webhook",
"createdAt": "2025-03-20T03:41:18.570Z"
}'
# Your endpoint should respond with:
HTTP/1.1 200 OK
Content-Type: application/json
{"status": "received"}Note: Your webhook endpoint should respond with a 200 status code to acknowledge receipt of the notification. The Bearer token is the webhook secret you configure when setting up webhook integration.
Important Notes
- All requests must include the X-API-Key header
- API responses are returned in JSON format
- Replace {id} with the actual article ID
- Keep your API key secure and do not expose it in client-side code
- We are commited to maintaining all previous endpoints for backwards compatibility, but we recommend using the new endpoints for new features and improvements.