API
Organization
Whose token it is, and the domains of its own.
The organization
Section titled “The organization”/public/v1/organizationThe organization the token names — what to call first, to see the token works and whose it is.
{ "data": { "id": 1, "name": "Acme", "slug": "acme", "webhookToken": "CpEMJ0AcAy7m…", "createdAt": "2026-09-08T12:00:00.000Z" }}webhookToken is what every webhook of the
organization is sent with, in its x-webhook-token header, and signed with in
x-webhook-signature: your receiver checks a request by either (see
Check that it is ours). It is not the API token.
Custom domains
Section titled “Custom domains”/public/v1/custom-domainsThe domains of your own the apps serve on — all of them, not a page.
Each is one app’s: watch, where webinars are watched; surveys, where surveys are
answered; pages, where your pages are served. A webinar, a survey or a
page names the one it is on by organizationCustomDomainId; none means
the platform’s own host.
{ "data": [ { "id": 3, "organizationId": 1, "app": "watch", "hostname": "watch.acme.com", "status": "active", "createdAt": "…" } ]}status is unverified until the TXT record that proves the domain yours
(_sparkwebinar.<hostname>, its value shown in the dashboard) is seen —
nothing is served on it till then —, pending while the CNAME is not seen
or the certificate not issued, active once the app answers on it, failed
where it gave up.