Skip to content

Publish and post

Can my agent post as me on LinkedIn, X and Reddit? Yes: connect each account once, and your agent posts as you by API where one exists and by browser agent where none does.

Publish and post
You, to your agent

Publish the rent ledger guide.

Post it on LinkedIn, X and Reddit, as me.

curl -X POST https://api.sb/leaseline.app/content/contents%2Fcontent_57/publish \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"

curl -X POST https://api.sb/leaseline.app/posts/posts%2Fpost_63/schedule \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"at":"2026-10-28T14:00:00Z"}'

curl -X POST https://api.sb/leaseline.app/mandates/authorize \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"agent":"workers/worker_4","verb":"Post.publish","for":"people/dana","topics":["rent-ledger"],"limit":{"perDay":3},"expiresAt":"2026-12-24"}'

curl -X POST https://api.sb/leaseline.app/posts/posts%2Fpost_64/publish \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"
import { $ } from 'startup-builder'

const page = await $.Content.publish({ content: 'contents/content_57' })   // live once its page audit passes
await $.Post.schedule({ post: 'posts/post_63', at: '2026-10-28T14:00:00Z' })   // LinkedIn and X, on the calendar
await $.Mandate.authorize({ agent: 'workers/worker_4', verb: 'Post.publish', for: 'people/dana', topics: ['rent-ledger'], limit: { perDay: 3 }, expiresAt: '2026-12-24' })   // post as you, three a day
const post = await $.Post.publish({ post: 'posts/post_64' })   // the Reddit answer, by browser agent
return { page, post }
npx startup-builder do Content.publish --json '{"content":"contents/content_57"}'
npx startup-builder do Post.schedule --json '{"post":"posts/post_63","at":"2026-10-28T14:00:00Z"}'
npx startup-builder do Mandate.authorize --json '{"agent":"workers/worker_4","verb":"Post.publish","for":"people/dana","topics":["rent-ledger"],"limit":{"perDay":3},"expiresAt":"2026-12-24"}'
npx startup-builder do Post.publish --json '{"post":"posts/post_64"}'
{
  "name": "do",
  "arguments": {
    "code": "const page = await $.Content.publish({ content: 'contents/content_57' })   // live once its page audit passes\nawait $.Post.schedule({ post: 'posts/post_63', at: '2026-10-28T14:00:00Z' })   // LinkedIn and X, on the calendar\nawait $.Mandate.authorize({ agent: 'workers/worker_4', verb: 'Post.publish', for: 'people/dana', topics: ['rent-ledger'], limit: { perDay: 3 }, expiresAt: '2026-12-24' })   // post as you, three a day\nconst post = await $.Post.publish({ post: 'posts/post_64' })   // the Reddit answer, by browser agent\nreturn { page, post }"
  }
}
Response200application/json
{
  "page": {
    "$id": "https://api.sb/leaseline.app/contents/content_57",
    "$type": "Content",
    "status": "Published",
    "url": "https://leaseline.app/guides/rent-ledger-template",
    "audit": {
      "passed": true,
      "fixed": [
        "image alt text",
        "a second H1"
      ],
      "checked": [
        "title",
  …
sample
A post on every connected account: free, and 1.5¢ a post on X
First run
Coming
Status
Each account you post from, once: LinkedIn, X, Reddit and the rest.
Connect once

What you get

FieldWhat it says
PostThe words, the media and the page it points to, as it went out.
AccountThe account it went out from, which is yours.
Runs byAPI or browser agent, read from the Action that sent it.
Live atThe link to the post or page once it is up, and when it went up.
Page auditTitle, headings, canonical, broken links and load time, checked before the page goes live.
CalendarEvery scheduled date, with who drafts the piece and when you approve it.
CostWhat the post cost, settled per call. Posts on your own accounts are free on most Venues.

How it runs

WhenWhat happensRuns byYour partTakes
OnceConnect each account you post fromAPIsign in once per accountminutes
OnceGive your agent a Mandate to post as you, within a daily limitAPIapprove the Mandatea minute
Each pageAudit the page, fix what search engines and answer bots cannot read, then publish it (Page audit)APInothingseconds
Each pagePut the page live, add it to the sitemap and push it to the search engines (Publish pages)APInothingminutes
Each postPut the post on the calendar for the hour its audience reads (Publishing calendar)APIapprove the first post from each pageuntil the slot
At the slotPost on LinkedIn, X, Instagram, YouTube and TikTok (Post by API)APInothingseconds
At the slotPost on Reddit, Product Hunt, Hacker News and company pages, signed in as you (Post by browser agent)browser agentnothinga minute or two

Jobs inside it

JobWhat it returnsPriceStatusRuns by
Publish pagesEach approved page live on your Site, in your sitemap and pushed to the search enginesfreeComingAPI
Page auditWhether search engines and answer bots can read each page you publish$0.00015 a pageComingAPI
Site auditYour whole Site crawled on each publish: broken links, missing titles, slow pages$0.018 a crawlComingAPI
Post by APIPosts on LinkedIn, X, Instagram, YouTube and TikTokfree, and 1.5¢ a post on XComingAPI
Post by browser agentPosts on Reddit, Product Hunt, Hacker News and company pages, signed in as you$0.016 a stepComingbrowser agent
Publishing calendarEvery date a page or post goes out, and who drafts itfreeComingAPI

Where and how it runs

Where it worksHow it runsConnect once
LinkedIn, X, Reddit, YouTube, Instagram, TikTok, Product Hunt, Hacker NewsAPI · browser agentEach account you post from, once: LinkedIn, X, Reddit and the rest.

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

Reference

Compiled, not written: edit the records it reads (catalog/publish-and-post), then regenerate. Every step runs from a sentence or a line of code. In your words: the CRM words you know, and where each lives here.

Contents