Deployment URLs
Unique deployment URLs, branch and pull request previews, and production URLs.
Every Ready deployment gets a unique URL that never changes. Projects also get stable URLs, for branches, pull requests, and production, that move to newer deployments.
Generated hostnames end in preview.easelusercontent.com and use HTTPS. A
deployment's URLs are listed in the Domains section of its detail page.
URL types
| URL type | Pattern | Points to |
|---|---|---|
| Unique deployment | {project}-{commit}-{scope} | One deployment, forever |
| Branch | {project}-git-{branch}-{scope} | Latest Ready Preview deployment on the branch |
| Pull request | {project}-pr-{number}-{scope} | Latest Ready Preview deployment for the open pull request |
| Production | {project}-{scope} | The Current Production deployment |
| Custom domain | Your domain | The Current Production deployment |
Each pattern is followed by .preview.easelusercontent.com. For project
My App in workspace scope acme, commit a1b2c3d4e, branch
feature/login, and pull request 42:
The commit segment is the first 9 characters of the Git commit hash, or another identifier for deployments without a commit. Use the unique URL to test or link to one specific build.
Branch and pull request URLs are separate hostnames, but they can point at the same deployment. See Git deployments.
The production URL and your custom domains point at the Current deployment only. A Staged Production deployment doesn't move them until you promote it. See Promote and roll back. To add a custom domain, see Domains.
When stable URLs move
A branch, pull request, or production URL moves only when a new deployment reaches Ready. While the new deployment builds, the stable URL keeps serving the previous one, and a failed or canceled deployment leaves it unchanged. After a URL moves, the edge can take a few seconds to pick up the change.
How hostnames are formed
Easel builds hostnames from slugified names:
- Uppercase letters become lowercase.
- Other characters become hyphens, so
feature/loginbecomesfeature-login. - Repeated hyphens collapse to one.
- A hostname label can't exceed 63 characters, so Easel shortens the scope segment first to keep the project name readable.
If the slugified project name looks like a domain, such as www-mycompany-com,
Easel shortens it to avoid browser phishing warnings. Branch, commit, and scope
segments don't change.
When a URL stops working
A URL resolves while its deployment is Ready and the project is serving. Deployment URLs don't expire. A URL stops working when:
- The deployment is spun down. See Managing deployments.
- The project is paused, which stops production URLs. Preview URLs keep working.
- The workspace is suspended, which stops every URL.