Install URLs
Three URL shapes, each with a different lifetime guarantee.
Pinned URL
/install/<buildId>
Locked to one exact build. The same id always serves the same artifact.
Use a pinned URL when:
- QA needs to reproduce a bug on the version it was reported against.
- A build is being attached to a Linear or Jira ticket.
- The link is being shared in Slack for a specific drop.
Folder URL
/install/folder/<project-slug>/<env>[/<branch>]
Always serves the latest ready build for the project, environment, and optional branch. New uploads to the same slot begin serving from the same URL.
Checkpoint folder
/install/folder/<project>/<env>
Serves the latest branchless build for the environment (the checkpoint). This is the canonical "install the current dev build" URL.
Branch folder
/install/folder/<project>/<env>/<branch>
Serves the latest build for a specific branch.
Release tag URL
/install/release/<project-slug>/<tag>
Frozen to a specific release tag. Subsequent uploads to the same environment or branch do not change which build is served.
Attach a release tag at upload time:
buildtree upload ./app.ipa --project acme --env prod --release v1.2.0
Tags are plain text. Conventional choices: v1.2.0, v1.2.0-rc1, 2024-03-15.
Choosing between the three
| Scenario | URL flavor |
|---|---|
| Install the bug-repro build from yesterday | Pinned |
| Always grab the latest dev build | Folder (checkpoint) |
Always grab the latest feature/payments build | Folder (branch) |
| Install v1.2.0 (no auto-update) | Release tag |
| Attach a build to PR #1234 | Pinned (in PR description) |
| Default QA bookmark | Folder (checkpoint) |