Resources
Developers
Just Say It is used in a browser. A few public routes let an agent act for a person without signing in, and one OpenAPI file describes them.
The public API
- GET /api/health
- Whether the service is up: 200 with ok set to true while it is serving. Other counters ride beside ok and may change without notice; only ok is the contract.
- POST /api/waitlist
- Puts an e-mail address on the waitlist — for when the service is full, or a person wants to hear when something opens. A JSON body with email (and an optional variant naming the page it came from); the answer is ok. At most 5 requests a minute for one address.
- POST /api/enterprise
- Asks the team about a plan for an organisation: company, size (30-200, 200-1000, 1000+ people), region, needs and email, all required. The answer is ok and an acknowledgement goes to the address; a person replies. One inquiry an hour for one address.
- POST /api/creators/apply
- Applies to the creator program: name, one to four profile links (TikTok, Instagram or YouTube, https), niche, one to three links to past videos, country, email, optionally followers and typicalViews (the creator's own figures), and consent set to true — the applicant's statement that they are 18 or older and that applying is not approval. The answer is ok and an acknowledgement goes to the address; a person replies either way. One application a day for one address.
- POST /api/creators/register
- Registers an approved creator’s post: its link, the handle that posted it, the code from the approval mail, the day it went up (within 7 days) and email. A post is registered once; at most 10 a day for one code. A 409 means the post is already registered, or registrations are paused or closed.
The description
- openapi.json — OpenAPI 3.1: every operation with its id, its request, its answers and its limits.
- api-catalog — The RFC 9727 catalog of this host: the description, this page and the status route.
Answers and refusals
Every answer is JSON. A refusal is an object with one field, error, holding a short code, and the HTTP status that fits it: 400 when the body is not JSON or a field is missing or too long — the code names the field —, 405 for another method, 409 when the request conflicts with what is already there (a post registered twice, a paused program), 429 when one address or one network has asked too often, 503 when the request could not be recorded. A form post (application/x-www-form-urlencoded) gets an HTML page back instead, so the forms on this site work without a script.
The site, for agents
Every page has a Markdown twin: ask for text/markdown, or add .md to the page’s address. An unknown address answers a real 404 — as Markdown when you asked for Markdown, as JSON under /api/.
- llms.txt — The site described for agents, with every page and its twin.
- sitemap.xml — Every indexable page, with the day it last changed.
What there is not yet
There is no API for sessions, recordings or notes, and no SDK, command-line tool or MCP server. Starting a room from another app is on the roadmap; this page changes first when there is something to call. Questions about building on it go to the contact page.
Last updated 2026-09-26.