at.happyproto.server.checkDomain
Check a custom domain's DNS records now, rather than at the next scheduled check. Customers only.
Details · procedure
| Kind | procedure |
|---|---|
| Authority | server.happyproto.at |
| Indexed |
Procedure
procedure · POSTInput
application/jsonThe domain's UUID.
A UUID the client generates once per intended change and resends on every retry of it, so a retry gets the original reply instead of acting twice.
The instance's UUID.
Errors
AuthRequired
This endpoint requires an authenticated caller.
Forbidden
The caller is not a HappyProto customer, or the provisioner refused them.
InvalidRequest
instanceId, domainId or idempotencyKey is not a UUID.
NotFound
No such instance or domain, or it is not the caller's. The cases are indistinguishable.
NotAvailable
Custom domains are not switched on yet.
InvalidSlug
Passed through from the provisioner.
SlugTaken
Passed through from the provisioner.
NotEntitled
Passed through from the provisioner.
InstanceLimit
Passed through from the provisioner.
NoCapacity
Passed through from the provisioner.
OperationInProgress
Passed through from the provisioner: the instance is already changing, or a request with this idempotencyKey is still running.
InvalidHostname
Passed through from the provisioner.
PlatformHostname
Passed through from the provisioner.
DomainExists
Passed through from the provisioner.
DomainLimit
Passed through from the provisioner.
TooSoon
The domain was checked moments ago. Wait a few seconds and try again.
DomainIsPrimary
Passed through from the provisioner.
NotVerified
Passed through from the provisioner.
CertificateNotReady
Passed through from the provisioner.
VersionTooOld
Passed through from the provisioner.
Upstream
The provisioner is unreachable, not configured, or answered with an error it does not explain to callers, or the job could not be started.
#altRecord
object#checks
objectProperties
When the check ran.
Whether the TXT record carries this claim's token.
knownValues: ok | missing | error
pointing
stringWhether the hostname resolves to the instance's host. Absent when the check didn't get that far, such as when the TXT record was missing.
knownValues: ok | elsewhere | error
#domain
objectA custom domain on one of the caller's instances.
Properties
When the domain was added.
expiresAt
stringWhen a pending claim expires if it is never verified. Absent once verified.
The hostname, lowercase, internationalized names in punycode.
The domain's UUID.
lapsesAt
stringWhen HappyProto stops serving the domain if its TXT record stays missing. Absent while the record is present.
Whether this is the instance's primary domain, the one its PUBLIC_URL follows.
The DNS records the customer publishes: the TXT that proves ownership, then the CNAME that points the hostname at the instance.
Whether the domain actually works: off until it is verified, issuing while its certificate is ordered, live once it serves over HTTPS.
knownValues: routing | issuing | live | failed | off
pending: waiting for the DNS records. verified: proven and served. lapsed: the TXT record went missing, and HappyProto stopped serving it; it recovers if the record comes back before expiresAt.
knownValues: pending | verified | lapsed
verifiedAt
stringWhen the domain was first verified.
#record
objectProperties
alt
refFor an apex name, which cannot hold a CNAME: the A record to publish instead. Absent when the instance's host has no public IPv4.
The record's name.
TXT or CNAME.
The record's value.
Similar lexicons
semantic matchLexicons whose schemas describe something close to this one. Check them before publishing a new one that overlaps.
-
at.happyproto.server.addDomain
procedureAdd a custom domain to one of the caller's instances. It starts pending, with the DNS records to publish. Customers only.
-
The domains of one of the caller's instances: its platform subdomain and any custom domain. Customers only.
-
Run DNS verification for a custom domain owned by the authenticated DID and update its verified status.
-
at.happyproto.server.setPrimaryDomain
procedureMake a domain the primary of one of the caller's instances: a verified custom domain that is serving, or the platform subdomain. The instance restarts onto it. Customers only.
-
Everything a client needs to onboard one domain: registration state, DNS records to publish, last verification result, and certificate state. This is the endpoint to poll.