- Shipped
- November 12, 2026 at 2:55 AM UTC
- Author
- Kamo
- Commit
- 841d032
A site is identified by its apex domain (harmonyhomeloans.net) and may be created before its organization exists. It reaches any organization that has that domain on file as a custom apex, verified or not, the moment the domain is entered; it is assigned for good when the organization proves ownership, pays, or a platform operator assigns it — an unverified domain claims nothing. - GET /mine adds hasCustomDomain and customDomain; site views add domain. - Platform: POST /sites takes {domain, title?, organizationId?, repoName?} (repo defaults to the domain with dashes); PUT accepts domain and an explicit organizationId null to unassign; every /sites/{ref} path takes the UUID or the domain; rows add domain, bound, claimants and count open requests by site. - Routing, logos and frame-ancestors use the assigned org, else the best claimant; a site with neither shows its own title on Coming Soon. - Share uses the sharing member's organization.
