Apiable

API Portal

Custom domain

Point your own domain at your API Portal. Add the domain in the dashboard, create the CNAME records Apiable generates at your DNS provider, and let Apiable provision the SSL certificates through AWS Certificate Manager. Covers the UNDEFINED, PENDING_VALIDATION, ISSUED, and FAILED states.

You can serve your API Portal from your own domain, such as developers.yourcompany.com, instead of the default your-tenant.apiable.io address. You add the domain in the dashboard, Apiable generates CNAME records and requests SSL certificates, and you add those records at your DNS provider so the certificates validate.

How do you point a custom domain at your portal?

Open Settings in the dashboard, go to the custom domain section, enter your domain, and choose Add domain. Apiable validates the domain, requests the SSL certificates, and then shows the CNAME records you add at your DNS provider.

  1. Open Settings in the dashboard and go to the custom domain section.
  2. Enter your domain, for example developers.yourcompany.com.
  3. Choose Add domain. The button enables only once the domain has a valid top-level domain.
  4. Apiable starts provisioning. The DNS records section appears with the CNAME records to create.
  5. Add each CNAME record at your DNS provider.
  6. Wait for the certificates to be issued. The portal then switches to your domain.

While the domain is provisioning, the section refreshes on its own every couple of seconds, and any record still being generated shows "Automatically generating ...". You do not need to reload the page.

What DNS records do you create?

Apiable generates the CNAME records for you. The DNS records section lists each record's name and value, each with a copy button. You create those CNAME records at your DNS provider so AWS Certificate Manager can validate the domain.

RecordWhat it is for
Your domain to originMaps your custom domain to your portal's origin address, in the form your-tenant.apiable.io.
Certificate validation CNAMEThe name and value AWS Certificate Manager needs to validate the certificate for your domain.

How does Apiable provision the SSL certificate?

Apiable provisions SSL through AWS Certificate Manager using DNS validation. It requests one certificate for the portal frontend and one for the backend, waits for the validation records, then polls each certificate until it is issued. When both are issued, Apiable switches your portal to the custom domain.

  1. On save, Apiable requests two certificates: a frontend certificate and a backend certificate. Each also covers *.apiable.io.
  2. Apiable waits for each certificate's DNS validation record, then writes the configuration to pending validation with the CNAME records for you to add.
  3. You add the CNAME records. ACM validates the domain once they resolve.
  4. Apiable polls each certificate until it reaches issued, for up to 24 hours.
  5. When both certificates are issued, the status becomes issued and Apiable updates the content delivery and load-balancer configuration to serve your domain.

If either certificate fails to issue, Apiable deletes that unissued certificate and sets the status to failed.

What do the custom domain states mean?

The custom domain moves through a small set of states as the certificates are provisioned. The status reflects where the certificates are in that process.

StateWhat it means
UndefinedNo domain is being provisioned yet, or provisioning has not started. A new domain can be added only in this state.
Pending validationCertificates have been requested and the CNAME records are shown. ACM is waiting for the records to resolve at your DNS provider.
IssuedBoth certificates were issued. Apiable has switched the portal's delivery and load balancer to your domain.
FailedA certificate could not be issued. The unissued certificate is removed. Review the records and contact Apiable to retry.
InvalidThe domain did not pass validation. Correct the domain and add it again.

Can you change a custom domain later?

A new domain can be added only while the status is undefined. Once a domain is being provisioned, the input field locks, and the backend rejects a second change with the error "Could not update the Custom Domain configuration ... twice." To change a domain that is already in progress or live, contact Apiable.

This guard is deliberate. Switching a live domain means re-issuing certificates and re-pointing delivery, so it is handled with Apiable rather than as a self-service edit.

Troubleshooting

Match the state or message to the fix.

What you seeWhat to do
Add domain stays disabled after typing a domainThe button enables only for a valid top-level domain, and the section must be in the undefined state. Check the domain spelling and that no domain is already provisioning.
The whole section shows an entitlement noticeCustom domains are not included in your plan. Contact Apiable to enable the feature.
The input is locked and you cannot edit the domainA domain is already being provisioned or is live. The field unlocks only in the undefined state. Contact Apiable to change it.
Status sits on pending validationACM is waiting for your CNAME records. Confirm the exact name and value were added at your DNS provider and allow time for DNS to propagate.
A record shows "Automatically generating ..."Apiable is still generating that record. The section refreshes on its own every couple of seconds. Leave it open.
Status shows failedA certificate could not be issued and was removed. Re-check the validation records at your DNS provider, then contact Apiable to retry provisioning.
Error "unable to update while subdomain updating"Your portal's base subdomain is mid-update. Wait for that to finish, then add the custom domain.

Where to next