BabyLoveGrowth API
Use the BabyLoveGrowth API to fetch generated articles programmatically and push them anywhere.
The BabyLoveGrowth API lets you programmatically fetch your articles and push them into any CMS or backend — using code you write. Authenticate with an API key and access your content via REST endpoints.
How to Connect the API
Open Settings → Integrations, find API under the Developer tab, and click Connect to launch the setup wizard. The wizard walks you through 6 short steps, mirrored below. Once you generate a key, the API card moves to Active Connections with a Manage button.
Step 1: This is a developer integrationv
Our API lets you fetch your articles programmatically and push them to any CMS or backend — using code you write.
Important: This requires writing code (Node.js, Python, curl, etc.). If you want a no-code connection, use one of the other integrations instead.
Step 2: Generate your API keyv
In the wizard, click Generate API Key, then Copy it and store it securely.
Important: Never expose your API key in client-side code or public repos. Rotate it immediately if it gets leaked.
Step 3: Authenticate your requestsv
Every API request needs these two headers. Add them to all your calls:
X-API-Key: <your-api-key>Content-Type: application/json
Step 4: Fetch your articlesv
Use a GET request to list your articles. The list endpoint returns summaries only
(no content_html or content_markdown):
curl -X GET "https://api.babylovegrowth.ai/api/integrations/v1/articles" \
-H "X-API-Key: your_api_key_here" \
-H "Content-Type: application/json"Example Response:
[
{
"id": 151241,
"title": "Article Title",
"slug": "article-slug",
"hero_image_url": "https://...",
"languageCode": "en",
"meta_description": "Meta description for SEO...",
"excerpt": "Short excerpt from the article...",
"orgWebsite": "https://your-site.com",
"created_at": "2026-01-20T09:59:49.132Z",
"seedKeyword": "main keyword",
"keywords": ["keyword1", "keyword2"]
}
]Get one article (full content): use the article id from the list
response to get full content_html and content_markdown.
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"{
"id": 12345,
"title": "Sample Article Title",
"slug": "sample-article-title",
"content_markdown": "# Sample...",
"content_html": "<h1>Sample...</h1>",
"jsonLd": { "@context": "https://schema.org", "@type": "Article" },
"faqJsonLd": { "@context": "https://schema.org", "@type": "FAQPage" },
"meta_description": "Example meta description",
"hero_image_url": "https://path-to-image.jpg",
"orgWebsite": "https://your-website.com",
"created_at": "2025-01-15T10:30:00.000Z",
"seedKeyword": "example",
"keywords": ["keyword1", "keyword2"]
}Replace 12345 with the article id from the list response.
Step 5: Paginate large resultsv
Control how many articles you fetch at once using query parameters:
limit— number of articles to return (max: 50)offset— number of articles to skip for pagination (default: 0)
Example: get first 5 articles
curl -X GET "https://api.babylovegrowth.ai/api/integrations/v1/articles?limit=5&offset=0" \
-H "X-API-Key: your_api_key_here" \
-H "Content-Type: application/json"Node.js: fetch every article
async function fetchAllArticles() {
const allArticles = [];
let offset = 0;
const limit = 50;
while (true) {
const res = await fetch(
`https://api.babylovegrowth.ai/api/integrations/v1/articles?limit=${limit}&offset=${offset}`,
{ headers: { 'X-API-Key': process.env.BABYLOVE_API_KEY } }
);
if (!res.ok) throw new Error(`API error: ${res.status}`);
const articles = await res.json();
if (articles.length === 0) break;
allArticles.push(...articles);
if (articles.length < limit) break;
offset += limit;
}
return allArticles;
}Tips:
- Articles are sorted newest first
If a response returns fewer articles than your
limit, you've reached the endUse
offset = (page - 1) * limitfor page-based navigation
Step 6: Map fields to your CMSv
Each article returns these fields. Map them to what your CMS expects:
title— post titlecontent_html— full HTML; use for most CMS platformscontent_markdown— Markdown version; use if your CMS prefers itslug— URL-friendly post identifiermeta_description— SEO meta descriptionhero_image_url— featured image URLjsonLd/faqJsonLd— article schema markup for SEO
Node.js: sync one article into your CMS
import fetch from 'node-fetch';
async function syncArticle(id) {
const res = await fetch(`https://api.babylovegrowth.ai/api/integrations/v1/articles/${id}`, {
headers: { 'X-API-Key': process.env.BABYLOVE_API_KEY },
});
const article = await res.json();
// Upsert into your CMS
await fetch('https://your-cms.example.com/posts', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
slug: article.slug || article.id,
title: article.title,
html: article.content_html,
description: article.meta_description,
language: article.languageCode,
}),
});
}For real-time pushes instead of polling, use the
Webhooks
integration.
Troubleshooting & FAQv
Getting 401 Unauthorized?
Check your API key and header spelling. Ensure you're using
X-API-Key: <key> format.
Getting 404 errors?
The article ID may not exist in your account. Verify the ID by listing all articles first.
Hitting rate limits?
Add exponential backoff and cache responses where possible. Avoid polling too frequently.
What format should I use — HTML or Markdown?
Use content_html for most modern CMS platforms. Use
content_markdown if your CMS prefers Markdown.
Can I use this with any CMS?
Yes. The API returns standard JSON. You can integrate with any platform that accepts programmatic content creation.
How do I get notified when new articles are published?
Use the
Webhooks
integration for real-time push notifications instead of polling the API.
Need more help?
Contact support via the chat icon in the bottom-right corner.