5.10.2.5 Downloads
The Downloads domain of releases. The links to the installer of every application, for anyone to put anywhere: a site, an e-mail, a message to a farm (decided 2026-11-11). It is one API, with its own contract and its own version.
5.10.2.5.1 Versions¶
| Version | Status | Prod URL | Contract |
|---|---|---|---|
v1 |
Proposed | https://releases.moonitoring.com/downloads/v1 |
downloads/v1/openapi.yaml |
The resources follow the data model: the installer artifact of a build and platform, the application's default channel, and the download event each link records.
5.10.2.5.2 Operations¶
The links need no token: they are the one exception to the rule that nothing private can be enumerated. A link names the application and a version label, never a build number, and the installer carries no secret; the content of a build is still served only after the person signs in and an enrolment passes the channel's rule.
| Operation | Request | Who | Capability |
|---|---|---|---|
| Download the latest installer for this computer | GET /{application_slug}/latest |
Anyone | none |
| Download the latest installer for a platform | GET /{application_slug}/latest/{platform} |
Anyone | none |
| Download the installer of a version for a platform | GET /{application_slug}/versions/{version_label}/{platform} |
Anyone | none |
5.10.2.5.3 Contract v1¶
Proposed version
v1 is a proposal for review: its endpoints, errors and capabilities were designed from the requirements and the flows and are not confirmed. It leaves proposal with its first release; from then on it changes only as described in Every API Is Versioned.
5.10.2.5.4 How the Links Work¶
- Three links per application:
/{application_slug}/latest, the universal latest link. It detects the operating system and architecture from the User-Agent and the client hintsSec-CH-UA-PlatformandSec-CH-UA-Arch, and sends the installer of that platform. When it cannot tell, it answers a small page that links the latest link of each platform./{application_slug}/latest/{platform}, the latest link of one platform, such aswindows-x64./{application_slug}/versions/{version_label}/{platform}, the link of one version.
- "Latest" is the active release of the application's default channel (
ReleaseApplication.default_channel). For the farm sync client (farm-sync-client) it isstable. An application without a default channel has no latest link: MooChat on the desktop has none until its first channel exists. - A version link gives that build's installer, and the installer installs that version only while a channel the person may receive still names it in its current TUF targets, since
releases-clientcan verify nothing else. Otherwise it says that the version is no longer offered and offers the latest. - Every answer is a redirect to a short-lived signed URL of the CDN, in prod and in stage alike (decided 2026-11-11). It is never a listing of what the caller may not receive: an unknown application, a revoked build and a platform without an installer all answer 404. Answers are
no-store, because a latest link changes with each release. - Every redirect records an anonymous download event: the build, the platform and the size of the installer, with no person. Who installed is known at enrolment, so for private software the events count downloads; they no longer say who downloaded.
- Prod serves the links without authentication, rate limited by Cloud Armor at the load balancer (429 with
Retry-After). Stage serves them behind IAP, like the other client paths (Network); the file a link redirects to comes from the CDN with a short signed URL, as in prod, since IAP cannot stand in front of Cloud CDN. - In the Console, every build and release shows copy buttons for its version links, one per platform with an installer, and for the application's universal latest link.