URL: /capabilities/make-content · Id: `page:/capabilities/make-content`

# Make content

> Pages, posts, images, video, voiceover and an ad kit, drafted from your product and your approved terms.

Who writes my pages, posts and ads? Your agent drafts every page, post and ad from your product and your approved terms, and you approve each one before it goes out.

```text title="Make content · Ask"
Write the page for "rent ledger template".
Then make me an ad kit from the dashboard screenshot.
```

```ts title="Make content · SDK"
import { $ } from 'startup-builder'

const page = await $.Content.draft({ kind: 'article', brief: 'rent ledger template: answer the term and the questions people also ask, and quote the late-rent share across Leaseline accounts' })   // one page for an approved term, a few cents
const images = await $.File.generate({ kind: 'image', prompt: 'The Leaseline rent ledger filling in as payments arrive, five ad sizes', references: ['files/file_31'], format: { sizes: ['1:1', '4:5', '9:16', '16:9', '1.91:1'] } })   // five images from your product shot
const clip = await $.File.generate({ kind: 'video', prompt: 'The ledger fills itself as rent arrives', references: ['files/file_31'], format: { seconds: 6, resolution: '768p' } })   // a six-second clip from the still
const voiceover = await $.File.generate({ kind: 'speech', prompt: 'Rent comes in, the ledger fills itself. Leaseline tracks every payment, so the spreadsheet can go.' })   // the voiceover for the clip
return { page, images, clip, voiceover }
```

```json title="Make content · Response · sample"
{
  "page": {
    "$id": "https://api.sb/leaseline.app/contents/content_57",
    "$type": "Content",
    "kind": "article",
    "status": "Draft",
    "title": "Rent ledger template: track every payment without the spreadsheet",
    "path": "/guides/rent-ledger-template",
    "answers": [
      "What goes in a rent ledger?",
      "Is a rent ledger the same as a rent roll?",
      "How do I track late rent in a ledger?"
    ],
    "yourFact": "Across 140 Leaseline accounts, 1 in 9 payments arrives after the 5th (records/record_212)",
    "cost": {
      "usd": 0.03
    }
  },
  "images": {
    "$type": "File",
    "kind": "image",
    "count": 5,
    "sizes": [
      "1:1",
      "4:5",
      "9:16",
      "16:9",
      "1.91:1"
    ],
    "cost": {
      "usd": 0.15
    }
  },
  "clip": {
    "$type": "File",
    "kind": "video",
    "seconds": 6,
    "resolution": "768p",
    "cost": {
      "usd": 0.28
    }
  },
  "voiceover": {
    "$type": "File",
    "kind": "speech",
    "seconds": 7,
    "subtitles": true,
    "cost": {
      "usd": 0.002
    }
  }
}
```

| First run | Status | Runs by | Connect once |
| --- | --- | --- | --- |
| One ad kit: $0.50 to $0.80 | Partly works today | API | nothing |

## What you get
| Field | What it says |
| --- | --- |
| Draft | The page, post or email itself, in status Draft until you approve it. |
| Term | The approved term the page answers, with the questions people also ask about it. |
| Your fact | One number or story from your own records that no other page has, quoted with the record it reads. |
| Sources | The ranking pages and the pages answer engines cite, so the draft answers what they leave out. |
| Kit | Five images, one clip and one voiceover, each sized for the Venue it runs on. |
| Made from | The prompt and the reference files behind each image, clip and voiceover. |
| Cost | What each piece cost, settled per call. A generation that fails costs nothing. |

## How it runs
| When | What happens | Runs by | Your part | Takes |
| --- | --- | --- | --- | --- |
| Once | Read your product, your Brand and your product shots into one brief | API | approve the brief once | minutes |
| Each approved term | Draft one page that answers the term and the questions people also ask, with one fact from your records ([Draft](#draft)) | API | approve or edit the draft | about 3 minutes of yours a page |
| Each page | Draft the posts that point to it, one per account ([Draft](#draft)) | API | approve the first post from each page | minutes |
| Before ads | Make five images, a six-second clip and a voiceover from your product shots ([Ad kit](#ad-kit)) | API | approve the kit once | minutes |
| Week 6 | Rewrite the pages ranking 8 to 30 against the pages above them ([Draft](#draft)) | API | approve each rewrite | weeks for the new rank to show |

## Jobs inside it
| Job | What it returns | Price | Status | Runs by |
| --- | --- | --- | --- | --- |
| <a id="draft"></a>Draft | A page, post or email in your voice, from a brief or an approved term | a few cents a draft | Works today | API |
| <a id="ad-kit"></a>Ad kit | Five images, a six-second clip and a voiceover, from your product shots and your Brand | $0.50 to $0.80 a kit | Coming | API |
| <a id="images"></a>Images | Five ad and post images in your brand, following your product shots | about $0.15 a set | Coming | API |
| <a id="video"></a>Video | A six-second clip from a still or a line | from $0.28 a clip | Coming | API |
| <a id="product-video"></a>Product video | A walkthrough timeline drafted from your Brand and your Offer, every claim on screen linked to its record | free to draft | Coming | API |
| <a id="voiceover"></a>Voiceover | A read of your script as audio, with word-level subtitles | about $0.015 per 1,000 characters | Coming | API |
| <a id="your-voice"></a>Your voice | A Voice trained on your own recordings, so every voiceover sounds like you | priced before it trains | Coming | API |
| <a id="music"></a>Music | A background track for a clip | about $0.04 a clip | Coming | API |

## Where and how it runs
| Where it works | How it runs | Connect once |
| --- | --- | --- |
| your own Startup | API | nothing |

Your agent acts as you on every Venue you authorize. Where a Venue has no API, a browser agent signs in as you and does the steps.

## Plays that use it
| Play | Strategy that runs it |
| --- | --- |
| [Paid search](/plays/paid-search) | [Paid](/strategy/paid) |
| [Paid social](/plays/paid-social) | [Paid](/strategy/paid) |
| [Editorial SEO](/plays/editorial-seo) | [Paid](/strategy/paid), [Passive](/strategy/passive) |
| [Answer engine optimization](/plays/aeo) | [Passive](/strategy/passive) |

## Reference
| Tool | Runs today |
| --- | --- |
| <Op verb="Content.draft" /> | Coming |
| <Op verb="File.generate" /> | Coming |
| <Op verb="Video.draft" /> | Coming |
| <Op verb="Voice.clone" /> | Coming |