Quickstart

From zero to a published-ready article in under 5 minutes. You'll get an API key, generate an article, and fetch the result.

1. Get an API key

Sign in to your dashboard and visit the Developers page. Click Create API key and copy the secret — it starts with sk_live_ and is shown only once.

Store it safely

API keys grant full access to your account. Never commit them to source control. Use environment variables locally and a secrets manager in production (Vercel env, AWS Secrets Manager, Doppler).

Export the key in your shell so the rest of the examples just work:

bash
export SEOLADDERS_API_KEY=sk_live_••••••••••••••••

2. Generate an article

Article generation is async and runs as a batch job — even single articles use the /v1/articles/batch endpoint with a one-item array. The endpoint returns immediately with a batchId; the article is generated in the background.

curl -X POST https://www.seoladders.com/api/v1/articles/batch \
  -H "Authorization: Bearer $SEOLADDERS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "items": [
      { "keyword": "best crm for startups" }
    ]
  }'

What gets generated

Each article runs through the full 13-step pipeline: outline, draft, AI images (DALL-E 3), citation sources, FAQ, schema (JSON-LD), and internal linking. Output matches your brand voice profile and DR targeting from the dashboard.

3. Poll the batch status

Article generation typically takes 2-3 minutes. Poll the batch endpoint until status === "completed":

bash
curl https://www.seoladders.com/api/v1/batches/$BATCH_ID \
  -H "Authorization: Bearer $SEOLADDERS_API_KEY"

A completed batch returns:

json
{
  "batchId": "btc_01HXY...",
  "status": "completed",
  "totalCount": 1,
  "completedCount": 1,
  "failedCount": 0,
  "items": [
    {
      "articleId": "art_01HZ...",
      "keyword": "best crm for startups",
      "status": "ready",
      "title": "Best CRM for Startups in 2026",
      "wordCount": 3450,
      "url": "https://www.seoladders.com/api/v1/articles/art_01HZ..."
    }
  ]
}

Or use a webhook

Polling is fine for a quickstart. For production, pass webhookUrl in the batch request and we'll send a signed article.ready event when each article finishes. See the Webhooks guide.

4. Fetch the article

Once the batch reports a completed item, fetch the full article body (Markdown + HTML + metadata) from /v1/articles/{id}:

bash
curl https://www.seoladders.com/api/v1/articles/$ARTICLE_ID \
  -H "Authorization: Bearer $SEOLADDERS_API_KEY"

The response includes the title, body in Markdown and HTML, the target keyword, word count, JSON-LD schema, FAQ, and citation sources.

That's it

You've generated and fetched an article via the API. Wire this into your CI, CMS, or scheduling system and you've got a programmable content engine.