No signup form. No sales call. No subscription. Your agent reads
the capabilities, takes a key, submits a brief, pays for the job, and downloads
the result — four calls, start to finish, entirely programmatic.
Script generation is live and billable. The demo,
presentation and video
job types accept briefs and are priced, but the rendering backend is not
attached yet — they return the script stage only. Every capability carries a
machine-readable status in the discovery document,
so your agent can check before it spends. We would rather you read that here
than discover it in a download.
Four calls
Copy-paste these in order. Nothing below needs a browser, a
dashboard, or a person.
curl-X POST https://teleprompter.strategic-innovations.ai/api/agents/signup \
-H'content-type: application/json' \
-d'{"agentName":"my-agent"}'# → { "ok": true, "agentId": "agt_…", "apiKey": "fsk_…", "plan": "free" }# The key is shown once. Store it — there is no recovery endpoint.
3
Submit a brief
Generates synchronously · ~30s
curl-X POST https://teleprompter.strategic-innovations.ai/api/agents/jobs \
-H'x-api-key: fsk_…' \
-H'content-type: application/json' \
-d'{"brief":"A 60 second intro to Founder Studio for solo founders",
"options":{"type":"script","seconds":60}}'# → { "ok": true, "job": { "id": "job_…", "status": "script_ready",# "priceCents": 200, "paid": false, "script": "So, you're a solo founder…" } }## The call blocks until generation finishes — expect ~30 seconds, not# milliseconds. There is no queue and nothing to poll.
Most APIs assume a human with a credit card and a dashboard
login. This one assumes a process with a budget.
Self-serve discovery
One unauthenticated GET returns capabilities, prices, the call sequence,
and an explicit list of what we don't support — so your agent plans against
facts instead of probing our 404s.
Instant keys
POST a name, get a working key in the response. No email confirmation,
no waitlist, no approval queue. The free plan starts working on the next
call.
Priced per outcome
You pay for a job, not for a seat, a minute, or a credit pack that
expires. The price is quoted before you commit and computed by a formula
you can reimplement.
Capabilities
Status is the field that matters. It is served in
/api/agents/discover as
capabilities[].status, so an agent can filter on it
without parsing this page.
Type
Status
Delivers
60s price
What it does
script
Available
text/plain
$2.00
A spoken script from your brief, sized to the target duration.
Conversational, no stage directions — written to be read aloud.
demo
Not yet
text/plain
$6.00
Intended: capture a live website, narrate it, render a demo take.
Priced at 3× today; returns the script stage only.
presentation
Not yet
text/plain
$2.00
Intended: slides plus narration in a cloned voice.
Returns the script stage only.
video
Not yet
text/plain
$2.00
Intended: script, render, stitch and deliver a finished video.
Returns the script stage only.
Not supported
Stated plainly so your agent stops looking. This list is also
machine-readable at discover.unsupported.
Webhooks and callbacks. Jobs complete inside the POST response, so there is nothing to call back.
Rate limit headers. No per-agent quota is enforced on this API today.
Job cancellation. Jobs finish before the request returns.
Streaming. The script arrives whole or not at all.
Pricing
One credit is 25¢. A job's credits are a function of duration
and type — here is the whole formula, no tiers to interpret.
ƒ
The billing formula
Reimplement it to predict any invoice
credits = round((2 + seconds * 0.1) * (type === 'demo' ? 3 : 1))
cents = credits * 25
# seconds is clamped to 15…300 before pricing, and the clamped# value is what you are billed for.# Live quotes for every tier: GET /api/agents/pricing
Type
15s
60s
300s
Credits at 60s
script
$1.00
$2.00
$8.00
8
demo
$3.00
$6.00
$24.00
24
presentation
$1.00
$2.00
$8.00
8
video
$1.00
$2.00
$8.00
8
Jobs are generated before payment and priced at submission. You see priceCents on the job before you commit to buying it.
Payment methods: stripe and crypto. Download returns 402 until the job is purchased.
Endpoint reference
Base URL https://teleprompter.strategic-innovations.ai.
Authenticated routes take the key in an x-api-key
header — not a bearer token.
The artifact as a file attachment. 402 before purchase.
Job status values
Status
Meaning
pending
Row created, generation not finished. Rarely observed — generation is synchronous.
script_ready
A non-empty script exists and the job can be purchased.
paid
Purchased. downloadUrl is populated.
error
Generation failed. Read error. You are not charged for a job you cannot buy.
Errors
Code
Body
Cause
400
brief is required…
Missing or empty brief.
400
invalid_payment_method
paymentMethod is not stripe or crypto.
401
invalid_api_key
Missing, malformed, or unknown x-api-key.
402
payment_required
Download attempted before purchase.
404
job_not_found
Unknown job, or a job belonging to another agent.
503
db_unavailable
Storage is down. Retry.
A note on errors we return as 200
Some failures come back with ok: false
and an HTTP 200 — already_paid and
job_not_ready among them. Branch on the
ok field, not the status code. We are tightening
this; until then, treating 200 as success will mislead your agent.
Point an agent at it
The discovery document is the contract. Everything on this page
is derived from it, and it is the version that stays current.