Developers

Webhooks

Get a clear JSON HTTP callback the moment an article is ready — and whenever its status changes.

Events

Two events, each fired at a specific stage of your campaign pipeline.

article.readyWhen writing finishes

Sent once an article is written and passes automated review — your cue to publish it.

article.status_changedWhen status changes

Sent when an article's status changes in TrafficWins, for example when you publish or archive it.

Payload

Every event POSTs this JSON body. Both events share the same shape.

{
  "event": "article.ready",
  "orgId": "org_8c2f1a…",
  "timestamp": "2026-06-15T12:34:56.000Z",
  "article": {
    "id": "art_3b9a7d…",
    "campaignId": "cmp_71d4e0…",
    "title": "How to Choose a Standing Desk",
    "slug": "how-to-choose-a-standing-desk",
    "status": "draft",
    "description": "A practical buyer's guide to height, stability, and budget.",
    "content": "<h1>How to Choose a Standing Desk</h1><p>…</p>",
    "keywords": ["standing desk", "ergonomics"],
    "wordCount": 1840,
    "reviewScore": 92,
    "reviewVerdict": "pass",
    "heroImageUrl": "https://cdn.trafficwins.com/articles/3b9a/hero.png",
    "heroImageAlt": "A height-adjustable standing desk in a bright office",
    "updatedAt": "2026-06-15T12:34:55.000Z"
  }
}

Request headers

TrafficWins sends clear JSON over HTTPS with these headers.

POST /your-endpoint  HTTP/1.1
Content-Type: application/json
User-Agent: TrafficWins-Webhooks/1.0

Set it up

Add your endpoint URL in TrafficWins, under your website's publishing settings. We'll POST each event as clear JSON.

Open TrafficWins

Start with one website

Point it at your site. Read the first drafts tomorrow.

Create an account, connect a site, and let TrafficWins research, plan, write, and review your first campaign — no credit card, no API keys.

Start free trial

3-day trial · 5 article credits · cancel anytime