Skip to content

Cascade Publishing Workflow

Fresh

Source: bible/campaigns.md (Cascade campaigns)

Deploy one article across 9 platforms in sequence, each from a different persona, with cross-linking back to the money site.

Platform order

StepPlatformTierLinks to
1BloggerT1money site
2Google SitesT1step 1
3MediumT1step 2
4WordPressT1money site
5SubstackT1step 4
6TumblrT2step 5
7LinkedInT2step 6
8FacebookT2step 7
9RedditT2step 8

Steps

1. Prepare article content

You need: title, body, targetUrl, brandName, keyword.

The cascade-runner will adapt the article for each platform automatically (length, format, hashtags, etc.) using content-factory sleeve.

2. Preview the plan

bash
curl -X POST http://localhost:4700/cascade/plan \
  -H "Content-Type: application/json" \
  -H "x-api-key: ghost-engine-key" \
  -d '{
    "title": "5 Signs You Need a Junk Removal Service in Dallas",
    "body": "Full article text...",
    "targetUrl": "https://journeyjunkremoval.com",
    "brandName": "Journey Junk Removal",
    "keyword": "junk removal dallas"
  }'

The plan response shows: which account posts to which platform, what gets adapted, the cross-link chain.

3. Run the cascade

bash
curl -X POST http://localhost:4700/cascade/run \
  -H "Content-Type: application/json" \
  -H "x-api-key: ghost-engine-key" \
  -d '{ ...same body as plan... }'

4. Watch the dashboard

The Cascades tab shows each platform post as it happens. Look for:

  • Posted count
  • Failed count
  • Live status per step

5. After completion

The cascade-runner logs full execution to data/ghost-engine/cascade-log/{id}.json.

6. Layer in brand-bomb (optional)

After the cascade, run a brand-bomb to amplify the brand keyword across 456+ high-authority sites:

bash
curl -X POST http://localhost:4700/brand-bomb/run \
  -H "Content-Type: application/json" \
  -d '{
    "brandName": "Journey Junk Removal",
    "keywords": ["junk removal dallas"],
    "mode": "url",
    "siteCount": 100
  }'

7. Schedule recurring cascades (optional)

bash
curl -X POST http://localhost:4700/schedules \
  -H "Content-Type: application/json" \
  -d '{
    "jobType": "cascade",
    "runsPerDay": 1,
    "daysOfWeek": [1],
    "jobConfig": {
      "title": "...",
      "body": "...",
      "targetUrl": "https://journeyjunkremoval.com",
      "brandName": "Journey Junk Removal",
      "keyword": "junk removal dallas"
    }
  }'