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

GET/api/integrations/v1/articles

Retrieve all articles for your organization

Example

curl -X GET "https://api.babylovegrowth.ai/api/integrations/v1/articles" \
  -H "X-API-Key: your_api_key_here" \
  -H "Content-Type: application/json"

Response

[
  {
    "id": 12345,
    "title": "Sample Article Title",
    "slug": "sample-article-title",
    "languageCode": "en",
    "orgWebsite": "https://your-website.com",
    "created_at": "2025-01-15T10:30:00.000Z",
    "seedKeyword": "example",
    "keywords": ["keyword1", "keyword2"]
  }
]
GET/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

GET/api/integrations/v1/backlinks

Retrieve 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

GET/api/integrations/v1/geo-audit/issues

Retrieve 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

GET/api/integrations/v1/rss

Retrieve 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

POST{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.